aboutsummaryrefslogtreecommitdiffstats
path: root/tools/perf/scripts/python/exported-sql-viewer.py
diff options
context:
space:
mode:
Diffstat (limited to 'tools/perf/scripts/python/exported-sql-viewer.py')
-rwxr-xr-xtools/perf/scripts/python/exported-sql-viewer.py41
1 files changed, 41 insertions, 0 deletions
diff --git a/tools/perf/scripts/python/exported-sql-viewer.py b/tools/perf/scripts/python/exported-sql-viewer.py
index baa2b220238a..affd80ebcae0 100755
--- a/tools/perf/scripts/python/exported-sql-viewer.py
+++ b/tools/perf/scripts/python/exported-sql-viewer.py
@@ -887,6 +887,8 @@ class TreeWindowBase(QMdiSubWindow):
887 self.view.setSelectionMode(QAbstractItemView.ContiguousSelection) 887 self.view.setSelectionMode(QAbstractItemView.ContiguousSelection)
888 self.view.CopyCellsToClipboard = CopyTreeCellsToClipboard 888 self.view.CopyCellsToClipboard = CopyTreeCellsToClipboard
889 889
890 self.context_menu = TreeContextMenu(self.view)
891
890 def DisplayFound(self, ids): 892 def DisplayFound(self, ids):
891 if not len(ids): 893 if not len(ids):
892 return False 894 return False
@@ -1660,6 +1662,8 @@ class BranchWindow(QMdiSubWindow):
1660 1662
1661 self.ResizeColumnsToContents() 1663 self.ResizeColumnsToContents()
1662 1664
1665 self.context_menu = TreeContextMenu(self.view)
1666
1663 self.find_bar = FindBar(self, self, True) 1667 self.find_bar = FindBar(self, self, True)
1664 1668
1665 self.finder = ChildDataItemFinder(self.model.root) 1669 self.finder = ChildDataItemFinder(self.model.root)
@@ -2469,6 +2473,39 @@ def CopyCellsToClipboardHdr(view):
2469def CopyCellsToClipboardCSV(view): 2473def CopyCellsToClipboardCSV(view):
2470 CopyCellsToClipboard(view, True, True) 2474 CopyCellsToClipboard(view, True, True)
2471 2475
2476# Context menu
2477
2478class ContextMenu(object):
2479
2480 def __init__(self, view):
2481 self.view = view
2482 self.view.setContextMenuPolicy(Qt.CustomContextMenu)
2483 self.view.customContextMenuRequested.connect(self.ShowContextMenu)
2484
2485 def ShowContextMenu(self, pos):
2486 menu = QMenu(self.view)
2487 self.AddActions(menu)
2488 menu.exec_(self.view.mapToGlobal(pos))
2489
2490 def AddCopy(self, menu):
2491 menu.addAction(CreateAction("&Copy selection", "Copy to clipboard", lambda: CopyCellsToClipboardHdr(self.view), self.view))
2492 menu.addAction(CreateAction("Copy selection as CS&V", "Copy to clipboard as CSV", lambda: CopyCellsToClipboardCSV(self.view), self.view))
2493
2494 def AddActions(self, menu):
2495 self.AddCopy(menu)
2496
2497class TreeContextMenu(ContextMenu):
2498
2499 def __init__(self, view):
2500 super(TreeContextMenu, self).__init__(view)
2501
2502 def AddActions(self, menu):
2503 i = self.view.currentIndex()
2504 text = str(i.data()).strip()
2505 if len(text):
2506 menu.addAction(CreateAction('Copy "' + text + '"', "Copy to clipboard", lambda: QApplication.clipboard().setText(text), self.view))
2507 self.AddCopy(menu)
2508
2472# Table window 2509# Table window
2473 2510
2474class TableWindow(QMdiSubWindow, ResizeColumnsToContentsBase): 2511class TableWindow(QMdiSubWindow, ResizeColumnsToContentsBase):
@@ -2492,6 +2529,8 @@ class TableWindow(QMdiSubWindow, ResizeColumnsToContentsBase):
2492 2529
2493 self.ResizeColumnsToContents() 2530 self.ResizeColumnsToContents()
2494 2531
2532 self.context_menu = ContextMenu(self.view)
2533
2495 self.find_bar = FindBar(self, self, True) 2534 self.find_bar = FindBar(self, self, True)
2496 2535
2497 self.finder = ChildDataItemFinder(self.data_model) 2536 self.finder = ChildDataItemFinder(self.data_model)
@@ -2608,6 +2647,8 @@ class TopCallsWindow(QMdiSubWindow, ResizeColumnsToContentsBase):
2608 self.view.setSelectionMode(QAbstractItemView.ContiguousSelection) 2647 self.view.setSelectionMode(QAbstractItemView.ContiguousSelection)
2609 self.view.CopyCellsToClipboard = CopyTableCellsToClipboard 2648 self.view.CopyCellsToClipboard = CopyTableCellsToClipboard
2610 2649
2650 self.context_menu = ContextMenu(self.view)
2651
2611 self.ResizeColumnsToContents() 2652 self.ResizeColumnsToContents()
2612 2653
2613 self.find_bar = FindBar(self, self, True) 2654 self.find_bar = FindBar(self, self, True)