eric7/MicroPython/MicroPythonWidget.py

branch
eric7
changeset 9163
9ae6990affcd
parent 8945
b6be65111565
--- a/eric7/MicroPython/MicroPythonWidget.py	Mon Jun 20 19:47:39 2022 +0200
+++ b/eric7/MicroPython/MicroPythonWidget.py	Tue Jun 21 17:14:57 2022 +0200
@@ -526,15 +526,33 @@
         if Globals.isMacPlatform():
             copyKeys = QKeySequence("Ctrl+C")
             pasteKeys = QKeySequence("Ctrl+V")
+            selectAllKeys = QKeySequence("Ctrl+A")
         else:
             copyKeys = QKeySequence("Ctrl+Shift+C")
             pasteKeys = QKeySequence("Ctrl+Shift+V")
+            selectAllKeys = QKeySequence("Ctrl+Shift+A")
+        
         menu = QMenu(self)
-        menu.addAction(self.tr("Clear"), self.__clear)
+        act = menu.addAction(
+            UI.PixmapCache.getIcon("editDelete"), self.tr("Clear"),
+            self.__clear)
+        act.setEnabled(bool(self.replEdit.toPlainText()))
         menu.addSeparator()
-        menu.addAction(self.tr("Copy"), self.replEdit.copy, copyKeys)
-        menu.addAction(self.tr("Paste"), self.__paste, pasteKeys)
+        act = menu.addAction(
+            UI.PixmapCache.getIcon("editCopy"), self.tr("Copy"),
+            copyKeys, self.replEdit.copy)
+        act.setEnabled(self.replEdit.textCursor().hasSelection())
+        act = menu.addAction(
+            UI.PixmapCache.getIcon("editPaste"), self.tr("Paste"),
+            pasteKeys, self.__paste)
+        act.setEnabled(self.replEdit.canPaste() and
+                       self.__interface.isConnected())
         menu.addSeparator()
+        act = menu.addAction(
+            UI.PixmapCache.getIcon("editSelectAll"), self.tr("Select All"),
+            selectAllKeys, self.replEdit.selectAll)
+        act.setEnabled(bool(self.replEdit.toPlainText()))
+        
         menu.exec(self.replEdit.mapToGlobal(pos))
     
     def __setConnected(self, connected):
@@ -728,6 +746,9 @@
                 elif key == Qt.Key.Key_V:
                     self.__paste()
                     msg = b''
+                elif key == Qt.Key.Key_A:
+                    self.replEdit.selectAll()
+                    msg = b""
             elif key in (Qt.Key.Key_Return, Qt.Key.Key_Enter):
                 tc = self.replEdit.textCursor()
                 tc.movePosition(QTextCursor.MoveOperation.EndOfLine)

eric ide

mercurial