58
60
self._pluginManagerDlg = None
62
def _setupMenus(self):
64
Because of OS X we have to setup the menubar with no parent so we do
65
it manually here instead of through designer.
67
self.menubar = QtGui.QMenuBar()
68
self.menubar.setObjectName("menubar")
69
self.menu_Help = QtGui.QMenu(self.menubar)
70
self.menu_Help.setObjectName("menu_Help")
71
self.menu_File = QtGui.QMenu(self.menubar)
72
self.menu_File.setObjectName("menu_File")
73
self.menu_Edit = QtGui.QMenu(self.menubar)
74
self.menu_Edit.setObjectName("menu_Edit")
75
self.menu_Project = QtGui.QMenu(self.menubar)
76
self.menu_Project.setObjectName("menu_Project")
77
self.menu_Tools = QtGui.QMenu(self.menubar)
78
self.menu_Tools.setObjectName("menu_Tools")
79
self.action_About = QtGui.QAction(self)
80
self.action_About.setObjectName("action_About")
81
self.action_Quit = QtGui.QAction(self)
82
self.action_Quit.setObjectName("action_Quit")
83
self.actionPluginManager = QtGui.QAction(self)
84
self.actionPluginManager.setObjectName("actionPluginManager")
85
self.actionPMR = QtGui.QAction(self)
86
self.actionPMR.setObjectName("actionPMR")
87
self.actionAnnotation = QtGui.QAction(self)
88
self.actionAnnotation.setObjectName("actionAnnotation")
89
self.actionPluginWizard = QtGui.QAction(self)
90
self.actionPluginWizard.setObjectName("actionPluginWizard")
91
self.menu_Help.addAction(self.action_About)
92
self.menu_File.addSeparator()
93
self.menu_File.addAction(self.action_Quit)
94
self.menu_Tools.addAction(self.actionPluginManager)
95
self.menu_Tools.addAction(self.actionPluginWizard)
96
self.menu_Tools.addAction(self.actionPMR)
97
self.menu_Tools.addAction(self.actionAnnotation)
98
self.menubar.addAction(self.menu_File.menuAction())
99
self.menubar.addAction(self.menu_Edit.menuAction())
100
self.menubar.addAction(self.menu_Project.menuAction())
101
self.menubar.addAction(self.menu_Tools.menuAction())
102
self.menubar.addAction(self.menu_Help.menuAction())
104
self._retranslateUi()
106
def _retranslateUi(self):
107
self.menu_Help.setTitle(QtGui.QApplication.translate("MainWindow", "&Help", None, QtGui.QApplication.UnicodeUTF8))
108
self.menu_File.setTitle(QtGui.QApplication.translate("MainWindow", "&File", None, QtGui.QApplication.UnicodeUTF8))
109
self.menu_Edit.setTitle(QtGui.QApplication.translate("MainWindow", "&Edit", None, QtGui.QApplication.UnicodeUTF8))
110
self.menu_Project.setTitle(QtGui.QApplication.translate("MainWindow", "&Project", None, QtGui.QApplication.UnicodeUTF8))
111
self.menu_Tools.setTitle(QtGui.QApplication.translate("MainWindow", "&Tools", None, QtGui.QApplication.UnicodeUTF8))
112
self.action_About.setText(QtGui.QApplication.translate("MainWindow", "&About", None, QtGui.QApplication.UnicodeUTF8))
113
self.action_Quit.setText(QtGui.QApplication.translate("MainWindow", "&Quit", None, QtGui.QApplication.UnicodeUTF8))
114
self.action_Quit.setStatusTip(QtGui.QApplication.translate("MainWindow", "Quit the application", None, QtGui.QApplication.UnicodeUTF8))
115
self.action_Quit.setShortcut(QtGui.QApplication.translate("MainWindow", "Ctrl+Q", None, QtGui.QApplication.UnicodeUTF8))
116
self.actionPluginManager.setText(QtGui.QApplication.translate("MainWindow", "Plugin &Manager", None, QtGui.QApplication.UnicodeUTF8))
117
self.actionPMR.setText(QtGui.QApplication.translate("MainWindow", "&PMR", None, QtGui.QApplication.UnicodeUTF8))
118
self.actionAnnotation.setText(QtGui.QApplication.translate("MainWindow", "&Annotation", None, QtGui.QApplication.UnicodeUTF8))
119
self.actionPluginWizard.setText(QtGui.QApplication.translate("MainWindow", "Plugin Wi&zard", None, QtGui.QApplication.UnicodeUTF8))
60
121
def _createUndoAction(self, parent):
61
122
self.undoAction = QtGui.QAction('Undo', parent)
62
123
self.undoAction.setShortcut(QtGui.QKeySequence('Ctrl+Z'))
85
146
return self._model
87
148
def _makeConnections(self):
88
self._ui.action_Quit.triggered.connect(self.quitApplication)
89
self._ui.action_About.triggered.connect(self.about)
90
self._ui.actionPluginManager.triggered.connect(self.pluginManager)
91
self._ui.actionPluginWizard.triggered.connect(self.pluginWizard)
92
self._ui.actionPMR.triggered.connect(self.pmr)
93
self._ui.actionAnnotation.triggered.connect(self.annotationTool)
149
self.action_Quit.triggered.connect(self.quitApplication)
150
self.action_About.triggered.connect(self.about)
151
self.actionPluginManager.triggered.connect(self.pluginManager)
152
self.actionPluginWizard.triggered.connect(self.pluginWizard)
153
self.actionPMR.triggered.connect(self.pmr)
154
self.actionAnnotation.triggered.connect(self.annotationTool)
95
156
def setCurrentUndoRedoStack(self, stack):
96
157
current_stack = self._model.undoManager().currentStack()
141
203
QtGui.qApp.quit()
144
from widgets.aboutdialog import AboutDialog
206
from mapclient.widgets.aboutdialog import AboutDialog
145
207
dlg = AboutDialog(self)
146
208
dlg.setModal(True)
149
211
def pluginManager(self):
150
from tools.pluginmanagerdialog import PluginManagerDialog
212
from mapclient.tools.pluginmanagerdialog import PluginManagerDialog
213
pm = self._model.pluginManager()
151
214
dlg = PluginManagerDialog(self)
152
215
self._pluginManagerDlg = dlg
153
dlg.setDirectories(self._model.pluginManager().directories())
154
dlg.setLoadDefaultPlugins(self._model.pluginManager().loadDefaultPlugins())
216
dlg.setDirectories(pm.directories())
217
dlg.setLoadDefaultPlugins(pm.loadDefaultPlugins())
155
218
dlg.reloadPlugins = self._pluginManagerReloadPlugins
157
220
dlg.setModal(True)
159
self._model.pluginManager().setDirectories(dlg.directories())
160
self._model.pluginManager().setLoadDefaultPlugins(dlg.loadDefaultPlugins())
161
if self._model.pluginManager().pluginsModified():
162
self._model.pluginManager().load()
222
directories_modified = pm.setDirectories(dlg.directories())
223
defaults_modified = pm.setLoadDefaultPlugins(dlg.loadDefaultPlugins())
224
if directories_modified or defaults_modified:
163
226
self._workflowWidget.updateStepTree()
165
228
self._pluginManagerDlg = None
169
232
Callback from the plugin manager to reload the current plugins.
171
self._model.pluginManager().setDirectories(self._pluginManagerDlg.directories())
172
self._model.pluginManager().setLoadDefaultPlugins(self._pluginManagerDlg.loadDefaultPlugins())
173
self._model.pluginManager().load()
234
pm = self._model.pluginManager()
235
pm.setDirectories(self._pluginManagerDlg.directories())
236
pm.setLoadDefaultPlugins(self._pluginManagerDlg.loadDefaultPlugins())
174
238
self._workflowWidget.updateStepTree()
176
240
def pluginWizard(self):
177
from tools.pluginwizard.wizarddialog import WizardDialog
178
from tools.pluginwizard.skeleton import Skeleton
241
from mapclient.tools.pluginwizard.wizarddialog import WizardDialog
242
from mapclient.tools.pluginwizard.skeleton import Skeleton
179
243
dlg = WizardDialog(self)
181
245
dlg.setModal(True)