Thu, 27 Aug 2015 17:50:18 +0200
Adaptation for the new plug-in tools menu handling.
--- a/ChangeLog Fri Feb 27 18:30:45 2015 +0100 +++ b/ChangeLog Thu Aug 27 17:50:18 2015 +0200 @@ -1,5 +1,8 @@ ChangeLog --------- +Version 2.1.0: +- adaptation for the new plug-in tools menu handling + Version 2.0.2: - added Russian translations provided by Alexander Barkoff
--- a/PluginToolGenerateHash.py Fri Feb 27 18:30:45 2015 +0100 +++ b/PluginToolGenerateHash.py Thu Aug 27 17:50:18 2015 +0200 @@ -23,7 +23,7 @@ author = "Detlev Offenbach <detlev@die-offenbachs.de>" autoactivate = True deactivateable = True -version = "2.0.2" +version = "2.1.0" className = "ToolGenerateHashPlugin" packageName = "ToolGenerateHash" shortDescription = "Generate a hash for a selectable file or directory" @@ -67,6 +67,7 @@ self.__initMenus() self.__editors = {} + self.__mainActions = [] def activate(self): """ @@ -79,6 +80,16 @@ self.__ui.showMenu.connect(self.__populateMenu) + menu = self.__ui.getMenu("plugin_tools") + if menu is not None: + if not menu.isEmpty(): + act = menu.addSeparator() + self.__mainActions.append(act) + act = menu.addMenu(self.__fileMenu) + self.__mainActions.append(act) + act = menu.addMenu(self.__dirMenu) + self.__mainActions.append(act) + e5App().getObject("ViewManager").editorOpenedEd.connect( self.__editorOpened) e5App().getObject("ViewManager").editorClosedEd.connect( @@ -95,6 +106,12 @@ """ self.__ui.showMenu.disconnect(self.__populateMenu) + menu = self.__ui.getMenu("plugin_tools") + if menu is not None: + for act in self.__mainActions: + menu.removeAction(act) + self.__mainActions = [] + e5App().getObject("ViewManager").editorOpenedEd.disconnect( self.__editorOpened) e5App().getObject("ViewManager").editorClosedEd.disconnect( @@ -163,18 +180,22 @@ @param name name of the menu (string) @param menu reference to the menu to be populated (QMenu) """ - if name != "Tools": + if name not in ["Tools", "PluginTools"]: return editor = e5App().getObject("ViewManager").activeWindow() - if not menu.isEmpty(): - menu.addSeparator() - - act = menu.addMenu(self.__fileMenu) - act.setEnabled(editor is not None) - act = menu.addMenu(self.__dirMenu) - act.setEnabled(editor is not None) + if name == "Tools": + if not menu.isEmpty(): + menu.addSeparator() + + act = menu.addMenu(self.__fileMenu) + act.setEnabled(editor is not None) + act = menu.addMenu(self.__dirMenu) + act.setEnabled(editor is not None) + elif name == "PluginTools" and self.__mainActions: + self.__mainActions[-2].setEnabled(editor is not None) + self.__mainActions[-1].setEnabled(editor is not None) def __editorOpened(self, editor): """