128 """ |
128 """ |
129 self.buffer += str(s) |
129 self.buffer += str(s) |
130 self.__nWrite(self.__bufferedWrite()) |
130 self.__nWrite(self.__bufferedWrite()) |
131 |
131 |
132 |
132 |
|
133 # TODO: add support for QSessionManager to save changed files |
133 class UserInterface(E5MainWindow): |
134 class UserInterface(E5MainWindow): |
134 """ |
135 """ |
135 Class implementing the main user interface. |
136 Class implementing the main user interface. |
136 |
137 |
137 @signal appendStderr(str) emitted to write data to stderr logger |
138 @signal appendStderr(str) emitted to write data to stderr logger |
401 self.projectBrowser.poBrowser.closeSourceWindow.connect( |
402 self.projectBrowser.poBrowser.closeSourceWindow.connect( |
402 self.viewmanager.closeWindow) |
403 self.viewmanager.closeWindow) |
403 self.projectBrowser.poBrowser.pixmapEditFile.connect(self.__editPixmap) |
404 self.projectBrowser.poBrowser.pixmapEditFile.connect(self.__editPixmap) |
404 self.projectBrowser.poBrowser.pixmapFile.connect(self.__showPixmap) |
405 self.projectBrowser.poBrowser.pixmapFile.connect(self.__showPixmap) |
405 self.projectBrowser.poBrowser.svgFile.connect(self.__showSvg) |
406 self.projectBrowser.poBrowser.svgFile.connect(self.__showSvg) |
|
407 self.projectBrowser.poBrowser.umlFile.connect(self.__showUml) |
406 self.projectBrowser.poBrowser.binaryFile.connect(self.__openHexEditor) |
408 self.projectBrowser.poBrowser.binaryFile.connect(self.__openHexEditor) |
407 |
409 |
408 self.project.sourceFile.connect(self.viewmanager.openSourceFile) |
410 self.project.sourceFile.connect(self.viewmanager.openSourceFile) |
409 self.project.designerFile.connect(self.__designer) |
411 self.project.designerFile.connect(self.__designer) |
410 self.project.linguistFile.connect(self.__linguist) |
412 self.project.linguistFile.connect(self.__linguist) |
502 self.browser.multiProjectFile.connect( |
504 self.browser.multiProjectFile.connect( |
503 self.multiProject.openMultiProject) |
505 self.multiProject.openMultiProject) |
504 self.browser.pixmapEditFile.connect(self.__editPixmap) |
506 self.browser.pixmapEditFile.connect(self.__editPixmap) |
505 self.browser.pixmapFile.connect(self.__showPixmap) |
507 self.browser.pixmapFile.connect(self.__showPixmap) |
506 self.browser.svgFile.connect(self.__showSvg) |
508 self.browser.svgFile.connect(self.__showSvg) |
|
509 self.browser.umlFile.connect(self.__showUml) |
507 self.browser.binaryFile.connect(self.__openHexEditor) |
510 self.browser.binaryFile.connect(self.__openHexEditor) |
508 self.browser.unittestOpen.connect(self.__unittestScript) |
511 self.browser.unittestOpen.connect(self.__unittestScript) |
509 self.browser.trpreview.connect(self.__TRPreviewer) |
512 self.browser.trpreview.connect(self.__TRPreviewer) |
510 |
513 |
511 self.debuggerUI.debuggingStarted.connect( |
514 self.debuggerUI.debuggingStarted.connect( |
5429 """ |
5432 """ |
5430 from Graphics.SvgDiagram import SvgDiagram |
5433 from Graphics.SvgDiagram import SvgDiagram |
5431 dlg = SvgDiagram(fn, self) |
5434 dlg = SvgDiagram(fn, self) |
5432 dlg.show() |
5435 dlg.show() |
5433 |
5436 |
|
5437 @pyqtSlot(str) |
|
5438 def __showUml(self, fn): |
|
5439 """ |
|
5440 Private slot to show an eric graphics file in a dialog. |
|
5441 |
|
5442 @param fn name of the file to be shown |
|
5443 @type str |
|
5444 """ |
|
5445 from Graphics.UMLDialog import UMLDialog, UMLDialogType |
|
5446 dlg = UMLDialog(UMLDialogType.NO_DIAGRAM, self.project, parent=self) |
|
5447 if dlg.load(fn): |
|
5448 dlg.show(fromFile=True) |
|
5449 |
5434 def __snapshot(self): |
5450 def __snapshot(self): |
5435 """ |
5451 """ |
5436 Private slot to start the snapshot tool. |
5452 Private slot to start the snapshot tool. |
5437 """ |
5453 """ |
5438 proc = QProcess() |
5454 proc = QProcess() |
6799 |
6815 |
6800 @param pluginFileNames list of plugin files suggested for |
6816 @param pluginFileNames list of plugin files suggested for |
6801 installation list of strings |
6817 installation list of strings |
6802 """ |
6818 """ |
6803 from PluginManager.PluginInstallDialog import PluginInstallDialog |
6819 from PluginManager.PluginInstallDialog import PluginInstallDialog |
6804 dlg = PluginInstallDialog( |
6820 self.__pluginInstallDialog = PluginInstallDialog( |
6805 self.pluginManager, |
6821 self.pluginManager, |
6806 [] if pluginFileNames is None else pluginFileNames[:], |
6822 [] if pluginFileNames is None else pluginFileNames[:], |
6807 self) |
6823 self) |
6808 dlg.exec() |
6824 self.__pluginInstallDialog.setModal(False) |
6809 if dlg.restartNeeded(): |
6825 self.__pluginInstallDialog.finished.connect( |
|
6826 self.__pluginInstallFinished) |
|
6827 self.__pluginInstallDialog.show() |
|
6828 |
|
6829 @pyqtSlot() |
|
6830 def __pluginInstallFinished(self): |
|
6831 """ |
|
6832 Private slot to handle the finishing of the plugin install dialog. |
|
6833 """ |
|
6834 if self.__pluginInstallDialog.restartNeeded(): |
|
6835 self.__pluginInstallDialog.deleteLater() |
|
6836 del self.__pluginInstallDialog |
6810 self.__restart(ask=True) |
6837 self.__restart(ask=True) |
6811 |
6838 |
6812 def __deinstallPlugin(self): |
6839 def __deinstallPlugin(self): |
6813 """ |
6840 """ |
6814 Private slot to show a dialog to uninstall a plugin. |
6841 Private slot to show a dialog to uninstall a plugin. |