38 @param dbs reference to the debug server object |
40 @param dbs reference to the debug server object |
39 @param vm reference to the viewmanager object |
41 @param vm reference to the viewmanager object |
40 @param horizontal flag indicating a horizontal layout (boolean) |
42 @param horizontal flag indicating a horizontal layout (boolean) |
41 @param parent parent widget (QWidget) |
43 @param parent parent widget (QWidget) |
42 """ |
44 """ |
43 super().__init__(parent) |
45 super(ShellAssembly, self).__init__(parent) |
44 |
46 |
45 self.__shell = Shell(dbs, vm, self) |
47 self.__shell = Shell(dbs, vm, self) |
46 |
48 |
47 from UI.SearchWidget import SearchWidget |
49 from UI.SearchWidget import SearchWidget |
48 self.__searchWidget = SearchWidget(self.__shell, self, horizontal) |
50 self.__searchWidget = SearchWidget(self.__shell, self, horizontal) |
94 |
96 |
95 @param dbs reference to the debug server object |
97 @param dbs reference to the debug server object |
96 @param vm reference to the viewmanager object |
98 @param vm reference to the viewmanager object |
97 @param parent parent widget (QWidget) |
99 @param parent parent widget (QWidget) |
98 """ |
100 """ |
99 super().__init__(parent) |
101 super(Shell, self).__init__(parent) |
100 self.setUtf8(True) |
102 self.setUtf8(True) |
101 |
103 |
102 self.vm = vm |
104 self.vm = vm |
103 self.__mainWindow = parent |
105 self.__mainWindow = parent |
104 self.__lastSearch = () |
106 self.__lastSearch = () |
600 |
602 |
601 @param version interpreter version string (string) |
603 @param version interpreter version string (string) |
602 @param platform platform of the remote interpreter (string) |
604 @param platform platform of the remote interpreter (string) |
603 @param dbgclient debug client variant used (string) |
605 @param dbgclient debug client variant used (string) |
604 """ |
606 """ |
605 super().clear() |
607 super(Shell, self).clear() |
606 if self.passive and not self.dbs.isConnected(): |
608 if self.passive and not self.dbs.isConnected(): |
607 self.__write(self.trUtf8('Passive Debug Mode')) |
609 self.__write(self.trUtf8('Passive Debug Mode')) |
608 self.__write(self.trUtf8('\nNot connected')) |
610 self.__write(self.trUtf8('\nNot connected')) |
609 else: |
611 else: |
610 version = version.replace("#", self.trUtf8("No.")) |
612 version = version.replace("#", self.trUtf8("No.")) |
788 """ |
790 """ |
789 self.setFocus() |
791 self.setFocus() |
790 if event.button() == Qt.MidButton: |
792 if event.button() == Qt.MidButton: |
791 self.__middleMouseButton() |
793 self.__middleMouseButton() |
792 else: |
794 else: |
793 super().mousePressEvent(event) |
795 super(Shell, self).mousePressEvent(event) |
794 |
796 |
795 def wheelEvent(self, evt): |
797 def wheelEvent(self, evt): |
796 """ |
798 """ |
797 Protected method to handle wheel events. |
799 Protected method to handle wheel events. |
798 |
800 |
817 """ |
819 """ |
818 if evt.type() == QEvent.Gesture: |
820 if evt.type() == QEvent.Gesture: |
819 self.gestureEvent(evt) |
821 self.gestureEvent(evt) |
820 return True |
822 return True |
821 |
823 |
822 return super().event(evt) |
824 return super(Shell, self).event(evt) |
823 |
825 |
824 def gestureEvent(self, evt): |
826 def gestureEvent(self, evt): |
825 """ |
827 """ |
826 Protected method handling gesture events. |
828 Protected method handling gesture events. |
827 |
829 |
877 line, col = self.__getEndPos() |
879 line, col = self.__getEndPos() |
878 self.setCursorPosition(line, col) |
880 self.setCursorPosition(line, col) |
879 self.prline, self.prcol = self.getCursorPosition() |
881 self.prline, self.prcol = self.getCursorPosition() |
880 if self.echoInput: |
882 if self.echoInput: |
881 ac = self.isListActive() |
883 ac = self.isListActive() |
882 super().keyPressEvent(ev) |
884 super(Shell, self).keyPressEvent(ev) |
883 self.incrementalSearchActive = True |
885 self.incrementalSearchActive = True |
884 if ac and \ |
886 if ac and \ |
885 self.racEnabled: |
887 self.racEnabled: |
886 self.dbs.remoteCompletion(self.completionText + txt) |
888 self.dbs.remoteCompletion(self.completionText + txt) |
887 else: |
889 else: |
1451 """ |
1453 """ |
1452 self.inDragDrop = event.mimeData().hasUrls() or event.mimeData().hasText() |
1454 self.inDragDrop = event.mimeData().hasUrls() or event.mimeData().hasText() |
1453 if self.inDragDrop: |
1455 if self.inDragDrop: |
1454 event.acceptProposedAction() |
1456 event.acceptProposedAction() |
1455 else: |
1457 else: |
1456 super().dragEnterEvent(event) |
1458 super(Shell, self).dragEnterEvent(event) |
1457 |
1459 |
1458 def dragMoveEvent(self, event): |
1460 def dragMoveEvent(self, event): |
1459 """ |
1461 """ |
1460 Protected method to handle the drag move event. |
1462 Protected method to handle the drag move event. |
1461 |
1463 |
1462 @param event the drag move event (QDragMoveEvent) |
1464 @param event the drag move event (QDragMoveEvent) |
1463 """ |
1465 """ |
1464 if self.inDragDrop: |
1466 if self.inDragDrop: |
1465 event.accept() |
1467 event.accept() |
1466 else: |
1468 else: |
1467 super().dragMoveEvent(event) |
1469 super(Shell, self).dragMoveEvent(event) |
1468 |
1470 |
1469 def dragLeaveEvent(self, event): |
1471 def dragLeaveEvent(self, event): |
1470 """ |
1472 """ |
1471 Protected method to handle the drag leave event. |
1473 Protected method to handle the drag leave event. |
1472 |
1474 |
1501 if s: |
1503 if s: |
1502 event.acceptProposedAction() |
1504 event.acceptProposedAction() |
1503 self.executeLines(s) |
1505 self.executeLines(s) |
1504 del s |
1506 del s |
1505 else: |
1507 else: |
1506 super().dropEvent(event) |
1508 super(Shell, self).dropEvent(event) |
1507 |
1509 |
1508 self.inDragDrop = False |
1510 self.inDragDrop = False |
1509 |
1511 |
1510 def focusInEvent(self, event): |
1512 def focusInEvent(self, event): |
1511 """ |
1513 """ |
1536 self.__searchNextShortcut.setEnabled(True) |
1538 self.__searchNextShortcut.setEnabled(True) |
1537 self.__searchPrevShortcut.setEnabled(True) |
1539 self.__searchPrevShortcut.setEnabled(True) |
1538 self.setCaretWidth(self.caretWidth) |
1540 self.setCaretWidth(self.caretWidth) |
1539 self.setCursorFlashTime(QApplication.cursorFlashTime()) |
1541 self.setCursorFlashTime(QApplication.cursorFlashTime()) |
1540 |
1542 |
1541 super().focusInEvent(event) |
1543 super(Shell, self).focusInEvent(event) |
1542 |
1544 |
1543 def focusOutEvent(self, event): |
1545 def focusOutEvent(self, event): |
1544 """ |
1546 """ |
1545 Public method called when the shell loses focus. |
1547 Public method called when the shell loses focus. |
1546 |
1548 |
1552 pass |
1554 pass |
1553 self.__searchShortcut.setEnabled(False) |
1555 self.__searchShortcut.setEnabled(False) |
1554 self.__searchNextShortcut.setEnabled(False) |
1556 self.__searchNextShortcut.setEnabled(False) |
1555 self.__searchPrevShortcut.setEnabled(False) |
1557 self.__searchPrevShortcut.setEnabled(False) |
1556 self.setCaretWidth(0) |
1558 self.setCaretWidth(0) |
1557 super().focusOutEvent(event) |
1559 super(Shell, self).focusOutEvent(event) |
1558 |
1560 |
1559 def insert(self, txt): |
1561 def insert(self, txt): |
1560 """ |
1562 """ |
1561 Public slot to insert text at the current cursor position. |
1563 Public slot to insert text at the current cursor position. |
1562 |
1564 |