diff -r 63e4c6545ac1 -r 1c5df42d94bf Project/ProjectFormsBrowser.py --- a/Project/ProjectFormsBrowser.py Sun Jun 16 15:37:09 2013 +0200 +++ b/Project/ProjectFormsBrowser.py Mon Jun 17 18:57:32 2013 +0200 @@ -148,6 +148,10 @@ self.hooks["compileAllForms"] is not None or \ self.hooks["generateDialogCode"] is not None: self.menu.addSeparator() + if self.hooks["open"] is not None: + self.menu.addAction( + self.hooksMenuEntries.get("open", self.trUtf8('Open')), + self.__openFile) self.menu.addAction(self.trUtf8('Open'), self.__openFileInEditor) self.menu.addSeparator() act = self.menu.addAction(self.trUtf8('Rename file'), self._renameFile) @@ -222,6 +226,10 @@ self.trUtf8('Compile forms')), self.__compileSelectedForms) self.multiMenu.addSeparator() + if self.hooks["open"] is not None: + self.multiMenu.addAction( + self.hooksMenuEntries.get("open", self.trUtf8('Open')), + self.__openFile) self.multiMenu.addAction(self.trUtf8('Open'), self.__openFileInEditor) self.multiMenu.addSeparator() act = self.multiMenu.addAction(self.trUtf8('Remove from project'), @@ -423,7 +431,11 @@ for itm in itmList[:]: try: if isinstance(itm, ProjectBrowserFileItem): - self.designerFile.emit(itm.fileName()) + # hook support + if self.hooks["open"] is not None: + self.hooks["open"](itm.fileName()) + else: + self.designerFile.emit(itm.fileName()) except: pass @@ -920,6 +932,7 @@ <li>compileChangedForms: takes list of filenames as parameter</li> <li>generateDialogCode: takes filename as parameter</li> <li>newForm: takes full directory path of new file as parameter</li> + <li>open: takes a filename as parameter</li> </ul> <b>Note</b>: Filenames are relative to the project directory, if not @@ -932,4 +945,5 @@ "compileSelectedForms": None, "generateDialogCode": None, "newForm": None, + "open": None, }