diff options
Diffstat (limited to 'tools/perf/scripts/python/exported-sql-viewer.py')
-rwxr-xr-x | tools/perf/scripts/python/exported-sql-viewer.py | 41 |
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): | |||
2469 | def CopyCellsToClipboardCSV(view): | 2473 | def CopyCellsToClipboardCSV(view): |
2470 | CopyCellsToClipboard(view, True, True) | 2474 | CopyCellsToClipboard(view, True, True) |
2471 | 2475 | ||
2476 | # Context menu | ||
2477 | |||
2478 | class 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 | |||
2497 | class 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 | ||
2474 | class TableWindow(QMdiSubWindow, ResizeColumnsToContentsBase): | 2511 | class 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) |