eric6/ViewManager/ViewManager.py

changeset 7704
9251c4dc4f7a
parent 7533
88261c96484b
child 7705
90a9aefd4253
equal deleted inserted replaced
7703:1f800f8295ea 7704:9251c4dc4f7a
117 @signal syntaxerrorToggled(Editor) emitted when a syntax error is toggled 117 @signal syntaxerrorToggled(Editor) emitted when a syntax error is toggled
118 @signal previewStateChanged(bool) emitted to signal a change in the 118 @signal previewStateChanged(bool) emitted to signal a change in the
119 preview state 119 preview state
120 @signal astViewerStateChanged(bool) emitted to signal a change in the 120 @signal astViewerStateChanged(bool) emitted to signal a change in the
121 AST viewer state 121 AST viewer state
122 @signal disViewerStateChanged(bool) emitted to signal a change in the
123 DIS viewer state
122 @signal editorLanguageChanged(Editor) emitted to signal a change of an 124 @signal editorLanguageChanged(Editor) emitted to signal a change of an
123 editor's language 125 editor's language
124 @signal editorTextChanged(Editor) emitted to signal a change of an 126 @signal editorTextChanged(Editor) emitted to signal a change of an
125 editor's text 127 editor's text
126 @signal editorLineChanged(str,int) emitted to signal a change of an 128 @signal editorLineChanged(str,int) emitted to signal a change of an
145 breakpointToggled = pyqtSignal(Editor) 147 breakpointToggled = pyqtSignal(Editor)
146 bookmarkToggled = pyqtSignal(Editor) 148 bookmarkToggled = pyqtSignal(Editor)
147 syntaxerrorToggled = pyqtSignal(Editor) 149 syntaxerrorToggled = pyqtSignal(Editor)
148 previewStateChanged = pyqtSignal(bool) 150 previewStateChanged = pyqtSignal(bool)
149 astViewerStateChanged = pyqtSignal(bool) 151 astViewerStateChanged = pyqtSignal(bool)
152 disViewerStateChanged = pyqtSignal(bool)
150 editorLanguageChanged = pyqtSignal(Editor) 153 editorLanguageChanged = pyqtSignal(Editor)
151 editorTextChanged = pyqtSignal(Editor) 154 editorTextChanged = pyqtSignal(Editor)
152 editorLineChanged = pyqtSignal(str, int) 155 editorLineChanged = pyqtSignal(str, int)
153 editorDoubleClickedEd = pyqtSignal(Editor, QPoint, int) 156 editorDoubleClickedEd = pyqtSignal(Editor, QPoint, int)
154 157
3782 )) 3785 ))
3783 self.astViewerAct.setChecked(False) 3786 self.astViewerAct.setChecked(False)
3784 self.astViewerAct.toggled[bool].connect(self.__astViewer) 3787 self.astViewerAct.toggled[bool].connect(self.__astViewer)
3785 self.viewActions.append(self.astViewerAct) 3788 self.viewActions.append(self.astViewerAct)
3786 3789
3790 self.disViewerAct = E5Action(
3791 QCoreApplication.translate('ViewManager', 'Python DIS Viewer'),
3792 UI.PixmapCache.getIcon("disassembly"),
3793 QCoreApplication.translate('ViewManager', 'Python DIS Viewer'),
3794 0, 0, self, 'vm_python_dis_viewer', True)
3795 self.disViewerAct.setStatusTip(QCoreApplication.translate(
3796 'ViewManager', 'Show the Disassembly for the current Python file'))
3797 self.disViewerAct.setWhatsThis(QCoreApplication.translate(
3798 'ViewManager',
3799 """<b>Python DIS Viewer</b>"""
3800 """<p>This opens the a tree view of the Disassembly of the"""
3801 """ current Python source file.</p>"""
3802 ))
3803 self.disViewerAct.setChecked(False)
3804 self.disViewerAct.toggled[bool].connect(self.__disViewer)
3805 self.viewActions.append(self.disViewerAct)
3806
3787 self.viewActGrp.setEnabled(False) 3807 self.viewActGrp.setEnabled(False)
3788 self.viewFoldActGrp.setEnabled(False) 3808 self.viewFoldActGrp.setEnabled(False)
3789 self.unhighlightAct.setEnabled(False) 3809 self.unhighlightAct.setEnabled(False)
3790 self.splitViewAct.setEnabled(False) 3810 self.splitViewAct.setEnabled(False)
3791 self.splitOrientationAct.setEnabled(False) 3811 self.splitOrientationAct.setEnabled(False)
3792 self.splitRemoveAct.setEnabled(False) 3812 self.splitRemoveAct.setEnabled(False)
3793 self.nextSplitAct.setEnabled(False) 3813 self.nextSplitAct.setEnabled(False)
3794 self.prevSplitAct.setEnabled(False) 3814 self.prevSplitAct.setEnabled(False)
3795 self.previewAct.setEnabled(True) 3815 self.previewAct.setEnabled(True)
3796 self.astViewerAct.setEnabled(False) 3816 self.astViewerAct.setEnabled(False)
3817 self.disViewerAct.setEnabled(False)
3797 self.newDocumentViewAct.setEnabled(False) 3818 self.newDocumentViewAct.setEnabled(False)
3798 self.newDocumentSplitViewAct.setEnabled(False) 3819 self.newDocumentSplitViewAct.setEnabled(False)
3799 3820
3800 self.splitOrientationAct.setChecked( 3821 self.splitOrientationAct.setChecked(
3801 Preferences.getUI("SplitOrientationVertical")) 3822 Preferences.getUI("SplitOrientationVertical"))
3813 menu.addSeparator() 3834 menu.addSeparator()
3814 menu.addActions(self.viewFoldActGrp.actions()) 3835 menu.addActions(self.viewFoldActGrp.actions())
3815 menu.addSeparator() 3836 menu.addSeparator()
3816 menu.addAction(self.previewAct) 3837 menu.addAction(self.previewAct)
3817 menu.addAction(self.astViewerAct) 3838 menu.addAction(self.astViewerAct)
3839 menu.addAction(self.disViewerAct)
3818 menu.addSeparator() 3840 menu.addSeparator()
3819 menu.addAction(self.unhighlightAct) 3841 menu.addAction(self.unhighlightAct)
3820 menu.addSeparator() 3842 menu.addSeparator()
3821 menu.addAction(self.newDocumentViewAct) 3843 menu.addAction(self.newDocumentViewAct)
3822 if self.canSplit(): 3844 if self.canSplit():
3846 3868
3847 tb.addActions(self.viewActGrp.actions()) 3869 tb.addActions(self.viewActGrp.actions())
3848 tb.addSeparator() 3870 tb.addSeparator()
3849 tb.addAction(self.previewAct) 3871 tb.addAction(self.previewAct)
3850 tb.addAction(self.astViewerAct) 3872 tb.addAction(self.astViewerAct)
3873 tb.addAction(self.disViewerAct)
3851 tb.addSeparator() 3874 tb.addSeparator()
3852 tb.addAction(self.newDocumentViewAct) 3875 tb.addAction(self.newDocumentViewAct)
3853 if self.canSplit(): 3876 if self.canSplit():
3854 tb.addAction(self.newDocumentSplitViewAct) 3877 tb.addAction(self.newDocumentSplitViewAct)
3855 3878
6208 Private slot to handle a change of the AST Viewer selection state. 6231 Private slot to handle a change of the AST Viewer selection state.
6209 6232
6210 @param checked state of the action (boolean) 6233 @param checked state of the action (boolean)
6211 """ 6234 """
6212 self.astViewerStateChanged.emit(checked) 6235 self.astViewerStateChanged.emit(checked)
6236
6237 def __disViewer(self, checked):
6238 """
6239 Private slot to handle a change of the DIS Viewer selection state.
6240
6241 @param checked state of the action (boolean)
6242 """
6243 self.disViewerStateChanged.emit(checked)
6213 6244
6214 ################################################################## 6245 ##################################################################
6215 ## Below are the action methods for the macro menu 6246 ## Below are the action methods for the macro menu
6216 ################################################################## 6247 ##################################################################
6217 6248
6681 self.newDocumentSplitViewAct.setEnabled(False) 6712 self.newDocumentSplitViewAct.setEnabled(False)
6682 self.splitViewAct.setEnabled(False) 6713 self.splitViewAct.setEnabled(False)
6683 self.splitOrientationAct.setEnabled(False) 6714 self.splitOrientationAct.setEnabled(False)
6684 self.previewAct.setEnabled(True) 6715 self.previewAct.setEnabled(True)
6685 self.astViewerAct.setEnabled(False) 6716 self.astViewerAct.setEnabled(False)
6717 self.disViewerAct.setEnabled(False)
6686 self.macroActGrp.setEnabled(False) 6718 self.macroActGrp.setEnabled(False)
6687 self.bookmarkActGrp.setEnabled(False) 6719 self.bookmarkActGrp.setEnabled(False)
6688 self.__enableSpellingActions() 6720 self.__enableSpellingActions()
6689 self.__setSbFile(zoom=0) 6721 self.__setSbFile(zoom=0)
6690 6722
6701 self.__searchWidget.hide() 6733 self.__searchWidget.hide()
6702 self.__replaceWidget.hide() 6734 self.__replaceWidget.hide()
6703 6735
6704 # hide the AST Viewer via its action 6736 # hide the AST Viewer via its action
6705 self.astViewerAct.setChecked(False) 6737 self.astViewerAct.setChecked(False)
6738
6739 # hide the DIS Viewer via its action
6740 self.disViewerAct.setChecked(False)
6706 6741
6707 def __editorOpened(self): 6742 def __editorOpened(self):
6708 """ 6743 """
6709 Private slot to handle the editorOpened signal. 6744 Private slot to handle the editorOpened signal.
6710 """ 6745 """
6727 self.splitOrientationAct.setEnabled(True) 6762 self.splitOrientationAct.setEnabled(True)
6728 self.macroActGrp.setEnabled(True) 6763 self.macroActGrp.setEnabled(True)
6729 self.bookmarkActGrp.setEnabled(True) 6764 self.bookmarkActGrp.setEnabled(True)
6730 self.__enableSpellingActions() 6765 self.__enableSpellingActions()
6731 self.astViewerAct.setEnabled(True) 6766 self.astViewerAct.setEnabled(True)
6767 self.disViewerAct.setEnabled(True)
6732 6768
6733 # activate the autosave timer 6769 # activate the autosave timer
6734 if ( 6770 if (
6735 not self.autosaveTimer.isActive() and 6771 not self.autosaveTimer.isActive() and
6736 self.autosaveInterval > 0 6772 self.autosaveInterval > 0

eric ide

mercurial