def __init__(self, app): super().__init__(app) self.recent_files_manager = widgets.RecentFilesManager( 'OpenCobolIDE', 'OpenCobolIDE4') self.menu_recents = widgets.MenuRecentFiles( self.ui.menuFile, title='Recents', recent_files_manager=self.recent_files_manager, icon_provider=FileIconProvider()) self.menu_recents.open_requested.connect(self.open_file) self.menu_recents.clear_requested.connect( self.recent_files_manager.clear) self.ui.menuFile.clear() self.ui.menuFile.addAction(self.ui.actionNew) self.ui.menuFile.addAction(self.ui.actionOpen) self.ui.menuFile.addSeparator() self.ui.menuFile.addMenu(self.menu_recents) self.ui.menuFile.addSeparator() self.ui.menuFile.addAction(self.ui.actionSave) self.ui.menuFile.addAction(self.ui.actionSaveAs) self.ui.menuFile.addSeparator() self.ui.menuFile.addAction(self.ui.actionQuit) self.menu_recents.update_actions() self.recent_files_manager.updated.connect( self.menu_recents.update_actions) self.ui.actionOpen.triggered.connect(self.request_open) self.ui.actionNew.triggered.connect(self.request_new) self.ui.actionSave.triggered.connect(self.save_current) self.ui.actionSaveAs.triggered.connect(self.save_as) self.ui.actionQuit.triggered.connect(self.quit) self.ui.tabWidgetEditors.register_code_edit(CobolCodeEdit) self.ui.tabWidgetEditors.icon_provider_klass = FileIconProvider self.ui.tvFileSystem.set_icon_provider(FileIconProvider()) self._warning_unc = False
def setup_recent_files_menu(self): """ Setup the recent files menu and manager """ self.recent_files_manager = widgets.RecentFilesManager( 'pyQode', 'pynotepad') self.menu_recents = widgets.MenuRecentFiles( self.menuFile, title='Recents', recent_files_manager=self.recent_files_manager) self.menu_recents.open_requested.connect(self.open_file) self.menuFile.insertMenu(self.actionSave, self.menu_recents) self.menuFile.insertSeparator(self.actionSave)
def __init__(self, app): super().__init__(app) self.recent_files_manager = widgets.RecentFilesManager( 'OpenCobolIDE', 'OpenCobolIDE4') self.menu_recents = widgets.MenuRecentFiles( self.ui.menuFile, title='Recents', recent_files_manager=self.recent_files_manager, icon_provider=FileIconProvider()) self.menu_recents.setIcon( QtGui.QIcon.fromTheme('document-open-recent')) self.menu_recents.clear_icon = QtGui.QIcon.fromTheme( 'edit-clear', QtGui.QIcon(':/ide-icons/rc/edit-clear.png')) self.menu_recents.open_requested.connect(self.open_file) self.menu_recents.clear_requested.connect( self.recent_files_manager.clear) self.ui.menuFile.clear() self.ui.menuFile.addAction(self.ui.actionNew) self.ui.menuFile.addAction(self.ui.actionOpen) self.ui.menuFile.addSeparator() self.ui.menuFile.addMenu(self.menu_recents) self.ui.menuFile.addSeparator() self.ui.menuFile.addAction(self.ui.actionImport_preferences) self.ui.menuFile.addAction(self.ui.actionExport_preferences) self.ui.menuFile.addSeparator() self.ui.menuFile.addAction(self.ui.actionSave) self.ui.menuFile.addAction(self.ui.actionSaveAs) self.ui.menuFile.addSeparator() self.ui.menuFile.addAction(self.ui.actionQuit) self.menu_recents.update_actions() self.recent_files_manager.updated.connect( self.menu_recents.update_actions) self.ui.actionOpen.triggered.connect(self.request_open) self.ui.actionNew.triggered.connect(self.request_new) self.ui.actionSave.triggered.connect(self.save_current) self.ui.actionImport_preferences.triggered.connect( self.import_preferences) self.ui.actionExport_preferences.triggered.connect( self.export_preferences) self.ui.actionSaveAs.triggered.connect(self.save_as) self.ui.actionQuit.triggered.connect(self.quit) self.ui.tabWidgetEditors.register_code_edit(CobolCodeEdit) self.ui.tabWidgetEditors.icon_provider_klass = FileIconProvider self.ui.tvFileSystem.set_icon_provider(FileIconProvider()) self._warning_unc = False
def __init__(self, parent=None): super(MainMenuBar, self).__init__(parent) self.mainWindow = parent # parent should be a MainWindow self.docks = [] # sub-menus self.openRecMenu = \ widgets.MenuRecentFiles(self, self.mainWindow.recent_files_manager) # must load icons here Icons.load() # Actions -- # file actions self.newAct = QtWidgets.QAction(Icons.new, "&New", self) self.newAct.setShortcut('Ctrl+N') self.openAct = QtWidgets.QAction(Icons.openFile, "&Open", self) self.openAct.setShortcut('Ctrl+O') self.openRecAct = QtWidgets.QAction("Open &Recent", self) self.openRecAct.setMenu(self.openRecMenu) self.saveAct = QtWidgets.QAction(Icons.save, "&Save", self) self.saveAct.setShortcut('Ctrl+S') self.saveAsAct = QtWidgets.QAction(Icons.saveAs, "Save &As...", self) self.saveAsAct.setShortcut('Ctrl+Shift+S') self.saveAllAct = QtWidgets.QAction(Icons.saveAll, "Save A&ll", self) self.saveAllAct.setShortcut('Ctrl+Shift+A') self.closeAllAct = QtWidgets.QAction("Close All", self) self.exitAct = QtWidgets.QAction("E&xit", self) self.exitAct.setShortcut('Alt+F4') # tool actions self.interpAct = QtWidgets.QAction("&Interpreter Config...", self) self.runConfigAct = QtWidgets.QAction(Icons.runConfig, "Run &Config...", self) self.runAct = QtWidgets.QAction(Icons.run, "&Run", self) self.runAct.setShortcut('F5') # Top-level menus self.fileMenu = QtWidgets.QMenu("&File", self) self.fileMenu.addAction(self.newAct) self.fileMenu.addAction(self.openAct) self.fileMenu.addAction(self.openRecAct) self.fileMenu.addAction(self.closeAllAct) self.fileMenu.addSeparator() self.fileMenu.addAction(self.saveAct) self.fileMenu.addAction(self.saveAsAct) self.fileMenu.addAction(self.saveAllAct) self.fileMenu.addSeparator() self.fileMenu.addAction(self.exitAct) self.addAction(self.fileMenu.menuAction()) # add to menubar self.editMenu = \ QtWidgets.QMenu("&Edit", self) # edit menu updated dynamically # self.editMenu.addActions(self.mainWindow.editor.actions()) self.addAction(self.editMenu.menuAction()) self.toolsMenu = QtWidgets.QMenu("&Tools", self) self.toolsMenu.addAction(self.interpAct) self.toolsMenu.addAction(self.runConfigAct) self.toolsMenu.addAction(self.runAct) self.toolsMenu.addSeparator() self.addAction(self.toolsMenu.menuAction()) self.viewMenu = QtWidgets.QMenu("&View", self) self.addAction(self.viewMenu.menuAction()) self.helpMenu = QtWidgets.QMenu("&Help", self) self.addAction(self.helpMenu.menuAction())