524 @type QPoint |
524 @type QPoint |
525 """ |
525 """ |
526 if Globals.isMacPlatform(): |
526 if Globals.isMacPlatform(): |
527 copyKeys = QKeySequence("Ctrl+C") |
527 copyKeys = QKeySequence("Ctrl+C") |
528 pasteKeys = QKeySequence("Ctrl+V") |
528 pasteKeys = QKeySequence("Ctrl+V") |
|
529 selectAllKeys = QKeySequence("Ctrl+A") |
529 else: |
530 else: |
530 copyKeys = QKeySequence("Ctrl+Shift+C") |
531 copyKeys = QKeySequence("Ctrl+Shift+C") |
531 pasteKeys = QKeySequence("Ctrl+Shift+V") |
532 pasteKeys = QKeySequence("Ctrl+Shift+V") |
|
533 selectAllKeys = QKeySequence("Ctrl+Shift+A") |
|
534 |
532 menu = QMenu(self) |
535 menu = QMenu(self) |
533 menu.addAction(self.tr("Clear"), self.__clear) |
536 act = menu.addAction( |
|
537 UI.PixmapCache.getIcon("editDelete"), self.tr("Clear"), |
|
538 self.__clear) |
|
539 act.setEnabled(bool(self.replEdit.toPlainText())) |
534 menu.addSeparator() |
540 menu.addSeparator() |
535 menu.addAction(self.tr("Copy"), self.replEdit.copy, copyKeys) |
541 act = menu.addAction( |
536 menu.addAction(self.tr("Paste"), self.__paste, pasteKeys) |
542 UI.PixmapCache.getIcon("editCopy"), self.tr("Copy"), |
|
543 copyKeys, self.replEdit.copy) |
|
544 act.setEnabled(self.replEdit.textCursor().hasSelection()) |
|
545 act = menu.addAction( |
|
546 UI.PixmapCache.getIcon("editPaste"), self.tr("Paste"), |
|
547 pasteKeys, self.__paste) |
|
548 act.setEnabled(self.replEdit.canPaste() and |
|
549 self.__interface.isConnected()) |
537 menu.addSeparator() |
550 menu.addSeparator() |
|
551 act = menu.addAction( |
|
552 UI.PixmapCache.getIcon("editSelectAll"), self.tr("Select All"), |
|
553 selectAllKeys, self.replEdit.selectAll) |
|
554 act.setEnabled(bool(self.replEdit.toPlainText())) |
|
555 |
538 menu.exec(self.replEdit.mapToGlobal(pos)) |
556 menu.exec(self.replEdit.mapToGlobal(pos)) |
539 |
557 |
540 def __setConnected(self, connected): |
558 def __setConnected(self, connected): |
541 """ |
559 """ |
542 Private method to set the connection status LED. |
560 Private method to set the connection status LED. |
726 self.replEdit.copy() |
744 self.replEdit.copy() |
727 msg = b'' |
745 msg = b'' |
728 elif key == Qt.Key.Key_V: |
746 elif key == Qt.Key.Key_V: |
729 self.__paste() |
747 self.__paste() |
730 msg = b'' |
748 msg = b'' |
|
749 elif key == Qt.Key.Key_A: |
|
750 self.replEdit.selectAll() |
|
751 msg = b"" |
731 elif key in (Qt.Key.Key_Return, Qt.Key.Key_Enter): |
752 elif key in (Qt.Key.Key_Return, Qt.Key.Key_Enter): |
732 tc = self.replEdit.textCursor() |
753 tc = self.replEdit.textCursor() |
733 tc.movePosition(QTextCursor.MoveOperation.EndOfLine) |
754 tc.movePosition(QTextCursor.MoveOperation.EndOfLine) |
734 self.replEdit.setTextCursor(tc) |
755 self.replEdit.setTextCursor(tc) |
735 self.__interface.isConnected() and self.__interface.write(msg) |
756 self.__interface.isConnected() and self.__interface.write(msg) |