UI/UserInterface.py

changeset 2182
fc3210851b07
parent 2155
b2aba7aeab3a
child 2184
ef10859837c1
equal deleted inserted replaced
2180:8f6393810fee 2182:fc3210851b07
265 splash.showMessage(self.trUtf8("Generating Main User Interface...")) 265 splash.showMessage(self.trUtf8("Generating Main User Interface..."))
266 266
267 # Create the main window now so that we can connect QActions to it. 267 # Create the main window now so that we can connect QActions to it.
268 logging.debug("Creating Layout...") 268 logging.debug("Creating Layout...")
269 self.__createLayout(debugServer) 269 self.__createLayout(debugServer)
270 self.__currentRightWidget = None
271 self.__currentBottomWidget = None
270 272
271 # Generate the debugger part of the ui 273 # Generate the debugger part of the ui
272 logging.debug("Creating Debugger UI...") 274 logging.debug("Creating Debugger UI...")
273 self.debuggerUI = DebugUI(self, self.viewmanager, debugServer, 275 self.debuggerUI = DebugUI(self, self.viewmanager, debugServer,
274 self.debugViewer, self.project) 276 self.debugViewer, self.project)
381 383
382 self.multiProject.multiProjectOpened.connect(self.__activateMultiProjectBrowser) 384 self.multiProject.multiProjectOpened.connect(self.__activateMultiProjectBrowser)
383 385
384 self.debuggerUI.resetUI.connect(self.viewmanager.handleResetUI) 386 self.debuggerUI.resetUI.connect(self.viewmanager.handleResetUI)
385 self.debuggerUI.resetUI.connect(self.debugViewer.handleResetUI) 387 self.debuggerUI.resetUI.connect(self.debugViewer.handleResetUI)
386 self.debuggerUI.resetUI.connect(self.__setEditProfile) 388 self.debuggerUI.resetUI.connect(self.__debuggingDone)
387 self.debuggerUI.debuggingStarted.connect(self.browser.handleProgramChange) 389 self.debuggerUI.debuggingStarted.connect(self.browser.handleProgramChange)
388 self.debuggerUI.debuggingStarted.connect( 390 self.debuggerUI.debuggingStarted.connect(
389 self.debugViewer.exceptionLogger.debuggingStarted) 391 self.debugViewer.exceptionLogger.debuggingStarted)
390 self.debuggerUI.debuggingStarted.connect(self.debugViewer.handleDebuggingStarted) 392 self.debuggerUI.debuggingStarted.connect(self.debugViewer.handleDebuggingStarted)
391 self.debuggerUI.debuggingStarted.connect(self.__programChange) 393 self.debuggerUI.debuggingStarted.connect(self.__programChange)
617 """ 619 """
618 Private method to create the Toolboxes layout. 620 Private method to create the Toolboxes layout.
619 621
620 @param debugServer reference to the debug server object 622 @param debugServer reference to the debug server object
621 """ 623 """
622 # Create the vertical toolbox 624 # Create the left toolbox
623 self.vToolboxDock = self.__createDockWindow("vToolboxDock") 625 self.lToolboxDock = self.__createDockWindow("lToolboxDock")
624 self.vToolbox = E5VerticalToolBox(self.vToolboxDock) 626 self.lToolbox = E5VerticalToolBox(self.lToolboxDock)
625 self.__setupDockWindow(self.vToolboxDock, Qt.LeftDockWidgetArea, 627 self.__setupDockWindow(self.lToolboxDock, Qt.LeftDockWidgetArea,
626 self.vToolbox, self.trUtf8("Vertical Toolbox")) 628 self.lToolbox, self.trUtf8("Left Toolbox"))
627 629
628 # Create the horizontal toolbox 630 # Create the horizontal toolbox
629 self.hToolboxDock = self.__createDockWindow("hToolboxDock") 631 self.hToolboxDock = self.__createDockWindow("hToolboxDock")
630 self.hToolbox = E5HorizontalToolBox(self.hToolboxDock) 632 self.hToolbox = E5HorizontalToolBox(self.hToolboxDock)
631 self.__setupDockWindow(self.hToolboxDock, Qt.BottomDockWidgetArea, 633 self.__setupDockWindow(self.hToolboxDock, Qt.BottomDockWidgetArea,
632 self.hToolbox, self.trUtf8("Horizontal Toolbox")) 634 self.hToolbox, self.trUtf8("Horizontal Toolbox"))
633 635
636 # Create the right toolbox
637 self.rToolboxDock = self.__createDockWindow("rToolboxDock")
638 self.rToolbox = E5VerticalToolBox(self.rToolboxDock)
639 self.__setupDockWindow(self.rToolboxDock, Qt.RightDockWidgetArea,
640 self.rToolbox, self.trUtf8("Right Toolbox"))
641
634 # Create the project browser 642 # Create the project browser
635 self.projectBrowser = ProjectBrowser(self.project, None, 643 self.projectBrowser = ProjectBrowser(self.project, None,
636 embeddedBrowser=(self.embeddedFileBrowser == 2)) 644 embeddedBrowser=(self.embeddedFileBrowser == 2))
637 self.vToolbox.addItem(self.projectBrowser, 645 self.lToolbox.addItem(self.projectBrowser,
638 UI.PixmapCache.getIcon("projectViewer.png"), 646 UI.PixmapCache.getIcon("projectViewer.png"),
639 self.trUtf8("Project-Viewer")) 647 self.trUtf8("Project-Viewer"))
640 648
641 # Create the multi project browser 649 # Create the multi project browser
642 self.multiProjectBrowser = MultiProjectBrowser(self.multiProject) 650 self.multiProjectBrowser = MultiProjectBrowser(self.multiProject)
643 self.vToolbox.addItem(self.multiProjectBrowser, 651 self.lToolbox.addItem(self.multiProjectBrowser,
644 UI.PixmapCache.getIcon("multiProjectViewer.png"), 652 UI.PixmapCache.getIcon("multiProjectViewer.png"),
645 self.trUtf8("Multiproject-Viewer")) 653 self.trUtf8("Multiproject-Viewer"))
646 654
647 # Create the template viewer part of the user interface 655 # Create the template viewer part of the user interface
648 self.templateViewer = TemplateViewer(None, 656 self.templateViewer = TemplateViewer(None,
649 self.viewmanager) 657 self.viewmanager)
650 self.vToolbox.addItem(self.templateViewer, 658 self.lToolbox.addItem(self.templateViewer,
651 UI.PixmapCache.getIcon("templateViewer.png"), 659 UI.PixmapCache.getIcon("templateViewer.png"),
652 self.trUtf8("Template-Viewer")) 660 self.trUtf8("Template-Viewer"))
653 661
654 # Create the debug viewer maybe without the embedded shell 662 # Create the debug viewer maybe without the embedded shell
655 self.debugViewerDock = self.__createDockWindow("DebugViewerDock")
656 self.debugViewer = DebugViewer(debugServer, True, self.viewmanager, 663 self.debugViewer = DebugViewer(debugServer, True, self.viewmanager,
657 self.debugViewerDock, 664 None,
658 embeddedShell=self.embeddedShell, 665 embeddedShell=self.embeddedShell,
659 embeddedBrowser=(self.embeddedFileBrowser == 1)) 666 embeddedBrowser=(self.embeddedFileBrowser == 1))
660 self.__setupDockWindow(self.debugViewerDock, Qt.RightDockWidgetArea, 667 self.rToolbox.addItem(self.debugViewer,
661 self.debugViewer, self.trUtf8("Debug-Viewer")) 668 UI.PixmapCache.getIcon("debugViewer.png"),
669 self.trUtf8("Debug-Viewer"))
662 670
663 # Create the chat part of the user interface 671 # Create the chat part of the user interface
664 self.cooperationDock = self.__createDockWindow("CooperationDock") 672 self.cooperation = ChatWidget()
665 self.cooperation = ChatWidget(parent=self.cooperationDock) 673 self.rToolbox.addItem(self.cooperation,
666 self.__setupDockWindow(self.cooperationDock, Qt.RightDockWidgetArea, 674 UI.PixmapCache.getIcon("cooperation.png"),
667 self.cooperation, self.trUtf8("Cooperation")) 675 self.trUtf8("Cooperation"))
668 676
669 # Create the terminal part of the user interface 677 # Create the terminal part of the user interface
670 self.terminalAssembly = TerminalAssembly(self.viewmanager) 678 self.terminalAssembly = TerminalAssembly(self.viewmanager)
671 self.terminal = self.terminalAssembly.terminal() 679 self.terminal = self.terminalAssembly.terminal()
672 self.hToolbox.addItem(self.terminalAssembly, 680 self.hToolbox.addItem(self.terminalAssembly,
683 self.logViewer = LogViewer() 691 self.logViewer = LogViewer()
684 self.hToolbox.addItem(self.logViewer, 692 self.hToolbox.addItem(self.logViewer,
685 UI.PixmapCache.getIcon("logViewer.png"), 693 UI.PixmapCache.getIcon("logViewer.png"),
686 self.trUtf8("Log-Viewer")) 694 self.trUtf8("Log-Viewer"))
687 695
688 self.windows = [None, None, self.debugViewerDock, None, None,
689 None, None, None, None, self.cooperationDock]
690
691 if self.embeddedShell: 696 if self.embeddedShell:
692 self.shell = self.debugViewer.shell 697 self.shell = self.debugViewer.shell
693 else: 698 else:
694 # Create the shell 699 # Create the shell
695 self.shellAssembly = ShellAssembly(debugServer, self.viewmanager, True) 700 self.shellAssembly = ShellAssembly(debugServer, self.viewmanager, True)
699 self.trUtf8("Shell")) 704 self.trUtf8("Shell"))
700 705
701 if self.embeddedFileBrowser == 0: # separate window 706 if self.embeddedFileBrowser == 0: # separate window
702 # Create the file browser 707 # Create the file browser
703 self.browser = Browser() 708 self.browser = Browser()
704 self.vToolbox.addItem(self.browser, 709 self.lToolbox.addItem(self.browser,
705 UI.PixmapCache.getIcon("browser.png"), 710 UI.PixmapCache.getIcon("browser.png"),
706 self.trUtf8("File-Browser")) 711 self.trUtf8("File-Browser"))
707 elif self.embeddedFileBrowser == 1: # embedded in debug browser 712 elif self.embeddedFileBrowser == 1: # embedded in debug browser
708 self.browser = self.debugViewer.browser 713 self.browser = self.debugViewer.browser
709 else: # embedded in project browser 714 else: # embedded in project browser
710 self.browser = self.projectBrowser.fileBrowser 715 self.browser = self.projectBrowser.fileBrowser
711 716
712 # Create the symbols viewer 717 # Create the symbols viewer
713 self.symbolsViewer = SymbolsWidget() 718 self.symbolsViewer = SymbolsWidget()
714 self.vToolbox.addItem(self.symbolsViewer, 719 self.lToolbox.addItem(self.symbolsViewer,
715 UI.PixmapCache.getIcon("symbols.png"), 720 UI.PixmapCache.getIcon("symbols.png"),
716 self.trUtf8("Symbols")) 721 self.trUtf8("Symbols"))
717 722
718 # Create the numbers viewer 723 # Create the numbers viewer
719 self.numbersViewer = NumbersWidget() 724 self.numbersViewer = NumbersWidget()
732 # Create the left sidebar 737 # Create the left sidebar
733 self.leftSidebar = E5SideBar(E5SideBar.West) 738 self.leftSidebar = E5SideBar(E5SideBar.West)
734 739
735 # Create the bottom sidebar 740 # Create the bottom sidebar
736 self.bottomSidebar = E5SideBar(E5SideBar.South) 741 self.bottomSidebar = E5SideBar(E5SideBar.South)
742
743 # Create the right sidebar
744 self.rightSidebar = E5SideBar(E5SideBar.East)
737 745
738 # Create the project browser 746 # Create the project browser
739 logging.debug("Creating Project Browser...") 747 logging.debug("Creating Project Browser...")
740 self.projectBrowser = ProjectBrowser(self.project, None, 748 self.projectBrowser = ProjectBrowser(self.project, None,
741 embeddedBrowser=(self.embeddedFileBrowser == 2)) 749 embeddedBrowser=(self.embeddedFileBrowser == 2))
758 UI.PixmapCache.getIcon("templateViewer.png"), 766 UI.PixmapCache.getIcon("templateViewer.png"),
759 self.trUtf8("Template-Viewer")) 767 self.trUtf8("Template-Viewer"))
760 768
761 # Create the debug viewer maybe without the embedded shell 769 # Create the debug viewer maybe without the embedded shell
762 logging.debug("Creating Debug Viewer...") 770 logging.debug("Creating Debug Viewer...")
763 self.debugViewerDock = self.__createDockWindow("DebugViewerDock")
764 self.debugViewer = DebugViewer(debugServer, True, self.viewmanager, 771 self.debugViewer = DebugViewer(debugServer, True, self.viewmanager,
765 self.debugViewerDock, 772 None,
766 embeddedShell=self.embeddedShell, 773 embeddedShell=self.embeddedShell,
767 embeddedBrowser=(self.embeddedFileBrowser == 1)) 774 embeddedBrowser=(self.embeddedFileBrowser == 1))
768 self.__setupDockWindow(self.debugViewerDock, Qt.RightDockWidgetArea, 775 self.rightSidebar.addTab(self.debugViewer,
769 self.debugViewer, self.trUtf8("Debug-Viewer")) 776 UI.PixmapCache.getIcon("debugViewer.png"), self.trUtf8("Debug-Viewer"))
770 777
771 # Create the chat part of the user interface 778 # Create the chat part of the user interface
772 self.cooperationDock = self.__createDockWindow("CooperationDock") 779 logging.debug("Creating Chat Widget...")
773 self.cooperation = ChatWidget(parent=self.cooperationDock) 780 self.cooperation = ChatWidget()
774 self.__setupDockWindow(self.cooperationDock, Qt.RightDockWidgetArea, 781 self.rightSidebar.addTab(self.cooperation,
775 self.cooperation, self.trUtf8("Cooperation")) 782 UI.PixmapCache.getIcon("cooperation.png"), self.trUtf8("Cooperation"))
776 783
777 # Create the terminal part of the user interface 784 # Create the terminal part of the user interface
778 logging.debug("Creating Terminal...") 785 logging.debug("Creating Terminal...")
779 self.terminalAssembly = TerminalAssembly(self.viewmanager) 786 self.terminalAssembly = TerminalAssembly(self.viewmanager)
780 self.terminal = self.terminalAssembly.terminal() 787 self.terminal = self.terminalAssembly.terminal()
793 logging.debug("Creating Log Viewer...") 800 logging.debug("Creating Log Viewer...")
794 self.logViewer = LogViewer() 801 self.logViewer = LogViewer()
795 self.bottomSidebar.addTab(self.logViewer, 802 self.bottomSidebar.addTab(self.logViewer,
796 UI.PixmapCache.getIcon("logViewer.png"), 803 UI.PixmapCache.getIcon("logViewer.png"),
797 self.trUtf8("Log-Viewer")) 804 self.trUtf8("Log-Viewer"))
798
799 self.windows = [None, None, self.debugViewerDock, None, None,
800 None, None, None, None, self.cooperationDock]
801 805
802 if self.embeddedShell: 806 if self.embeddedShell:
803 self.shell = self.debugViewer.shell 807 self.shell = self.debugViewer.shell
804 else: 808 else:
805 # Create the shell 809 # Create the shell
837 self.bottomSidebar.setCurrentIndex(0) 841 self.bottomSidebar.setCurrentIndex(0)
838 842
839 # create the central widget 843 # create the central widget
840 logging.debug("Creating central widget...") 844 logging.debug("Creating central widget...")
841 cw = self.centralWidget() # save the current central widget 845 cw = self.centralWidget() # save the current central widget
842 self.horizontalSplitter = QSplitter(Qt.Horizontal) 846 self.leftSplitter = QSplitter(Qt.Horizontal)
847 self.rightSplitter = QSplitter(Qt.Horizontal)
843 self.verticalSplitter = QSplitter(Qt.Vertical) 848 self.verticalSplitter = QSplitter(Qt.Vertical)
844 self.verticalSplitter.addWidget(cw) 849 self.verticalSplitter.addWidget(cw)
845 self.verticalSplitter.addWidget(self.bottomSidebar) 850 self.verticalSplitter.addWidget(self.bottomSidebar)
846 self.horizontalSplitter.addWidget(self.leftSidebar) 851 self.rightSplitter.addWidget(self.verticalSplitter)
847 self.horizontalSplitter.addWidget(self.verticalSplitter) 852 self.rightSplitter.addWidget(self.rightSidebar)
848 self.setCentralWidget(self.horizontalSplitter) 853 self.leftSplitter.addWidget(self.leftSidebar)
849 854 self.leftSplitter.addWidget(self.rightSplitter)
850 self.leftSidebar.setSplitter(self.horizontalSplitter) 855 self.setCentralWidget(self.leftSplitter)
856
857 self.leftSidebar.setSplitter(self.leftSplitter)
858 self.rightSidebar.setSplitter(self.rightSplitter)
851 self.bottomSidebar.setSplitter(self.verticalSplitter) 859 self.bottomSidebar.setSplitter(self.verticalSplitter)
852 860
853 def __configureDockareaCornerUsage(self): 861 def __configureDockareaCornerUsage(self):
854 """ 862 """
855 Private method to configure the usage of the dockarea corners. 863 Private method to configure the usage of the dockarea corners.
883 """ 891 """
884 assert side in [UserInterface.LeftSide, UserInterface.BottomSide] 892 assert side in [UserInterface.LeftSide, UserInterface.BottomSide]
885 893
886 if self.layout == "Toolboxes": 894 if self.layout == "Toolboxes":
887 if side == UserInterface.LeftSide: 895 if side == UserInterface.LeftSide:
888 self.vToolbox.addItem(widget, icon, label) 896 self.lToolbox.addItem(widget, icon, label)
889 elif side == UserInterface.BottomSide: 897 elif side == UserInterface.BottomSide:
890 self.hToolbox.addItem(widget, icon, label) 898 self.hToolbox.addItem(widget, icon, label)
899 elif side == UserInterface.RightSide:
900 self.rToolbox.addItem(widget, icon, label)
891 elif self.layout == "Sidebars": 901 elif self.layout == "Sidebars":
892 if side == UserInterface.LeftSide: 902 if side == UserInterface.LeftSide:
893 self.leftSidebar.addTab(widget, icon, label) 903 self.leftSidebar.addTab(widget, icon, label)
894 elif side == UserInterface.BottomSide: 904 elif side == UserInterface.BottomSide:
895 self.bottomSidebar.addTab(widget, icon, label) 905 self.bottomSidebar.addTab(widget, icon, label)
906 elif side == UserInterface.RightSide:
907 self.rightSidebar.addTab(widget, icon, label)
896 908
897 def removeSideWidget(self, widget): 909 def removeSideWidget(self, widget):
898 """ 910 """
899 Public method to remove a widget added using addSideWidget(). 911 Public method to remove a widget added using addSideWidget().
900 912
901 @param widget reference to the widget to remove (QWidget) 913 @param widget reference to the widget to remove (QWidget)
902 """ 914 """
903 if self.layout == "Toolboxes": 915 if self.layout == "Toolboxes":
904 for container in [self.vToolbox, self.hToolbox]: 916 for container in [self.lToolbox, self.hToolbox, self.rToolbox]:
905 index = container.indexOf(widget) 917 index = container.indexOf(widget)
906 if index != -1: 918 if index != -1:
907 container.removeItem(index) 919 container.removeItem(index)
908 elif self.layout == "Sidebars": 920 elif self.layout == "Sidebars":
909 for container in [self.leftSidebar, self.bottomSidebar]: 921 for container in [self.leftSidebar, self.bottomSidebar, self.rightSidebar]:
910 index = container.indexOf(widget) 922 index = container.indexOf(widget)
911 if index != -1: 923 if index != -1:
912 container.removeTab(index) 924 container.removeTab(index)
913 925
914 def showLogTab(self, tabname): 926 def showLogTab(self, tabname):
1177 """ "View Profile Configuration" dialog.</p>""" 1189 """ "View Profile Configuration" dialog.</p>"""
1178 )) 1190 ))
1179 self.setDebugProfileAct.triggered[()].connect(self.setDebugProfile) 1191 self.setDebugProfileAct.triggered[()].connect(self.setDebugProfile)
1180 self.actions.append(self.setDebugProfileAct) 1192 self.actions.append(self.setDebugProfileAct)
1181 1193
1182 self.pbAct = E5Action(self.trUtf8('Project-Viewer'), 1194 self.pbActivateAct = E5Action(self.trUtf8('Project-Viewer'),
1183 self.trUtf8('&Project-Viewer'), 0, 0, self, 'project_viewer', True) 1195 self.trUtf8('&Project-Viewer'),
1184 self.pbAct.setStatusTip(self.trUtf8('Toggle the Project-Viewer window'))
1185 self.pbAct.setWhatsThis(self.trUtf8(
1186 """<b>Toggle the Project-Viewer window</b>"""
1187 """<p>If the Project-Viewer window is hidden then display it."""
1188 """ If it is displayed then close it.</p>"""
1189 ))
1190 self.pbAct.triggered[()].connect(self.__toggleProjectBrowser)
1191 self.actions.append(self.pbAct)
1192
1193 self.pbActivateAct = E5Action(self.trUtf8('Activate Project-Viewer'),
1194 self.trUtf8('Activate Project-Viewer'),
1195 QKeySequence(self.trUtf8("Alt+Shift+P")), 1196 QKeySequence(self.trUtf8("Alt+Shift+P")),
1196 0, self, 1197 0, self,
1197 'project_viewer_activate', True) 1198 'project_viewer_activate')
1199 self.pbActivateAct.setStatusTip(self.trUtf8(
1200 "Switch the input focus to the Project-Viewer window."))
1201 self.pbActivateAct.setWhatsThis(self.trUtf8(
1202 """<b>Activate Project-Viewer</b>"""
1203 """<p>This switches the input focus to the Project-Viewer window.</p>"""
1204 ))
1198 self.pbActivateAct.triggered[()].connect(self.__activateProjectBrowser) 1205 self.pbActivateAct.triggered[()].connect(self.__activateProjectBrowser)
1199 self.actions.append(self.pbActivateAct) 1206 self.actions.append(self.pbActivateAct)
1200 self.addAction(self.pbActivateAct) 1207 self.addAction(self.pbActivateAct)
1201 1208
1202 self.mpbAct = E5Action(self.trUtf8('Multiproject-Viewer'), 1209 self.mpbActivateAct = E5Action(self.trUtf8('Multiproject-Viewer'),
1203 self.trUtf8('&Multiproject-Viewer'), 0, 0, self, 1210 self.trUtf8('&Multiproject-Viewer'),
1204 'multi_project_viewer', True)
1205 self.mpbAct.setStatusTip(self.trUtf8('Toggle the Multiproject-Viewer window'))
1206 self.mpbAct.setWhatsThis(self.trUtf8(
1207 """<b>Toggle the Multiproject-Viewer window</b>"""
1208 """<p>If the Multiproject-Viewer window is hidden then display it."""
1209 """ If it is displayed then close it.</p>"""
1210 ))
1211 self.mpbAct.triggered[()].connect(self.__toggleMultiProjectBrowser)
1212 self.actions.append(self.mpbAct)
1213
1214 self.mpbActivateAct = E5Action(self.trUtf8('Activate Multiproject-Viewer'),
1215 self.trUtf8('Activate Multiproject-Viewer'),
1216 QKeySequence(self.trUtf8("Alt+Shift+M")), 1211 QKeySequence(self.trUtf8("Alt+Shift+M")),
1217 0, self, 1212 0, self,
1218 'multi_project_viewer_activate', True) 1213 'multi_project_viewer_activate')
1214 self.mpbActivateAct.setStatusTip(self.trUtf8(
1215 "Switch the input focus to the Multiproject-Viewer window."))
1216 self.mpbActivateAct.setWhatsThis(self.trUtf8(
1217 """<b>Activate Multiproject-Viewer</b>"""
1218 """<p>This switches the input focus to the Multiproject-Viewer window.</p>"""
1219 ))
1219 self.mpbActivateAct.triggered[()].connect(self.__activateMultiProjectBrowser) 1220 self.mpbActivateAct.triggered[()].connect(self.__activateMultiProjectBrowser)
1220 self.actions.append(self.mpbActivateAct) 1221 self.actions.append(self.mpbActivateAct)
1221 self.addAction(self.mpbActivateAct) 1222 self.addAction(self.mpbActivateAct)
1222 1223
1223 self.debugViewerAct = E5Action(self.trUtf8('Debug-Viewer'), 1224 self.debugViewerActivateAct = E5Action(self.trUtf8('Debug-Viewer'),
1224 self.trUtf8('&Debug-Viewer'), 0, 0, self, 'debug_viewer', True) 1225 self.trUtf8('&Debug-Viewer'),
1225 self.debugViewerAct.setStatusTip(self.trUtf8('Toggle the Debug-Viewer window'))
1226 self.debugViewerAct.setWhatsThis(self.trUtf8(
1227 """<b>Toggle the Debug-Viewer window</b>"""
1228 """<p>If the Debug-Viewer window is hidden then display it."""
1229 """ If it is displayed then close it.</p>"""
1230 ))
1231 self.debugViewerAct.triggered[()].connect(self.__toggleDebugViewer)
1232 self.actions.append(self.debugViewerAct)
1233
1234 self.debugViewerActivateAct = E5Action(self.trUtf8('Activate Debug-Viewer'),
1235 self.trUtf8('Activate Debug-Viewer'),
1236 QKeySequence(self.trUtf8("Alt+Shift+D")), 1226 QKeySequence(self.trUtf8("Alt+Shift+D")),
1237 0, self, 1227 0, self,
1238 'debug_viewer_activate', True) 1228 'debug_viewer_activate')
1229 self.debugViewerActivateAct.setStatusTip(self.trUtf8(
1230 "Switch the input focus to the Debug-Viewer window."))
1231 self.debugViewerActivateAct.setWhatsThis(self.trUtf8(
1232 """<b>Activate Debug-Viewer</b>"""
1233 """<p>This switches the input focus to the Debug-Viewer window.</p>"""
1234 ))
1239 self.debugViewerActivateAct.triggered[()].connect(self.__activateDebugViewer) 1235 self.debugViewerActivateAct.triggered[()].connect(self.__activateDebugViewer)
1240 self.actions.append(self.debugViewerActivateAct) 1236 self.actions.append(self.debugViewerActivateAct)
1241 self.addAction(self.debugViewerActivateAct) 1237 self.addAction(self.debugViewerActivateAct)
1242 1238
1243 self.shellAct = E5Action(self.trUtf8('Shell'), 1239 self.shellActivateAct = E5Action(self.trUtf8('Shell'),
1244 self.trUtf8('&Shell'), 0, 0, self, 'interpreter_shell', True) 1240 self.trUtf8('&Shell'),
1245 self.shellAct.setStatusTip(self.trUtf8('Toggle the Shell window'))
1246 self.shellAct.setWhatsThis(self.trUtf8(
1247 """<b>Toggle the Shell window</b>"""
1248 """<p>If the Shell window is hidden then display it."""
1249 """ If it is displayed then close it.</p>"""
1250 ))
1251 if not self.embeddedShell:
1252 self.shellAct.triggered[()].connect(self.__toggleShell)
1253 self.actions.append(self.shellAct)
1254
1255 self.shellActivateAct = E5Action(self.trUtf8('Activate Shell'),
1256 self.trUtf8('Activate Shell'),
1257 QKeySequence(self.trUtf8("Alt+Shift+S")), 1241 QKeySequence(self.trUtf8("Alt+Shift+S")),
1258 0, self, 1242 0, self,
1259 'interprter_shell_activate', True) 1243 'interprter_shell_activate')
1244 self.shellActivateAct.setStatusTip(self.trUtf8(
1245 "Switch the input focus to the Shell window."))
1246 self.shellActivateAct.setWhatsThis(self.trUtf8(
1247 """<b>Activate Shell</b>"""
1248 """<p>This switches the input focus to the Shell window.</p>"""
1249 ))
1260 self.shellActivateAct.triggered[()].connect(self.__activateShell) 1250 self.shellActivateAct.triggered[()].connect(self.__activateShell)
1261 self.actions.append(self.shellActivateAct) 1251 self.actions.append(self.shellActivateAct)
1262 self.addAction(self.shellActivateAct) 1252 self.addAction(self.shellActivateAct)
1263 1253
1264 self.terminalAct = E5Action(self.trUtf8('Terminal'), 1254 self.terminalActivateAct = E5Action(self.trUtf8('Terminal'),
1265 self.trUtf8('Te&rminal'), 0, 0, self, 'terminal', True) 1255 self.trUtf8('Te&rminal'),
1266 self.terminalAct.setStatusTip(self.trUtf8('Toggle the Terminal window'))
1267 self.terminalAct.setWhatsThis(self.trUtf8(
1268 """<b>Toggle the Terminal window</b>"""
1269 """<p>If the Terminal window is hidden then display it."""
1270 """ If it is displayed then close it.</p>"""
1271 ))
1272 self.terminalAct.triggered[()].connect(self.__toggleTerminal)
1273 self.actions.append(self.terminalAct)
1274
1275 self.terminalActivateAct = E5Action(self.trUtf8('Activate Terminal'),
1276 self.trUtf8('Activate Terminal'),
1277 QKeySequence(self.trUtf8("Alt+Shift+R")), 1256 QKeySequence(self.trUtf8("Alt+Shift+R")),
1278 0, self, 1257 0, self,
1279 'terminal_activate', True) 1258 'terminal_activate')
1259 self.terminalActivateAct.setStatusTip(self.trUtf8(
1260 "Switch the input focus to the Terminal window."))
1261 self.terminalActivateAct.setWhatsThis(self.trUtf8(
1262 """<b>Activate Terminal</b>"""
1263 """<p>This switches the input focus to the Terminal window.</p>"""
1264 ))
1280 self.terminalActivateAct.triggered[()].connect(self.__activateTerminal) 1265 self.terminalActivateAct.triggered[()].connect(self.__activateTerminal)
1281 self.actions.append(self.terminalActivateAct) 1266 self.actions.append(self.terminalActivateAct)
1282 self.addAction(self.terminalActivateAct) 1267 self.addAction(self.terminalActivateAct)
1283 1268
1284 self.browserAct = E5Action(self.trUtf8('File-Browser'), 1269 self.browserActivateAct = E5Action(self.trUtf8('File-Browser'),
1285 self.trUtf8('File-&Browser'), 0, 0, self, 'file_browser', True) 1270 self.trUtf8('&File-Browser'),
1286 self.browserAct.setStatusTip(self.trUtf8('Toggle the File-Browser window'))
1287 self.browserAct.setWhatsThis(self.trUtf8(
1288 """<b>Toggle the File-Browser window</b>"""
1289 """<p>If the File-Browser window is hidden then display it."""
1290 """ If it is displayed then close it.</p>"""
1291 ))
1292 if not self.embeddedFileBrowser:
1293 self.browserAct.triggered[()].connect(self.__toggleBrowser)
1294 self.actions.append(self.browserAct)
1295
1296 self.browserActivateAct = E5Action(self.trUtf8('Activate File-Browser'),
1297 self.trUtf8('Activate File-Browser'),
1298 QKeySequence(self.trUtf8("Alt+Shift+F")), 1271 QKeySequence(self.trUtf8("Alt+Shift+F")),
1299 0, self, 1272 0, self,
1300 'file_browser_activate', True) 1273 'file_browser_activate')
1274 self.browserActivateAct.setStatusTip(self.trUtf8(
1275 "Switch the input focus to the File-Browser window."))
1276 self.browserActivateAct.setWhatsThis(self.trUtf8(
1277 """<b>Activate File-Browser</b>"""
1278 """<p>This switches the input focus to the File-Browser window.</p>"""
1279 ))
1301 self.browserActivateAct.triggered[()].connect(self.__activateBrowser) 1280 self.browserActivateAct.triggered[()].connect(self.__activateBrowser)
1302 self.actions.append(self.browserActivateAct) 1281 self.actions.append(self.browserActivateAct)
1303 self.addAction(self.browserActivateAct) 1282 self.addAction(self.browserActivateAct)
1304 1283
1305 self.logViewerAct = E5Action(self.trUtf8('Log-Viewer'), 1284 self.logViewerActivateAct = E5Action(self.trUtf8('Log-Viewer'),
1306 self.trUtf8('&Log-Viewer'), 0, 0, self, 'log_viewer', True) 1285 self.trUtf8('Lo&g-Viewer'),
1307 self.logViewerAct.setStatusTip(self.trUtf8('Toggle the Log-Viewer window'))
1308 self.logViewerAct.setWhatsThis(self.trUtf8(
1309 """<b>Toggle the Log-Viewer window</b>"""
1310 """<p>If the Log-Viewer window is hidden then display it."""
1311 """ If it is displayed then close it.</p>"""
1312 ))
1313 self.logViewerAct.triggered[()].connect(self.__toggleLogViewer)
1314 self.actions.append(self.logViewerAct)
1315
1316 self.logViewerActivateAct = E5Action(self.trUtf8('Activate Log-Viewer'),
1317 self.trUtf8('Activate Log-Viewer'),
1318 QKeySequence(self.trUtf8("Alt+Shift+G")), 1286 QKeySequence(self.trUtf8("Alt+Shift+G")),
1319 0, self, 1287 0, self,
1320 'log_viewer_activate', True) 1288 'log_viewer_activate')
1289 self.logViewerActivateAct.setStatusTip(self.trUtf8(
1290 "Switch the input focus to the Log-Viewer window."))
1291 self.logViewerActivateAct.setWhatsThis(self.trUtf8(
1292 """<b>Activate Log-Viewer</b>"""
1293 """<p>This switches the input focus to the Log-Viewer window.</p>"""
1294 ))
1321 self.logViewerActivateAct.triggered[()].connect(self.__activateLogViewer) 1295 self.logViewerActivateAct.triggered[()].connect(self.__activateLogViewer)
1322 self.actions.append(self.logViewerActivateAct) 1296 self.actions.append(self.logViewerActivateAct)
1323 self.addAction(self.logViewerActivateAct) 1297 self.addAction(self.logViewerActivateAct)
1324 1298
1325 self.taskViewerAct = E5Action(self.trUtf8('Task-Viewer'), 1299 self.taskViewerActivateAct = E5Action(self.trUtf8('Task-Viewer'),
1326 self.trUtf8('T&ask-Viewer'), 0, 0, self, 'task_viewer', True) 1300 self.trUtf8('&Task-Viewer'),
1327 self.taskViewerAct.setStatusTip(self.trUtf8('Toggle the Task-Viewer window'))
1328 self.taskViewerAct.setWhatsThis(self.trUtf8(
1329 """<b>Toggle the Task-Viewer window</b>"""
1330 """<p>If the Task-Viewer window is hidden then display it."""
1331 """ If it is displayed then close it.</p>"""
1332 ))
1333 self.taskViewerAct.triggered[()].connect(self.__toggleTaskViewer)
1334 self.actions.append(self.taskViewerAct)
1335
1336 self.taskViewerActivateAct = E5Action(self.trUtf8('Activate Task-Viewer'),
1337 self.trUtf8('Activate Task-Viewer'),
1338 QKeySequence(self.trUtf8("Alt+Shift+T")), 1301 QKeySequence(self.trUtf8("Alt+Shift+T")),
1339 0, self, 1302 0, self,
1340 'task_viewer_activate', 1) 1303 'task_viewer_activate')
1304 self.taskViewerActivateAct.setStatusTip(self.trUtf8(
1305 "Switch the input focus to the Task-Viewer window."))
1306 self.taskViewerActivateAct.setWhatsThis(self.trUtf8(
1307 """<b>Activate Task-Viewer</b>"""
1308 """<p>This switches the input focus to the Task-Viewer window.</p>"""
1309 ))
1341 self.taskViewerActivateAct.triggered[()].connect(self.__activateTaskViewer) 1310 self.taskViewerActivateAct.triggered[()].connect(self.__activateTaskViewer)
1342 self.actions.append(self.taskViewerActivateAct) 1311 self.actions.append(self.taskViewerActivateAct)
1343 self.addAction(self.taskViewerActivateAct) 1312 self.addAction(self.taskViewerActivateAct)
1344 1313
1345 self.templateViewerAct = E5Action(self.trUtf8('Template-Viewer'), 1314 self.templateViewerActivateAct = E5Action(self.trUtf8('Template-Viewer'),
1346 self.trUtf8('Temp&late-Viewer'), 0, 0, self, 'template_viewer', True) 1315 self.trUtf8('Templ&ate-Viewer'),
1347 self.templateViewerAct.setStatusTip(
1348 self.trUtf8('Toggle the Template-Viewer window'))
1349 self.templateViewerAct.setWhatsThis(self.trUtf8(
1350 """<b>Toggle the Template-Viewer window</b>"""
1351 """<p>If the Template-Viewer window is hidden then display it."""
1352 """ If it is displayed then close it.</p>"""
1353 ))
1354 self.templateViewerAct.triggered[()].connect(self.__toggleTemplateViewer)
1355 self.actions.append(self.templateViewerAct)
1356
1357 self.templateViewerActivateAct = E5Action(self.trUtf8('Activate Template-Viewer'),
1358 self.trUtf8('Activate Template-Viewer'),
1359 QKeySequence(self.trUtf8("Alt+Shift+A")), 1316 QKeySequence(self.trUtf8("Alt+Shift+A")),
1360 0, self, 1317 0, self,
1361 'template_viewer_activate', 1) 1318 'template_viewer_activate')
1362 self.templateViewerActivateAct.triggered[()].connect(self.__activateTemplateViewer) 1319 self.templateViewerActivateAct.setStatusTip(self.trUtf8(
1320 "Switch the input focus to the Template-Viewer window."))
1321 self.templateViewerActivateAct.setWhatsThis(self.trUtf8(
1322 """<b>Activate Template-Viewer</b>"""
1323 """<p>This switches the input focus to the Template-Viewer window.</p>"""
1324 ))
1325 self.templateViewerActivateAct.triggered[()].connect(
1326 self.__activateTemplateViewer)
1363 self.actions.append(self.templateViewerActivateAct) 1327 self.actions.append(self.templateViewerActivateAct)
1364 self.addAction(self.templateViewerActivateAct) 1328 self.addAction(self.templateViewerActivateAct)
1365 1329
1366 self.vtAct = E5Action(self.trUtf8('Vertical Toolbox'), 1330 self.ltAct = E5Action(self.trUtf8('Left Toolbox'),
1367 self.trUtf8('&Vertical Toolbox'), 0, 0, self, 'vertical_toolbox', True) 1331 self.trUtf8('&Left Toolbox'), 0, 0, self, 'vertical_toolbox', True)
1368 self.vtAct.setStatusTip(self.trUtf8('Toggle the Vertical Toolbox window')) 1332 self.ltAct.setStatusTip(self.trUtf8('Toggle the Left Toolbox window'))
1369 self.vtAct.setWhatsThis(self.trUtf8( 1333 self.ltAct.setWhatsThis(self.trUtf8(
1370 """<b>Toggle the Vertical Toolbox window</b>""" 1334 """<b>Toggle the Left Toolbox window</b>"""
1371 """<p>If the Vertical Toolbox window is hidden then display it.""" 1335 """<p>If the Left Toolbox window is hidden then display it."""
1372 """ If it is displayed then close it.</p>""" 1336 """ If it is displayed then close it.</p>"""
1373 )) 1337 ))
1374 self.vtAct.triggered[()].connect(self.__toggleVerticalToolbox) 1338 self.ltAct.triggered[()].connect(self.__toggleLeftToolbox)
1375 self.actions.append(self.vtAct) 1339 self.actions.append(self.ltAct)
1340
1341 self.rtAct = E5Action(self.trUtf8('Right Toolbox'),
1342 self.trUtf8('&Right Toolbox'), 0, 0, self, 'vertical_toolbox', True)
1343 self.rtAct.setStatusTip(self.trUtf8('Toggle the Right Toolbox window'))
1344 self.rtAct.setWhatsThis(self.trUtf8(
1345 """<b>Toggle the Right Toolbox window</b>"""
1346 """<p>If the Right Toolbox window is hidden then display it."""
1347 """ If it is displayed then close it.</p>"""
1348 ))
1349 self.rtAct.triggered[()].connect(self.__toggleRightToolbox)
1350 self.actions.append(self.rtAct)
1376 1351
1377 self.htAct = E5Action(self.trUtf8('Horizontal Toolbox'), 1352 self.htAct = E5Action(self.trUtf8('Horizontal Toolbox'),
1378 self.trUtf8('&Horizontal Toolbox'), 0, 0, self, 1353 self.trUtf8('&Horizontal Toolbox'), 0, 0, self,
1379 'horizontal_toolbox', True) 1354 'horizontal_toolbox', True)
1380 self.htAct.setStatusTip(self.trUtf8('Toggle the Horizontal Toolbox window')) 1355 self.htAct.setStatusTip(self.trUtf8('Toggle the Horizontal Toolbox window'))
1395 """ If it is displayed then close it.</p>""" 1370 """ If it is displayed then close it.</p>"""
1396 )) 1371 ))
1397 self.lsbAct.triggered[()].connect(self.__toggleLeftSidebar) 1372 self.lsbAct.triggered[()].connect(self.__toggleLeftSidebar)
1398 self.actions.append(self.lsbAct) 1373 self.actions.append(self.lsbAct)
1399 1374
1375 self.rsbAct = E5Action(self.trUtf8('Right Sidebar'),
1376 self.trUtf8('&Right Sidebar'), 0, 0, self, 'right_sidebar', True)
1377 self.rsbAct.setStatusTip(self.trUtf8('Toggle the right sidebar window'))
1378 self.rsbAct.setWhatsThis(self.trUtf8(
1379 """<b>Toggle the right sidebar window</b>"""
1380 """<p>If the right sidebar window is hidden then display it."""
1381 """ If it is displayed then close it.</p>"""
1382 ))
1383 self.rsbAct.triggered[()].connect(self.__toggleRightSidebar)
1384 self.actions.append(self.rsbAct)
1385
1400 self.bsbAct = E5Action(self.trUtf8('Bottom Sidebar'), 1386 self.bsbAct = E5Action(self.trUtf8('Bottom Sidebar'),
1401 self.trUtf8('&Bottom Sidebar'), 0, 0, self, 1387 self.trUtf8('&Bottom Sidebar'), 0, 0, self,
1402 'bottom_sidebar', True) 1388 'bottom_sidebar', True)
1403 self.bsbAct.setStatusTip(self.trUtf8('Toggle the bottom sidebar window')) 1389 self.bsbAct.setStatusTip(self.trUtf8('Toggle the bottom sidebar window'))
1404 self.bsbAct.setWhatsThis(self.trUtf8( 1390 self.bsbAct.setWhatsThis(self.trUtf8(
1407 """ If it is displayed then close it.</p>""" 1393 """ If it is displayed then close it.</p>"""
1408 )) 1394 ))
1409 self.bsbAct.triggered[()].connect(self.__toggleBottomSidebar) 1395 self.bsbAct.triggered[()].connect(self.__toggleBottomSidebar)
1410 self.actions.append(self.bsbAct) 1396 self.actions.append(self.bsbAct)
1411 1397
1412 self.cooperationViewerAct = E5Action(self.trUtf8('Cooperation'),
1413 self.trUtf8('&Cooperation'), 0, 0, self, 'cooperation_viewer', True)
1414 self.cooperationViewerAct.setStatusTip(self.trUtf8(
1415 'Toggle the Cooperation window'))
1416 self.cooperationViewerAct.setWhatsThis(self.trUtf8(
1417 """<b>Toggle the Cooperation window</b>"""
1418 """<p>If the Cooperation window is hidden then display it."""
1419 """ If it is displayed then close it.</p>"""
1420 ))
1421 self.cooperationViewerAct.triggered[()].connect(self.__toggleCooperationViewer)
1422 self.actions.append(self.cooperationViewerAct)
1423
1424 self.cooperationViewerActivateAct = E5Action( 1398 self.cooperationViewerActivateAct = E5Action(
1425 self.trUtf8('Activate Cooperation-Viewer'), 1399 self.trUtf8('Cooperation-Viewer'),
1426 self.trUtf8('Activate Cooperation-Viewer'), 1400 self.trUtf8('Co&operation-Viewer'),
1427 QKeySequence(self.trUtf8("Alt+Shift+O")), 1401 QKeySequence(self.trUtf8("Alt+Shift+O")),
1428 0, self, 1402 0, self,
1429 'cooperation_viewer_activate', True) 1403 'cooperation_viewer_activate')
1430 self.cooperationViewerActivateAct.triggered[()].connect(self.activateCooperationViewer) 1404 self.cooperationViewerActivateAct.setStatusTip(self.trUtf8(
1405 "Switch the input focus to the Cooperation-Viewer window."))
1406 self.cooperationViewerActivateAct.setWhatsThis(self.trUtf8(
1407 """<b>Activate Cooperation-Viewer</b>"""
1408 """<p>This switches the input focus to the Cooperation-Viewer window.</p>"""
1409 ))
1410 self.cooperationViewerActivateAct.triggered[()].connect(
1411 self.activateCooperationViewer)
1431 self.actions.append(self.cooperationViewerActivateAct) 1412 self.actions.append(self.cooperationViewerActivateAct)
1432 self.addAction(self.cooperationViewerActivateAct) 1413 self.addAction(self.cooperationViewerActivateAct)
1433 1414
1434 self.symbolsViewerAct = E5Action(self.trUtf8('Symbols'),
1435 self.trUtf8('&Symbols'), 0, 0, self, 'symbols_viewer', True)
1436 self.symbolsViewerAct.setStatusTip(self.trUtf8(
1437 'Toggle the Symbols window'))
1438 self.symbolsViewerAct.setWhatsThis(self.trUtf8(
1439 """<b>Toggle the Symbols window</b>"""
1440 """<p>If the Symbols window is hidden then display it."""
1441 """ If it is displayed then close it.</p>"""
1442 ))
1443 self.symbolsViewerAct.triggered[()].connect(self.__toggleSymbolsViewer)
1444 self.actions.append(self.symbolsViewerAct)
1445
1446 self.symbolsViewerActivateAct = E5Action( 1415 self.symbolsViewerActivateAct = E5Action(
1447 self.trUtf8('Activate Symbols-Viewer'), 1416 self.trUtf8('Symbols-Viewer'),
1448 self.trUtf8('Activate Symbols-Viewer'), 1417 self.trUtf8('S&ymbols-Viewer'),
1449 QKeySequence(self.trUtf8("Alt+Shift+Y")), 1418 QKeySequence(self.trUtf8("Alt+Shift+Y")),
1450 0, self, 1419 0, self,
1451 'symbols_viewer_activate', True) 1420 'symbols_viewer_activate')
1421 self.symbolsViewerActivateAct.setStatusTip(self.trUtf8(
1422 "Switch the input focus to the Symbols-Viewer window."))
1423 self.symbolsViewerActivateAct.setWhatsThis(self.trUtf8(
1424 """<b>Activate Symbols-Viewer</b>"""
1425 """<p>This switches the input focus to the Symbols-Viewer window.</p>"""
1426 ))
1452 self.symbolsViewerActivateAct.triggered[()].connect(self.__activateSymbolsViewer) 1427 self.symbolsViewerActivateAct.triggered[()].connect(self.__activateSymbolsViewer)
1453 self.actions.append(self.symbolsViewerActivateAct) 1428 self.actions.append(self.symbolsViewerActivateAct)
1454 self.addAction(self.symbolsViewerActivateAct) 1429 self.addAction(self.symbolsViewerActivateAct)
1455 1430
1456 self.numbersViewerAct = E5Action(self.trUtf8('Numbers'),
1457 self.trUtf8('&Numbers'), 0, 0, self, 'numbers_viewer', True)
1458 self.numbersViewerAct.setStatusTip(self.trUtf8(
1459 'Toggle the Numbers window'))
1460 self.numbersViewerAct.setWhatsThis(self.trUtf8(
1461 """<b>Toggle the Numbers window</b>"""
1462 """<p>If the Numbers window is hidden then display it."""
1463 """ If it is displayed then close it.</p>"""
1464 ))
1465 self.numbersViewerAct.triggered[()].connect(self.__toggleNumbersViewer)
1466 self.actions.append(self.numbersViewerAct)
1467
1468 self.numbersViewerActivateAct = E5Action( 1431 self.numbersViewerActivateAct = E5Action(
1469 self.trUtf8('Activate Numbers-Viewer'), 1432 self.trUtf8('Numbers-Viewer'),
1470 self.trUtf8('Activate Numbers-Viewer'), 1433 self.trUtf8('Num&bers-Viewer'),
1471 QKeySequence(self.trUtf8("Alt+Shift+B")), 1434 QKeySequence(self.trUtf8("Alt+Shift+B")),
1472 0, self, 1435 0, self,
1473 'numbers_viewer_activate', True) 1436 'numbers_viewer_activate')
1437 self.numbersViewerActivateAct.setStatusTip(self.trUtf8(
1438 "Switch the input focus to the Numbers-Viewer window."))
1439 self.numbersViewerActivateAct.setWhatsThis(self.trUtf8(
1440 """<b>Activate Numbers-Viewer</b>"""
1441 """<p>This switches the input focus to the Numbers-Viewer window.</p>"""
1442 ))
1474 self.numbersViewerActivateAct.triggered[()].connect(self.__activateNumbersViewer) 1443 self.numbersViewerActivateAct.triggered[()].connect(self.__activateNumbersViewer)
1475 self.actions.append(self.numbersViewerActivateAct) 1444 self.actions.append(self.numbersViewerActivateAct)
1476 self.addAction(self.numbersViewerActivateAct) 1445 self.addAction(self.numbersViewerActivateAct)
1477 1446
1478 self.whatsThisAct = E5Action(self.trUtf8('What\'s This?'), 1447 self.whatsThisAct = E5Action(self.trUtf8('What\'s This?'),
2178 2147
2179 self.__menus["window"] = QMenu(self.trUtf8('&Window'), self) 2148 self.__menus["window"] = QMenu(self.trUtf8('&Window'), self)
2180 mb.addMenu(self.__menus["window"]) 2149 mb.addMenu(self.__menus["window"])
2181 self.__menus["window"].setTearOffEnabled(True) 2150 self.__menus["window"].setTearOffEnabled(True)
2182 self.__menus["window"].aboutToShow.connect(self.__showWindowMenu) 2151 self.__menus["window"].aboutToShow.connect(self.__showWindowMenu)
2152
2153 self.__menus["subwindow"] = QMenu(self.trUtf8("&Windows"), self.__menus["window"])
2154 self.__menus["subwindow"].setTearOffEnabled(True)
2155 self.__menus["subwindow"].addAction(self.pbActivateAct)
2156 self.__menus["subwindow"].addAction(self.mpbActivateAct)
2157 self.__menus["subwindow"].addAction(self.browserActivateAct)
2158 self.__menus["subwindow"].addAction(self.debugViewerActivateAct)
2159 self.__menus["subwindow"].addAction(self.shellActivateAct)
2160 self.__menus["subwindow"].addAction(self.terminalActivateAct)
2161 self.__menus["subwindow"].addAction(self.logViewerActivateAct)
2162 self.__menus["subwindow"].addAction(self.taskViewerActivateAct)
2163 self.__menus["subwindow"].addAction(self.templateViewerActivateAct)
2164 self.__menus["subwindow"].addAction(self.cooperationViewerActivateAct)
2165 self.__menus["subwindow"].addAction(self.symbolsViewerActivateAct)
2166 self.__menus["subwindow"].addAction(self.numbersViewerActivateAct)
2183 2167
2184 self.__menus["toolbars"] = \ 2168 self.__menus["toolbars"] = \
2185 QMenu(self.trUtf8("&Toolbars"), self.__menus["window"]) 2169 QMenu(self.trUtf8("&Toolbars"), self.__menus["window"])
2186 self.__menus["toolbars"].setTearOffEnabled(True) 2170 self.__menus["toolbars"].setTearOffEnabled(True)
2187 self.__menus["toolbars"].aboutToShow.connect(self.__showToolbarsMenu) 2171 self.__menus["toolbars"].aboutToShow.connect(self.__showToolbarsMenu)
3029 3013
3030 self.__menus["window"].addActions(self.viewProfileActGrp.actions()) 3014 self.__menus["window"].addActions(self.viewProfileActGrp.actions())
3031 self.__menus["window"].addSeparator() 3015 self.__menus["window"].addSeparator()
3032 3016
3033 if self.layout == "Toolboxes": 3017 if self.layout == "Toolboxes":
3034 self.__menus["window"].addAction(self.vtAct) 3018 self.__menus["window"].addAction(self.ltAct)
3035 self.vtAct.setChecked(not self.vToolboxDock.isHidden()) 3019 self.ltAct.setChecked(not self.lToolboxDock.isHidden())
3020 self.__menus["window"].addAction(self.rtAct)
3021 self.rtAct.setChecked(not self.lToolboxDock.isHidden())
3036 self.__menus["window"].addAction(self.htAct) 3022 self.__menus["window"].addAction(self.htAct)
3037 self.htAct.setChecked(not self.hToolboxDock.isHidden()) 3023 self.htAct.setChecked(not self.hToolboxDock.isHidden())
3038 self.__menus["window"].addAction(self.cooperationViewerAct)
3039 self.cooperationViewerAct.setChecked(not self.cooperationDock.isHidden())
3040 self.__menus["window"].addAction(self.debugViewerAct)
3041 self.debugViewerAct.setChecked(not self.debugViewerDock.isHidden())
3042 elif self.layout == "Sidebars": 3024 elif self.layout == "Sidebars":
3043 self.__menus["window"].addAction(self.lsbAct) 3025 self.__menus["window"].addAction(self.lsbAct)
3044 self.lsbAct.setChecked(not self.leftSidebar.isHidden()) 3026 self.lsbAct.setChecked(not self.leftSidebar.isHidden())
3027 self.__menus["window"].addAction(self.rsbAct)
3028 self.rsbAct.setChecked(not self.rightSidebar.isHidden())
3045 self.__menus["window"].addAction(self.bsbAct) 3029 self.__menus["window"].addAction(self.bsbAct)
3046 self.bsbAct.setChecked(not self.bottomSidebar.isHidden()) 3030 self.bsbAct.setChecked(not self.bottomSidebar.isHidden())
3047 self.__menus["window"].addAction(self.cooperationViewerAct) 3031
3048 self.cooperationViewerAct.setChecked(not self.cooperationDock.isHidden()) 3032 # Insert menu entry for sub-windows
3049 self.__menus["window"].addAction(self.debugViewerAct) 3033 self.__menus["window"].addSeparator()
3050 self.debugViewerAct.setChecked(not self.debugViewerDock.isHidden()) 3034 self.__menus["window"].addMenu(self.__menus["subwindow"])
3051 else: 3035
3052 # Set the options according to what is being displayed.
3053 self.__menus["window"].addAction(self.pbAct)
3054 self.pbAct.setChecked(not self.projectBrowser.isHidden())
3055
3056 self.__menus["window"].addAction(self.mpbAct)
3057 self.mpbAct.setChecked(not self.multiProjectBrowser.isHidden())
3058
3059 if not self.embeddedFileBrowser:
3060 self.__menus["window"].addAction(self.browserAct)
3061 self.browserAct.setChecked(not self.browser.isHidden())
3062
3063 self.__menus["window"].addAction(self.debugViewerAct)
3064 self.debugViewerAct.setChecked(not self.debugViewer.isHidden())
3065
3066 if not self.embeddedShell:
3067 self.__menus["window"].addAction(self.shellAct)
3068 self.shellAct.setChecked(not self.shell.isHidden())
3069
3070 self.__menus["window"].addAction(self.terminalAct)
3071 self.terminalAct.setChecked(not self.terminal.isHidden())
3072
3073 self.__menus["window"].addAction(self.logViewerAct)
3074 self.logViewerAct.setChecked(not self.logViewer.isHidden())
3075
3076 self.__menus["window"].addAction(self.taskViewerAct)
3077 self.taskViewerAct.setChecked(not self.taskViewer.isHidden())
3078
3079 self.__menus["window"].addAction(self.templateViewerAct)
3080 self.templateViewerAct.setChecked(not self.templateViewer.isHidden())
3081
3082 self.__menus["window"].addAction(self.cooperationViewerAct)
3083 self.cooperationViewerAct.setChecked(not self.cooperation.isHidden())
3084
3085 self.__menus["window"].addAction(self.symbolsViewerAct)
3086 self.symbolsViewerAct.setChecked(not self.symbolsViewer.isHidden())
3087
3088 # Insert menu entry for toolbar settings 3036 # Insert menu entry for toolbar settings
3089 self.__menus["window"].addSeparator() 3037 self.__menus["window"].addSeparator()
3090 self.__menus["window"].addMenu(self.__menus["toolbars"]) 3038 self.__menus["window"].addMenu(self.__menus["toolbars"])
3091 3039
3092 # Now do any Source Viewer related stuff. 3040 # Now do any Source Viewer related stuff.
3093 self.viewmanager.showWindowMenu(self.__menus["window"]) 3041 self.viewmanager.showWindowMenu(self.__menus["window"])
3094 3042
3095 self.showMenu.emit("Window", self.__menus["window"]) 3043 self.showMenu.emit("Window", self.__menus["window"])
3044
3045 def __showSubWindowMenu(self):
3046 """
3047 Private slot to display the Window menu of the Window menu.
3048 """
3049 self.showMenu.emit("Subwindows", self.__menus["subwindow"])
3096 3050
3097 def __showToolbarsMenu(self): 3051 def __showToolbarsMenu(self):
3098 """ 3052 """
3099 Private slot to display the Toolbars menu. 3053 Private slot to display the Toolbars menu.
3100 """ 3054 """
3152 # step 1: save the window geometries of the active profile 3106 # step 1: save the window geometries of the active profile
3153 if self.layout in ["Toolboxes", "Sidebars"]: 3107 if self.layout in ["Toolboxes", "Sidebars"]:
3154 state = self.saveState() 3108 state = self.saveState()
3155 self.profiles[self.currentProfile][4] = bytes(state) 3109 self.profiles[self.currentProfile][4] = bytes(state)
3156 if self.layout == "Sidebars": 3110 if self.layout == "Sidebars":
3157 state = self.horizontalSplitter.saveState() 3111 state = self.leftSplitter.saveState()
3158 self.profiles[self.currentProfile][6][0] = bytes(state) 3112 self.profiles[self.currentProfile][6][0] = bytes(state)
3159 state = self.verticalSplitter.saveState() 3113 state = self.verticalSplitter.saveState()
3160 self.profiles[self.currentProfile][6][1] = bytes(state) 3114 self.profiles[self.currentProfile][6][1] = bytes(state)
3161 state = self.leftSidebar.saveState() 3115 state = self.leftSidebar.saveState()
3162 self.profiles[self.currentProfile][6][2] = bytes(state) 3116 self.profiles[self.currentProfile][6][2] = bytes(state)
3163 state = self.bottomSidebar.saveState() 3117 state = self.bottomSidebar.saveState()
3164 self.profiles[self.currentProfile][6][3] = bytes(state) 3118 self.profiles[self.currentProfile][6][3] = bytes(state)
3119 state = self.rightSplitter.saveState()
3120 self.profiles[self.currentProfile][6][4] = bytes(state)
3121 state = self.rightSidebar.saveState()
3122 self.profiles[self.currentProfile][6][5] = bytes(state)
3165 # step 2: save the visibility of the windows of the active profile 3123 # step 2: save the visibility of the windows of the active profile
3166 for window, i in zip(self.windows, list(range(len(self.windows)))):
3167 if window is not None:
3168 self.profiles[self.currentProfile][0][i] = window.isVisible()
3169 if self.layout == "Toolboxes": 3124 if self.layout == "Toolboxes":
3170 self.profiles[self.currentProfile][5][0] = self.vToolboxDock.isVisible() 3125 self.profiles[self.currentProfile][5][0] = self.lToolboxDock.isVisible()
3171 self.profiles[self.currentProfile][5][1] = self.hToolboxDock.isVisible() 3126 self.profiles[self.currentProfile][5][1] = self.hToolboxDock.isVisible()
3127 self.profiles[self.currentProfile][5][2] = self.rToolboxDock.isVisible()
3172 elif self.layout == "Sidebars": 3128 elif self.layout == "Sidebars":
3173 self.profiles[self.currentProfile][5][0] = self.leftSidebar.isVisible() 3129 self.profiles[self.currentProfile][5][0] = self.leftSidebar.isVisible()
3174 self.profiles[self.currentProfile][5][1] = self.bottomSidebar.isVisible() 3130 self.profiles[self.currentProfile][5][1] = self.bottomSidebar.isVisible()
3131 self.profiles[self.currentProfile][5][2] = self.rightSidebar.isVisible()
3175 Preferences.setUI("ViewProfiles", self.profiles) 3132 Preferences.setUI("ViewProfiles", self.profiles)
3176 3133
3177 def __activateViewProfile(self, name, save=True): 3134 def __activateViewProfile(self, name, save=True):
3178 """ 3135 """
3179 Private slot to activate a view profile. 3136 Private slot to activate a view profile.
3192 if not state.isEmpty(): 3149 if not state.isEmpty():
3193 self.restoreState(state) 3150 self.restoreState(state)
3194 if self.layout == "Sidebars": 3151 if self.layout == "Sidebars":
3195 state = QByteArray(self.profiles[name][6][0]) 3152 state = QByteArray(self.profiles[name][6][0])
3196 if not state.isEmpty(): 3153 if not state.isEmpty():
3197 self.horizontalSplitter.restoreState(state) 3154 self.leftSplitter.restoreState(state)
3198 state = QByteArray(self.profiles[name][6][1]) 3155 state = QByteArray(self.profiles[name][6][1])
3199 if not state.isEmpty(): 3156 if not state.isEmpty():
3200 self.verticalSplitter.restoreState(state) 3157 self.verticalSplitter.restoreState(state)
3201 state = QByteArray(self.profiles[name][6][2]) 3158 state = QByteArray(self.profiles[name][6][2])
3202 if not state.isEmpty(): 3159 if not state.isEmpty():
3203 self.leftSidebar.restoreState(state) 3160 self.leftSidebar.restoreState(state)
3204 state = QByteArray(self.profiles[name][6][3]) 3161 state = QByteArray(self.profiles[name][6][3])
3205 if not state.isEmpty(): 3162 if not state.isEmpty():
3206 self.bottomSidebar.restoreState(state) 3163 self.bottomSidebar.restoreState(state)
3164 state = QByteArray(self.profiles[name][6][4])
3165 if not state.isEmpty():
3166 self.rightSplitter.restoreState(state)
3167 state = QByteArray(self.profiles[name][6][5])
3168 if not state.isEmpty():
3169 self.rightSidebar.restoreState(state)
3207 self.__configureDockareaCornerUsage() 3170 self.__configureDockareaCornerUsage()
3208 3171
3209 # step 3: activate the windows of the new profile 3172 # step 3: activate the windows of the new profile
3210 for window, visible in zip(self.windows, self.profiles[name][0]):
3211 if window is not None:
3212 window.setVisible(visible)
3213 if self.layout == "Toolboxes": 3173 if self.layout == "Toolboxes":
3214 self.vToolboxDock.setVisible(self.profiles[name][5][0]) 3174 self.lToolboxDock.setVisible(self.profiles[name][5][0])
3215 self.hToolboxDock.setVisible(self.profiles[name][5][1]) 3175 self.hToolboxDock.setVisible(self.profiles[name][5][1])
3176 self.rToolboxDock.setVisible(self.profiles[name][5][2])
3216 elif self.layout == "Sidebars": 3177 elif self.layout == "Sidebars":
3217 self.leftSidebar.setVisible(self.profiles[name][5][0]) 3178 self.leftSidebar.setVisible(self.profiles[name][5][0])
3218 self.bottomSidebar.setVisible(self.profiles[name][5][1]) 3179 self.bottomSidebar.setVisible(self.profiles[name][5][1])
3180 self.rightSidebar.setVisible(self.profiles[name][5][2])
3219 3181
3220 # step 4: remember the new profile 3182 # step 4: remember the new profile
3221 self.currentProfile = name 3183 self.currentProfile = name
3222 3184
3223 # step 5: make sure that cursor of the shell is visible 3185 # step 5: make sure that cursor of the shell is visible
3227 if self.__menus["toolbars"].isTearOffMenuVisible(): 3189 if self.__menus["toolbars"].isTearOffMenuVisible():
3228 self.__showToolbarsMenu() 3190 self.__showToolbarsMenu()
3229 if self.__menus["window"].isTearOffMenuVisible(): 3191 if self.__menus["window"].isTearOffMenuVisible():
3230 self.__showWindowMenu() 3192 self.__showWindowMenu()
3231 3193
3194 def __debuggingStarted(self):
3195 """
3196 Private slot to handle the start of a debugging session.
3197 """
3198 self.setDebugProfile()
3199 if self.layout == "Toolboxes":
3200 self.__currentRightWidget = self.rToolbox.currentWidget()
3201 self.rToolbox.setCurrentWidget(self.debugViewer)
3202 if not self.embeddedShell:
3203 self.__currentBottomWidget = self.hToolbox.currentWidget()
3204 self.hToolbox.setCurrentWidget(self.shellAssembly)
3205 elif self.layout == "Sidebars":
3206 self.__currentRightWidget = self.rightSidebar.currentWidget()
3207 self.rightSidebar.setCurrentWidget(self.debugViewer)
3208 if not self.embeddedShell:
3209 self.__currentBottomWidget = self.bottomSidebar.currentWidget()
3210 self.bottomSidebar.setCurrentWidget(self.shellAssembly)
3211
3212 def __debuggingDone(self):
3213 """
3214 Private slot to handle the end of a debugging session.
3215 """
3216 self.__setEditProfile()
3217 if self.layout == "Toolboxes":
3218 if self.__currentRightWidget:
3219 self.rToolbox.setCurrentWidget(self.__currentRightWidget)
3220 if self.__currentBottomWidget:
3221 self.hToolbox.setCurrentWidget(self.__currentBottomWidget)
3222 elif self.layout == "Sidebars":
3223 if self.__currentRightWidget:
3224 self.rightSidebar.setCurrentWidget(self.__currentRightWidget)
3225 if self.__currentBottomWidget:
3226 self.bottomSidebar.setCurrentWidget(self.__currentBottomWidget)
3227 self.__currentRightWidget = None
3228 self.__currentBottomWidget = None
3229 self.__activateViewmanager()
3230
3232 def __setEditProfile(self, save=True): 3231 def __setEditProfile(self, save=True):
3233 """ 3232 """
3234 Private slot to activate the edit view profile. 3233 Private slot to activate the edit view profile.
3235 3234
3236 @param save flag indicating that the current profile should 3235 @param save flag indicating that the current profile should
3237 be saved (boolean) 3236 be saved (boolean)
3238 """ 3237 """
3239 self.__activateViewProfile("edit", save) 3238 self.__activateViewProfile("edit", save)
3240 self.setEditProfileAct.setChecked(True) 3239 self.setEditProfileAct.setChecked(True)
3241
3242 def __debuggingStarted(self):
3243 """
3244 Private slot to handle the start of a debugging session.
3245 """
3246 self.setDebugProfile()
3247 if self.layout == "Toolboxes":
3248 if not self.embeddedShell:
3249 self.hToolbox.setCurrentWidget(self.shellAssembly)
3250 elif self.layout == "Sidebars":
3251 if not self.embeddedShell:
3252 self.bottomSidebar.setCurrentWidget(self.shellAssembly)
3253 3240
3254 def setDebugProfile(self, save=True): 3241 def setDebugProfile(self, save=True):
3255 """ 3242 """
3256 Public slot to activate the debug view profile. 3243 Public slot to activate the debug view profile.
3257 3244
3269 3256
3270 @return the name of the current view profile (string) 3257 @return the name of the current view profile (string)
3271 """ 3258 """
3272 return self.currentProfile 3259 return self.currentProfile
3273 3260
3274 def __toggleProjectBrowser(self):
3275 """
3276 Private slot to handle the toggle of the Project Browser window.
3277 """
3278 hasFocus = self.projectBrowser.currentWidget().hasFocus()
3279 shown = self.__toggleWindow(self.projectBrowser)
3280 if shown:
3281 self.__activateProjectBrowser()
3282 else:
3283 if hasFocus:
3284 self.__activateViewmanager()
3285
3286 def __activateProjectBrowser(self): 3261 def __activateProjectBrowser(self):
3287 """ 3262 """
3288 Private slot to handle the activation of the project browser. 3263 Private slot to handle the activation of the project browser.
3289 """ 3264 """
3290 if self.layout == "Toolboxes": 3265 if self.layout == "Toolboxes":
3291 self.vToolboxDock.show() 3266 self.lToolboxDock.show()
3292 self.vToolbox.setCurrentWidget(self.projectBrowser) 3267 self.lToolbox.setCurrentWidget(self.projectBrowser)
3293 elif self.layout == "Sidebars": 3268 elif self.layout == "Sidebars":
3294 self.leftSidebar.show() 3269 self.leftSidebar.show()
3295 self.leftSidebar.setCurrentWidget(self.projectBrowser) 3270 self.leftSidebar.setCurrentWidget(self.projectBrowser)
3296 else: 3271 else:
3297 self.projectBrowser.show() 3272 self.projectBrowser.show()
3298 self.projectBrowser.currentWidget().setFocus(Qt.ActiveWindowFocusReason) 3273 self.projectBrowser.currentWidget().setFocus(Qt.ActiveWindowFocusReason)
3299 3274
3300 def __toggleMultiProjectBrowser(self):
3301 """
3302 Private slot to handle the toggle of the Project Browser window.
3303 """
3304 hasFocus = self.multiProjectBrowser.hasFocus()
3305 shown = self.__toggleWindow(self.multiProjectBrowser)
3306 if shown:
3307 self.__activateMultiProjectBrowser()
3308 else:
3309 if hasFocus:
3310 self.__activateViewmanager()
3311
3312 def __activateMultiProjectBrowser(self): 3275 def __activateMultiProjectBrowser(self):
3313 """ 3276 """
3314 Private slot to handle the activation of the project browser. 3277 Private slot to handle the activation of the project browser.
3315 """ 3278 """
3316 if self.layout == "Toolboxes": 3279 if self.layout == "Toolboxes":
3317 self.vToolboxDock.show() 3280 self.lToolboxDock.show()
3318 self.vToolbox.setCurrentWidget(self.multiProjectBrowser) 3281 self.lToolbox.setCurrentWidget(self.multiProjectBrowser)
3319 elif self.layout == "Sidebars": 3282 elif self.layout == "Sidebars":
3320 self.leftSidebar.show() 3283 self.leftSidebar.show()
3321 self.leftSidebar.setCurrentWidget(self.multiProjectBrowser) 3284 self.leftSidebar.setCurrentWidget(self.multiProjectBrowser)
3322 else: 3285 else:
3323 self.multiProjectBrowser.show() 3286 self.multiProjectBrowser.show()
3324 self.multiProjectBrowser.setFocus(Qt.ActiveWindowFocusReason) 3287 self.multiProjectBrowser.setFocus(Qt.ActiveWindowFocusReason)
3325 3288
3326 def __toggleDebugViewer(self):
3327 """
3328 Private slot to handle the toggle of the debug viewer.
3329 """
3330 hasFocus = self.debugViewer.currentWidget().hasFocus()
3331 if self.layout in ["Toolboxes", "Sidebars"]:
3332 shown = self.__toggleWindow(self.debugViewerDock)
3333 else:
3334 shown = self.__toggleWindow(self.debugViewer)
3335 if shown:
3336 self.__activateDebugViewer()
3337 else:
3338 if hasFocus:
3339 self.__activateViewmanager()
3340
3341 def __activateDebugViewer(self): 3289 def __activateDebugViewer(self):
3342 """ 3290 """
3343 Private slot to handle the activation of the debug viewer. 3291 Private slot to handle the activation of the debug viewer.
3344 """ 3292 """
3345 if self.layout in ["Toolboxes", "Sidebars"]: 3293 if self.layout == "Toolboxes":
3346 self.debugViewerDock.show() 3294 self.rToolboxDock.show()
3347 self.debugViewerDock.raise_() 3295 self.rToolbox.setCurrentWidget(self.debugViewer)
3296 elif self.layout == "Sidebars":
3297 self.rightSidebar.show()
3298 self.rightSidebar.setCurrentWidget(self.debugViewer)
3348 else: 3299 else:
3349 self.debugViewer.show() 3300 self.debugViewer.show()
3350 self.debugViewer.currentWidget().setFocus(Qt.ActiveWindowFocusReason) 3301 self.debugViewer.currentWidget().setFocus(Qt.ActiveWindowFocusReason)
3351 3302
3352 def __toggleShell(self):
3353 """
3354 Private slot to handle the toggle of the Shell window .
3355 """
3356 hasFocus = self.shell.hasFocus()
3357 shown = self.__toggleWindow(self.shell)
3358 if shown:
3359 self.__activateShell()
3360 else:
3361 if hasFocus:
3362 self.__activateViewmanager()
3363
3364 def __activateShell(self): 3303 def __activateShell(self):
3365 """ 3304 """
3366 Private slot to handle the activation of the Shell window. 3305 Private slot to handle the activation of the Shell window.
3367 """ 3306 """
3368 if self.embeddedShell: # embedded in debug browser 3307 if self.embeddedShell: # embedded in debug browser
3369 if self.layout in ["Toolboxes", "Sidebars"]: 3308 if self.layout == "Toolboxes":
3370 self.debugViewerDock.show() 3309 self.rToolboxDock.show()
3371 self.debugViewerDock.raise_() 3310 self.rToolbox.setCurrentWidget(self.debugViewer)
3311 elif self.layout == "Sidebars":
3312 self.rightSidebar.show()
3313 self.rightSidebar.setCurrentWidget(self.debugViewer)
3372 else: 3314 else:
3373 self.debugViewer.show() 3315 self.debugViewer.show()
3374 self.debugViewer.setCurrentWidget(self.shellAssembly) 3316 self.debugViewer.setCurrentWidget(self.shellAssembly)
3375 else: # separate window 3317 else: # separate window
3376 if self.layout == "Toolboxes": 3318 if self.layout == "Toolboxes":
3381 self.bottomSidebar.setCurrentWidget(self.shellAssembly) 3323 self.bottomSidebar.setCurrentWidget(self.shellAssembly)
3382 else: 3324 else:
3383 self.shell.show() 3325 self.shell.show()
3384 self.shell.setFocus(Qt.ActiveWindowFocusReason) 3326 self.shell.setFocus(Qt.ActiveWindowFocusReason)
3385 3327
3386 def __toggleTerminal(self):
3387 """
3388 Private slot to handle the toggle of the Terminal window .
3389 """
3390 hasFocus = self.terminal.hasFocus()
3391 shown = self.__toggleWindow(self.terminal)
3392 if shown:
3393 self.__activateTerminal()
3394 else:
3395 if hasFocus:
3396 self.__activateViewmanager()
3397
3398 def __activateTerminal(self): 3328 def __activateTerminal(self):
3399 """ 3329 """
3400 Private slot to handle the activation of the Terminal window. 3330 Private slot to handle the activation of the Terminal window.
3401 """ 3331 """
3402 if self.layout == "Toolboxes": 3332 if self.layout == "Toolboxes":
3407 self.bottomSidebar.setCurrentWidget(self.terminalAssembly) 3337 self.bottomSidebar.setCurrentWidget(self.terminalAssembly)
3408 else: 3338 else:
3409 self.terminal.show() 3339 self.terminal.show()
3410 self.terminal.setFocus(Qt.ActiveWindowFocusReason) 3340 self.terminal.setFocus(Qt.ActiveWindowFocusReason)
3411 3341
3412 def __toggleLogViewer(self):
3413 """
3414 Private slot to handle the toggle of the Log Viewer window.
3415 """
3416 hasFocus = self.logViewer.hasFocus()
3417 shown = self.__toggleWindow(self.logViewer)
3418 if shown:
3419 self.__activateLogViewer()
3420 else:
3421 if hasFocus:
3422 self.__activateViewmanager()
3423
3424 def __activateLogViewer(self): 3342 def __activateLogViewer(self):
3425 """ 3343 """
3426 Private slot to handle the activation of the Log Viewer. 3344 Private slot to handle the activation of the Log Viewer.
3427 """ 3345 """
3428 if self.layout == "Toolboxes": 3346 if self.layout == "Toolboxes":
3433 self.bottomSidebar.setCurrentWidget(self.logViewer) 3351 self.bottomSidebar.setCurrentWidget(self.logViewer)
3434 else: 3352 else:
3435 self.logViewer.show() 3353 self.logViewer.show()
3436 self.logViewer.setFocus(Qt.ActiveWindowFocusReason) 3354 self.logViewer.setFocus(Qt.ActiveWindowFocusReason)
3437 3355
3438 def __toggleTaskViewer(self):
3439 """
3440 Private slot to handle the toggle of the Task Viewer window.
3441 """
3442 hasFocus = self.taskViewer.hasFocus()
3443 shown = self.__toggleWindow(self.taskViewer)
3444 if shown:
3445 self.__activateTaskViewer()
3446 else:
3447 if hasFocus:
3448 self.__activateViewmanager()
3449
3450 def __activateTaskViewer(self): 3356 def __activateTaskViewer(self):
3451 """ 3357 """
3452 Private slot to handle the activation of the Task Viewer. 3358 Private slot to handle the activation of the Task Viewer.
3453 """ 3359 """
3454 if self.layout == "Toolboxes": 3360 if self.layout == "Toolboxes":
3459 self.bottomSidebar.setCurrentWidget(self.taskViewer) 3365 self.bottomSidebar.setCurrentWidget(self.taskViewer)
3460 else: 3366 else:
3461 self.taskViewer.show() 3367 self.taskViewer.show()
3462 self.taskViewer.setFocus(Qt.ActiveWindowFocusReason) 3368 self.taskViewer.setFocus(Qt.ActiveWindowFocusReason)
3463 3369
3464 def __toggleTemplateViewer(self):
3465 """
3466 Private slot to handle the toggle of the Template Viewer window.
3467 """
3468 hasFocus = self.templateViewer.hasFocus()
3469 shown = self.__toggleWindow(self.templateViewer)
3470 if shown:
3471 self.__activateTemplateViewer()
3472 else:
3473 if hasFocus:
3474 self.__activateViewmanager()
3475
3476 def __activateTemplateViewer(self): 3370 def __activateTemplateViewer(self):
3477 """ 3371 """
3478 Private slot to handle the activation of the Template Viewer. 3372 Private slot to handle the activation of the Template Viewer.
3479 """ 3373 """
3480 if self.layout == "Toolboxes": 3374 if self.layout == "Toolboxes":
3481 self.vToolboxDock.show() 3375 self.lToolboxDock.show()
3482 self.vToolbox.setCurrentWidget(self.templateViewer) 3376 self.lToolbox.setCurrentWidget(self.templateViewer)
3483 elif self.layout == "Sidebars": 3377 elif self.layout == "Sidebars":
3484 self.leftSidebar.show() 3378 self.leftSidebar.show()
3485 self.leftSidebar.setCurrentWidget(self.templateViewer) 3379 self.leftSidebar.setCurrentWidget(self.templateViewer)
3486 else: 3380 else:
3487 self.templateViewer.show() 3381 self.templateViewer.show()
3488 self.templateViewer.setFocus(Qt.ActiveWindowFocusReason) 3382 self.templateViewer.setFocus(Qt.ActiveWindowFocusReason)
3489 3383
3490 def __toggleBrowser(self):
3491 """
3492 Private slot to handle the toggle of the File Browser window.
3493 """
3494 hasFocus = self.browser.hasFocus()
3495 shown = self.__toggleWindow(self.browser)
3496 if shown:
3497 self.__activateBrowser()
3498 else:
3499 if hasFocus:
3500 self.__activateViewmanager()
3501
3502 def __activateBrowser(self): 3384 def __activateBrowser(self):
3503 """ 3385 """
3504 Private slot to handle the activation of the file browser. 3386 Private slot to handle the activation of the file browser.
3505 """ 3387 """
3506 if self.embeddedFileBrowser == 0: # separate window 3388 if self.embeddedFileBrowser == 0: # separate window
3507 if self.layout == "Toolboxes": 3389 if self.layout == "Toolboxes":
3508 self.vToolboxDock.show() 3390 self.lToolboxDock.show()
3509 self.vToolbox.setCurrentWidget(self.browser) 3391 self.lToolbox.setCurrentWidget(self.browser)
3510 elif self.layout == "Sidebars": 3392 elif self.layout == "Sidebars":
3511 self.leftSidebar.show() 3393 self.leftSidebar.show()
3512 self.leftSidebar.setCurrentWidget(self.browser) 3394 self.leftSidebar.setCurrentWidget(self.browser)
3513 else: 3395 else:
3514 self.browser.show() 3396 self.browser.show()
3515 elif self.embeddedFileBrowser == 1: # embedded in debug browser 3397 elif self.embeddedFileBrowser == 1: # embedded in debug browser
3516 if self.layout in ["Toolboxes", "Sidebars"]: 3398 if self.layout == "Toolboxes":
3517 self.debugViewerDock.show() 3399 self.rToolboxDock.show()
3518 self.debugViewerDock.raise_() 3400 self.rToolbox.setCurrentWidget(self.debugViewer)
3401 elif self.layout == "Sidebars":
3402 self.rightSidebar.show()
3403 self.rightSidebar.setCurrentWidget(self.debugViewer)
3519 else: 3404 else:
3520 self.debugViewer.show() 3405 self.debugViewer.show()
3521 self.debugViewer.setCurrentWidget(self.browser) 3406 self.debugViewer.setCurrentWidget(self.browser)
3522 else: # embedded in project browser 3407 else: # embedded in project browser
3523 if self.layout == "Toolboxes": 3408 if self.layout == "Toolboxes":
3524 self.vToolboxDock.show() 3409 self.lToolboxDock.show()
3525 self.vToolbox.setCurrentWidget(self.projectBrowser) 3410 self.lToolbox.setCurrentWidget(self.projectBrowser)
3526 elif self.layout == "Sidebars": 3411 elif self.layout == "Sidebars":
3527 self.leftSidebar.show() 3412 self.leftSidebar.show()
3528 self.leftSidebar.setCurrentWidget(self.projectBrowser) 3413 self.leftSidebar.setCurrentWidget(self.projectBrowser)
3529 else: 3414 else:
3530 self.projectBrowser.show() 3415 self.projectBrowser.show()
3531 self.projectBrowser.setCurrentWidget(self.browser) 3416 self.projectBrowser.setCurrentWidget(self.browser)
3532 self.browser.setFocus(Qt.ActiveWindowFocusReason) 3417 self.browser.setFocus(Qt.ActiveWindowFocusReason)
3533 3418
3534 def __toggleVerticalToolbox(self): 3419 def __toggleLeftToolbox(self):
3535 """ 3420 """
3536 Private slot to handle the toggle of the Vertical Toolbox window. 3421 Private slot to handle the toggle of the Left Toolbox window.
3537 """ 3422 """
3538 hasFocus = self.vToolbox.currentWidget().hasFocus() 3423 hasFocus = self.lToolbox.currentWidget().hasFocus()
3539 shown = self.__toggleWindow(self.vToolboxDock) 3424 shown = self.__toggleWindow(self.lToolboxDock)
3540 if shown: 3425 if shown:
3541 self.vToolbox.currentWidget().setFocus(Qt.ActiveWindowFocusReason) 3426 self.lToolbox.currentWidget().setFocus(Qt.ActiveWindowFocusReason)
3427 else:
3428 if hasFocus:
3429 self.__activateViewmanager()
3430
3431 def __toggleRightToolbox(self):
3432 """
3433 Private slot to handle the toggle of the Right Toolbox window.
3434 """
3435 hasFocus = self.rToolbox.currentWidget().hasFocus()
3436 shown = self.__toggleWindow(self.rToolboxDock)
3437 if shown:
3438 self.rToolbox.currentWidget().setFocus(Qt.ActiveWindowFocusReason)
3542 else: 3439 else:
3543 if hasFocus: 3440 if hasFocus:
3544 self.__activateViewmanager() 3441 self.__activateViewmanager()
3545 3442
3546 def __toggleHorizontalToolbox(self): 3443 def __toggleHorizontalToolbox(self):
3565 self.leftSidebar.currentWidget().setFocus(Qt.ActiveWindowFocusReason) 3462 self.leftSidebar.currentWidget().setFocus(Qt.ActiveWindowFocusReason)
3566 else: 3463 else:
3567 if hasFocus: 3464 if hasFocus:
3568 self.__activateViewmanager() 3465 self.__activateViewmanager()
3569 3466
3467 def __toggleRightSidebar(self):
3468 """
3469 Private slot to handle the toggle of the right sidebar window.
3470 """
3471 hasFocus = self.rightSidebar.currentWidget().hasFocus()
3472 shown = self.__toggleWindow(self.rightSidebar)
3473 if shown:
3474 self.rightSidebar.currentWidget().setFocus(Qt.ActiveWindowFocusReason)
3475 else:
3476 if hasFocus:
3477 self.__activateViewmanager()
3478
3570 def __toggleBottomSidebar(self): 3479 def __toggleBottomSidebar(self):
3571 """ 3480 """
3572 Private slot to handle the toggle of the bottom sidebar window. 3481 Private slot to handle the toggle of the bottom sidebar window.
3573 """ 3482 """
3574 hasFocus = self.bottomSidebar.currentWidget().hasFocus() 3483 hasFocus = self.bottomSidebar.currentWidget().hasFocus()
3577 self.bottomSidebar.currentWidget().setFocus(Qt.ActiveWindowFocusReason) 3486 self.bottomSidebar.currentWidget().setFocus(Qt.ActiveWindowFocusReason)
3578 else: 3487 else:
3579 if hasFocus: 3488 if hasFocus:
3580 self.__activateViewmanager() 3489 self.__activateViewmanager()
3581 3490
3582 def __toggleCooperationViewer(self):
3583 """
3584 Private slot to handle the toggle of the cooperation window.
3585 """
3586 hasFocus = self.cooperation.hasFocus()
3587 if self.layout in ["Toolboxes", "Sidebars"]:
3588 shown = self.__toggleWindow(self.cooperationDock)
3589 else:
3590 shown = self.__toggleWindow(self.cooperation)
3591 if shown:
3592 self.activateCooperationViewer()
3593 else:
3594 if hasFocus:
3595 self.__activateViewmanager()
3596
3597 def activateCooperationViewer(self): 3491 def activateCooperationViewer(self):
3598 """ 3492 """
3599 Public slot to handle the activation of the cooperation window. 3493 Public slot to handle the activation of the cooperation window.
3600 """ 3494 """
3601 if self.layout in ["Toolboxes", "Sidebars"]: 3495 if self.layout == "Toolboxes":
3602 self.cooperationDock.show() 3496 self.rToolboxDock.show()
3603 self.cooperationDock.raise_() 3497 self.rToolbox.setCurrentWidget(self.cooperation)
3498 elif self.layout == "Sidebars":
3499 self.rightSidebar.show()
3500 self.rightSidebar.setCurrentWidget(self.cooperation)
3604 else: 3501 else:
3605 self.cooperation.show() 3502 self.cooperation.show()
3606 self.cooperation.setFocus(Qt.ActiveWindowFocusReason) 3503 self.cooperation.setFocus(Qt.ActiveWindowFocusReason)
3607 3504
3608 def __toggleSymbolsViewer(self):
3609 """
3610 Private slot to handle the toggle of the Symbols Viewer window.
3611 """
3612 hasFocus = self.symbolsViewer.hasFocus()
3613 shown = self.__toggleWindow(self.symbolsViewer)
3614 if shown:
3615 self.__activateSymbolsViewer()
3616 else:
3617 if hasFocus:
3618 self.__activateViewmanager()
3619
3620 def __activateSymbolsViewer(self): 3505 def __activateSymbolsViewer(self):
3621 """ 3506 """
3622 Private slot to handle the activation of the Symbols Viewer. 3507 Private slot to handle the activation of the Symbols Viewer.
3623 """ 3508 """
3624 if self.layout == "Toolboxes": 3509 if self.layout == "Toolboxes":
3625 self.vToolboxDock.show() 3510 self.lToolboxDock.show()
3626 self.vToolbox.setCurrentWidget(self.symbolsViewer) 3511 self.lToolbox.setCurrentWidget(self.symbolsViewer)
3627 elif self.layout == "Sidebars": 3512 elif self.layout == "Sidebars":
3628 self.leftSidebar.show() 3513 self.leftSidebar.show()
3629 self.leftSidebar.setCurrentWidget(self.symbolsViewer) 3514 self.leftSidebar.setCurrentWidget(self.symbolsViewer)
3630 else: 3515 else:
3631 self.symbolsViewer.show() 3516 self.symbolsViewer.show()
3632 self.symbolsViewer.setFocus(Qt.ActiveWindowFocusReason) 3517 self.symbolsViewer.setFocus(Qt.ActiveWindowFocusReason)
3633 3518
3634 def __toggleNumbersViewer(self):
3635 """
3636 Private slot to handle the toggle of the Numbers Viewer window.
3637 """
3638 hasFocus = self.numbersViewer.hasFocus()
3639 shown = self.__toggleWindow(self.numbersViewer)
3640 if shown:
3641 self.__activateNumbersViewer()
3642 else:
3643 if hasFocus:
3644 self.__activateViewmanager()
3645
3646 def __activateNumbersViewer(self): 3519 def __activateNumbersViewer(self):
3647 """ 3520 """
3648 Private slot to handle the activation of the Numbers Viewer. 3521 Private slot to handle the activation of the Numbers Viewer.
3649 """ 3522 """
3650 if self.layout == "Toolboxes": 3523 if self.layout == "Toolboxes":
3651 self.vToolboxDock.show() 3524 self.lToolboxDock.show()
3652 self.vToolbox.setCurrentWidget(self.numbersViewer) 3525 self.lToolbox.setCurrentWidget(self.numbersViewer)
3653 elif self.layout == "Sidebars": 3526 elif self.layout == "Sidebars":
3654 self.bottomSidebar.show() 3527 self.bottomSidebar.show()
3655 self.bottomSidebar.setCurrentWidget(self.numbersViewer) 3528 self.bottomSidebar.setCurrentWidget(self.numbersViewer)
3656 else: 3529 else:
3657 self.numbersViewer.show() 3530 self.numbersViewer.show()
5264 self.pluginManager.doShutdown() 5137 self.pluginManager.doShutdown()
5265 5138
5266 if self.layout == "Sidebars": 5139 if self.layout == "Sidebars":
5267 self.leftSidebar.shutdown() 5140 self.leftSidebar.shutdown()
5268 self.bottomSidebar.shutdown() 5141 self.bottomSidebar.shutdown()
5142 self.rightSidebar.shutdown()
5269 5143
5270 if self.SAServer is not None: 5144 if self.SAServer is not None:
5271 self.SAServer.shutdown() 5145 self.SAServer.shutdown()
5272 self.SAServer = None 5146 self.SAServer = None
5273 5147

eric ide

mercurial