class SextantePlugin: def __init__(self, iface): self.iface = iface QGisLayers.setInterface(iface) Sextante.initialize() Sextante.setInterface(iface) def initGui(self): self.toolbox = SextanteToolbox(self.iface) self.toolbox.setVisible(False) Sextante.addAlgListListener(self.toolbox) self.menu = QMenu(self.iface.mainWindow()) self.menu.setTitle(QCoreApplication.translate("SEXTANTE", "Analysis")) self.toolboxAction = QAction(QIcon(":/sextante/images/toolbox.png"), QCoreApplication.translate("SEXTANTE", "&SEXTANTE toolbox"), self.iface.mainWindow()) QObject.connect(self.toolboxAction, SIGNAL("triggered()"), self.openToolbox) self.menu.addAction(self.toolboxAction) self.modelerAction = QAction(QIcon(":/sextante/images/model.png"), QCoreApplication.translate("SEXTANTE", "&SEXTANTE modeler"), self.iface.mainWindow()) QObject.connect(self.modelerAction, SIGNAL("triggered()"), self.openModeler) self.menu.addAction(self.modelerAction) self.historyAction = QAction(QIcon(":/sextante/images/history.gif"), QCoreApplication.translate("SEXTANTE", "&SEXTANTE history and log"), self.iface.mainWindow()) QObject.connect(self.historyAction, SIGNAL("triggered()"), self.openHistory) self.menu.addAction(self.historyAction) self.configAction = QAction(QIcon(":/sextante/images/config.png"), QCoreApplication.translate("SEXTANTE", "&SEXTANTE options and configuration"), self.iface.mainWindow()) QObject.connect(self.configAction, SIGNAL("triggered()"), self.openConfig) self.menu.addAction(self.configAction) self.resultsAction = QAction(QIcon(":/sextante/images/results.png"), QCoreApplication.translate("SEXTANTE", "&SEXTANTE results viewer"), self.iface.mainWindow()) QObject.connect(self.resultsAction, SIGNAL("triggered()"), self.openResults) self.menu.addAction(self.resultsAction) self.helpAction = QAction(QIcon(":/sextante/images/help.png"), QCoreApplication.translate("SEXTANTE", "&SEXTANTE help"), self.iface.mainWindow()) QObject.connect(self.helpAction, SIGNAL("triggered()"), self.openHelp) self.menu.addAction(self.helpAction) self.aboutAction = QAction(QIcon(":/sextante/images/info.png"), QCoreApplication.translate("SEXTANTE", "&About SEXTANTE"), self.iface.mainWindow()) QObject.connect(self.aboutAction, SIGNAL("triggered()"), self.openAbout) self.menu.addAction(self.aboutAction) menuBar = self.iface.mainWindow().menuBar() menuBar.insertMenu(menuBar.actions()[-1], self.menu) def unload(self): self.toolbox.setVisible(False) self.menu.deleteLater() #delete temporary output files folder = SextanteUtils.tempFolder() for f in os.listdir(folder): path = os.path.join(folder,f) try: os.unlink(path) except: #leave files that could not be deleted pass def openToolbox(self): self.toolbox.setVisible(True) def openModeler(self): dlg = ModelerDialog() dlg.exec_() if dlg.update: self.toolbox.updateTree() def openResults(self): dlg = ResultsDialog() dlg.exec_() def openHistory(self): dlg = HistoryDialog() dlg.exec_() def openConfig(self): dlg = ConfigDialog(self.toolbox) dlg.exec_() def openAbout(self): dlg = AboutDialog() dlg.exec_() def openHelp(self): QDesktopServices.openUrl(QUrl(os.path.dirname(__file__) + "/help/index.html"))
class SextantePlugin: def __init__(self, iface): self.iface = iface QGisLayers.setInterface(iface) Sextante.initialize() Sextante.setInterface(iface) Sextante.setPlugin(self) def initGui(self): self.commander = None self.toolbox = SextanteToolbox(self.iface) self.iface.addDockWidget(Qt.RightDockWidgetArea, self.toolbox) self.toolbox.hide() Sextante.addAlgListListener(self.toolbox) self.menu = QMenu(self.iface.mainWindow()) self.menu.setTitle(QCoreApplication.translate("SEXTANTE", "Analysis")) self.toolboxAction = self.toolbox.toggleViewAction() self.toolboxAction.setIcon(QIcon(":/sextante/images/toolbox.png")) self.toolboxAction.setText(QCoreApplication.translate("SEXTANTE", "&SEXTANTE toolbox")) self.menu.addAction(self.toolboxAction) self.modelerAction = QAction(QIcon(":/sextante/images/model.png"), QCoreApplication.translate("SEXTANTE", "&SEXTANTE modeler"), self.iface.mainWindow()) self.modelerAction.triggered.connect(self.openModeler) self.menu.addAction(self.modelerAction) self.historyAction = QAction(QIcon(":/sextante/images/history.gif"), QCoreApplication.translate("SEXTANTE", "&SEXTANTE history and log"), self.iface.mainWindow()) self.historyAction.triggered.connect(self.openHistory) self.menu.addAction(self.historyAction) self.configAction = QAction(QIcon(":/sextante/images/config.png"), QCoreApplication.translate("SEXTANTE", "&SEXTANTE options and configuration"), self.iface.mainWindow()) self.configAction.triggered.connect(self.openConfig) self.menu.addAction(self.configAction) self.resultsAction = QAction(QIcon(":/sextante/images/results.png"), QCoreApplication.translate("SEXTANTE", "&SEXTANTE results viewer"), self.iface.mainWindow()) self.resultsAction.triggered.connect(self.openResults) self.menu.addAction(self.resultsAction) menuBar = self.iface.mainWindow().menuBar() menuBar.insertMenu(self.iface.firstRightStandardMenu().menuAction(), self.menu) self.commanderAction = QAction(QIcon(":/sextante/images/toolbox.png"), QCoreApplication.translate("SEXTANTE", "&SEXTANTE commander"), self.iface.mainWindow()) self.commanderAction.triggered.connect(self.openCommander) self.menu.addAction(self.commanderAction) self.iface.registerMainWindowAction(self.commanderAction, "Ctrl+Alt+M") def unload(self): self.toolbox.setVisible(False) self.menu.deleteLater() #delete temporary output files folder = SextanteUtils.tempFolder() if QDir(folder).exists(): shutil.rmtree(folder, True) self.iface.unregisterMainWindowAction(self.commanderAction) def openCommander(self): if self.commander is None: self.commander = CommanderWindow(self.iface.mainWindow(), self.iface.mapCanvas()) Sextante.addAlgListListener(self.commander) self.commander.prepareGui() self.commander.show() #dlg.exec_() def openToolbox(self): if self.toolbox.isVisible(): self.toolbox.hide() else: self.toolbox.show() def openModeler(self): dlg = ModelerDialog() dlg.exec_() if dlg.update: self.toolbox.updateTree() def openResults(self): dlg = ResultsDialog() dlg.exec_() def openHistory(self): dlg = HistoryDialog() dlg.exec_() def openConfig(self): dlg = ConfigDialog(self.toolbox) dlg.exec_()
class SextantePlugin: def __init__(self, iface): self.iface = iface QGisLayers.setInterface(iface) Sextante.initialize() Sextante.setInterface(iface) def initGui(self): self.toolbox = SextanteToolbox(self.iface) self.iface.addDockWidget(Qt.RightDockWidgetArea, self.toolbox) self.toolbox.hide() Sextante.addAlgListListener(self.toolbox) self.menu = QMenu(self.iface.mainWindow()) self.menu.setTitle(QCoreApplication.translate("SEXTANTE", "Analysis")) self.toolboxAction = self.toolbox.toggleViewAction() self.toolboxAction.setIcon(QIcon(":/sextante/images/toolbox.png")) self.toolboxAction.setText( QCoreApplication.translate("SEXTANTE", "&SEXTANTE toolbox")) self.menu.addAction(self.toolboxAction) self.modelerAction = QAction( QIcon(":/sextante/images/model.png"), QCoreApplication.translate("SEXTANTE", "&SEXTANTE modeler"), self.iface.mainWindow()) self.modelerAction.triggered.connect(self.openModeler) self.menu.addAction(self.modelerAction) self.historyAction = QAction( QIcon(":/sextante/images/history.gif"), QCoreApplication.translate("SEXTANTE", "&SEXTANTE history and log"), self.iface.mainWindow()) self.historyAction.triggered.connect(self.openHistory) self.menu.addAction(self.historyAction) self.configAction = QAction( QIcon(":/sextante/images/config.png"), QCoreApplication.translate("SEXTANTE", "&SEXTANTE options and configuration"), self.iface.mainWindow()) self.configAction.triggered.connect(self.openConfig) self.menu.addAction(self.configAction) self.resultsAction = QAction( QIcon(":/sextante/images/results.png"), QCoreApplication.translate("SEXTANTE", "&SEXTANTE results viewer"), self.iface.mainWindow()) self.resultsAction.triggered.connect(self.openResults) self.menu.addAction(self.resultsAction) menuBar = self.iface.mainWindow().menuBar() menuBar.insertMenu(menuBar.actions()[-1], self.menu) def unload(self): self.toolbox.setVisible(False) self.menu.deleteLater() #delete temporary output files folder = SextanteUtils.tempFolder() if QDir(folder).exists(): shutil.rmtree(folder, True) def openToolbox(self): if self.toolbox.isVisible(): self.toolbox.hide() else: self.toolbox.show() def openModeler(self): dlg = ModelerDialog() dlg.exec_() if dlg.update: self.toolbox.updateTree() def openResults(self): dlg = ResultsDialog() dlg.exec_() def openHistory(self): dlg = HistoryDialog() dlg.exec_() def openConfig(self): dlg = ConfigDialog(self.toolbox) dlg.exec_()
class SextantePlugin: def __init__(self, iface): self.iface = iface QGisLayers.setInterface(iface) Sextante.initialize() Sextante.setInterface(iface) def initGui(self): self.toolbox = SextanteToolbox(self.iface) self.iface.addDockWidget(Qt.RightDockWidgetArea, self.toolbox) self.toolbox.hide() Sextante.addAlgListListener(self.toolbox) self.menu = QMenu(self.iface.mainWindow()) self.menu.setTitle(QCoreApplication.translate("SEXTANTE", "Analysis")) self.toolboxAction = self.toolbox.toggleViewAction() self.toolboxAction.setIcon(QIcon(":/sextante/images/toolbox.png")) self.toolboxAction.setText(QCoreApplication.translate("SEXTANTE", "&SEXTANTE toolbox")) self.menu.addAction(self.toolboxAction) self.modelerAction = QAction( QIcon(":/sextante/images/model.png"), QCoreApplication.translate("SEXTANTE", "&SEXTANTE modeler"), self.iface.mainWindow(), ) self.modelerAction.triggered.connect(self.openModeler) self.menu.addAction(self.modelerAction) self.historyAction = QAction( QIcon(":/sextante/images/history.gif"), QCoreApplication.translate("SEXTANTE", "&SEXTANTE history and log"), self.iface.mainWindow(), ) self.historyAction.triggered.connect(self.openHistory) self.menu.addAction(self.historyAction) self.configAction = QAction( QIcon(":/sextante/images/config.png"), QCoreApplication.translate("SEXTANTE", "&SEXTANTE options and configuration"), self.iface.mainWindow(), ) self.configAction.triggered.connect(self.openConfig) self.menu.addAction(self.configAction) self.resultsAction = QAction( QIcon(":/sextante/images/results.png"), QCoreApplication.translate("SEXTANTE", "&SEXTANTE results viewer"), self.iface.mainWindow(), ) self.resultsAction.triggered.connect(self.openResults) self.menu.addAction(self.resultsAction) menuBar = self.iface.mainWindow().menuBar() menuBar.insertMenu(menuBar.actions()[-1], self.menu) def unload(self): self.toolbox.setVisible(False) self.menu.deleteLater() # delete temporary output files folder = SextanteUtils.tempFolder() if QDir(folder).exists(): for f in os.listdir(folder): path = os.path.join(folder, f) try: os.unlink(path) except: # leave files that could not be deleted pass def openToolbox(self): if self.toolbox.isVisible(): self.toolbox.hide() else: self.toolbox.show() def openModeler(self): dlg = ModelerDialog() dlg.exec_() if dlg.update: self.toolbox.updateTree() def openResults(self): dlg = ResultsDialog() dlg.exec_() def openHistory(self): dlg = HistoryDialog() dlg.exec_() def openConfig(self): dlg = ConfigDialog(self.toolbox) dlg.exec_()
class SextantePlugin: def __init__(self, iface): self.iface = iface QGisLayers.setInterface(iface) Sextante.initialize() Sextante.setInterface(iface) def initGui(self): self.toolbox = SextanteToolbox(self.iface) self.toolbox.setVisible(False) Sextante.addAlgListListener(self.toolbox) self.menu = QMenu(self.iface.mainWindow()) self.menu.setTitle(QCoreApplication.translate("SEXTANTE", "Analysis")) self.toolboxAction = QAction( QIcon(":/sextante/images/toolbox.png"), QCoreApplication.translate("SEXTANTE", "&SEXTANTE toolbox"), self.iface.mainWindow()) QObject.connect(self.toolboxAction, SIGNAL("triggered()"), self.openToolbox) self.menu.addAction(self.toolboxAction) self.modelerAction = QAction( QIcon(":/sextante/images/model.png"), QCoreApplication.translate("SEXTANTE", "&SEXTANTE modeler"), self.iface.mainWindow()) QObject.connect(self.modelerAction, SIGNAL("triggered()"), self.openModeler) self.menu.addAction(self.modelerAction) self.historyAction = QAction( QIcon(":/sextante/images/history.gif"), QCoreApplication.translate("SEXTANTE", "&SEXTANTE history and log"), self.iface.mainWindow()) QObject.connect(self.historyAction, SIGNAL("triggered()"), self.openHistory) self.menu.addAction(self.historyAction) self.configAction = QAction( QIcon(":/sextante/images/config.png"), QCoreApplication.translate("SEXTANTE", "&SEXTANTE options and configuration"), self.iface.mainWindow()) QObject.connect(self.configAction, SIGNAL("triggered()"), self.openConfig) self.menu.addAction(self.configAction) self.resultsAction = QAction( QIcon(":/sextante/images/results.png"), QCoreApplication.translate("SEXTANTE", "&SEXTANTE results viewer"), self.iface.mainWindow()) QObject.connect(self.resultsAction, SIGNAL("triggered()"), self.openResults) self.menu.addAction(self.resultsAction) #======================================================================= # self.helpAction = QAction(QIcon(":/sextante/images/help.png"), # QCoreApplication.translate("SEXTANTE", "&SEXTANTE help"), # self.iface.mainWindow()) # QObject.connect(self.helpAction, SIGNAL("triggered()"), self.openHelp) # self.menu.addAction(self.helpAction) #======================================================================= menuBar = self.iface.mainWindow().menuBar() menuBar.insertMenu(menuBar.actions()[-1], self.menu) def unload(self): self.toolbox.setVisible(False) self.menu.deleteLater() #delete temporary output files folder = SextanteUtils.tempFolder() for f in os.listdir(folder): path = os.path.join(folder, f) try: os.unlink(path) except: #leave files that could not be deleted pass def openToolbox(self): self.toolbox.setVisible(True) def openModeler(self): dlg = ModelerDialog() dlg.exec_() if dlg.update: self.toolbox.updateTree() def openResults(self): dlg = ResultsDialog() dlg.exec_() def openHistory(self): dlg = HistoryDialog() dlg.exec_() def openConfig(self): dlg = ConfigDialog(self.toolbox) dlg.exec_()
class SextantePlugin: def __init__(self, iface): self.iface = iface QGisLayers.setInterface(iface) Sextante.initialize() Sextante.setInterface(iface) def initGui(self): self.toolbox = SextanteToolbox(self.iface) self.toolbox.setVisible(False) Sextante.addAlgListListener(self.toolbox) self.menu = QMenu(self.iface.mainWindow()) self.menu.setTitle("Analysis") icon = QIcon(os.path.dirname(__file__) + "/images/toolbox.png") self.toolboxAction = QAction(icon, \ "&SEXTANTE Toolbox", self.iface.mainWindow()) QObject.connect(self.toolboxAction, SIGNAL("triggered()"), self.openToolbox) self.menu.addAction(self.toolboxAction) icon = QIcon(os.path.dirname(__file__) + "/images/model.png") self.modelerAction = QAction(icon, \ "&SEXTANTE Modeler", self.iface.mainWindow()) QObject.connect(self.modelerAction, SIGNAL("triggered()"), self.openModeler) self.menu.addAction(self.modelerAction) icon = QIcon(os.path.dirname(__file__) + "/images/history.gif") self.historyAction = QAction(icon, \ "&SEXTANTE History and log", self.iface.mainWindow()) QObject.connect(self.historyAction, SIGNAL("triggered()"), self.openHistory) self.menu.addAction(self.historyAction) icon = QIcon(os.path.dirname(__file__) + "/images/config.png") self.configAction = QAction(icon, \ "&SEXTANTE options and configuration", self.iface.mainWindow()) QObject.connect(self.configAction, SIGNAL("triggered()"), self.openConfig) self.menu.addAction(self.configAction) icon = QIcon(os.path.dirname(__file__) + "/images/results.png") self.resultsAction = QAction(icon, \ "&SEXTANTE results viewer", self.iface.mainWindow()) QObject.connect(self.resultsAction, SIGNAL("triggered()"), self.openResults) self.menu.addAction(self.resultsAction) icon = QIcon(os.path.dirname(__file__) + "/images/help.png") self.helpAction = QAction(icon, \ "&SEXTANTE help", self.iface.mainWindow()) QObject.connect(self.helpAction, SIGNAL("triggered()"), self.openHelp) self.menu.addAction(self.helpAction) icon = QIcon(os.path.dirname(__file__) + "/images/info.png") self.aboutAction = QAction(icon, \ "&About SEXTANTE", self.iface.mainWindow()) QObject.connect(self.aboutAction, SIGNAL("triggered()"), self.openAbout) self.menu.addAction(self.aboutAction) menuBar = self.iface.mainWindow().menuBar() menuBar.insertMenu(menuBar.actions()[-1], self.menu) def unload(self): self.toolbox.setVisible(False) self.menu.deleteLater() #delete temporary output files folder = SextanteUtils.tempFolder() for f in os.listdir(folder): path = os.path.join(folder, f) try: os.unlink(path) except: #leave files that could not be deleted pass def openToolbox(self): self.toolbox.setVisible(True) def openModeler(self): dlg = ModelerDialog() dlg.exec_() if dlg.update: self.toolbox.updateTree() def openResults(self): dlg = ResultsDialog() dlg.exec_() def openHistory(self): dlg = HistoryDialog() dlg.exec_() def openConfig(self): dlg = ConfigDialog(self.toolbox) dlg.exec_() def openAbout(self): dlg = AboutDialog() dlg.exec_() def openHelp(self): filename = os.path.dirname(__file__) + "/help/index.html" if os.name == "nt": os.startfile(filename) elif sys.platform == "darwin": subprocess.Popen(('open', filename)) else: subprocess.call(('xdg-open', filename))
class SextantePlugin: def __init__(self, iface): self.iface = iface QGisLayers.setInterface(iface) Sextante.initialize() Sextante.setInterface(iface) def initGui(self): self.toolbox = SextanteToolbox(self.iface) self.toolbox.setVisible(False) Sextante.addAlgListListener(self.toolbox) self.menu = QMenu(self.iface.mainWindow()) self.menu.setTitle("Analysis") icon = QIcon(os.path.dirname(__file__) + "/images/toolbox.png") self.toolboxAction = QAction(icon, \ "&SEXTANTE Toolbox", self.iface.mainWindow()) QObject.connect(self.toolboxAction, SIGNAL("triggered()"), self.openToolbox) self.menu.addAction(self.toolboxAction) icon = QIcon(os.path.dirname(__file__) + "/images/model.png") self.modelerAction = QAction(icon, \ "&SEXTANTE Modeler", self.iface.mainWindow()) QObject.connect(self.modelerAction, SIGNAL("triggered()"), self.openModeler) self.menu.addAction(self.modelerAction) icon = QIcon(os.path.dirname(__file__) + "/images/history.gif") self.historyAction = QAction(icon, \ "&SEXTANTE History and log", self.iface.mainWindow()) QObject.connect(self.historyAction, SIGNAL("triggered()"), self.openHistory) self.menu.addAction(self.historyAction) icon = QIcon(os.path.dirname(__file__) + "/images/config.png") self.configAction = QAction(icon, \ "&SEXTANTE options and configuration", self.iface.mainWindow()) QObject.connect(self.configAction, SIGNAL("triggered()"), self.openConfig) self.menu.addAction(self.configAction) icon = QIcon(os.path.dirname(__file__) + "/images/results.png") self.resultsAction = QAction(icon, \ "&SEXTANTE results viewer", self.iface.mainWindow()) QObject.connect(self.resultsAction, SIGNAL("triggered()"), self.openResults) self.menu.addAction(self.resultsAction) icon = QIcon(os.path.dirname(__file__) + "/images/help.png") self.helpAction = QAction(icon, \ "&SEXTANTE help", self.iface.mainWindow()) QObject.connect(self.helpAction, SIGNAL("triggered()"), self.openHelp) self.menu.addAction(self.helpAction) icon = QIcon(os.path.dirname(__file__) + "/images/info.png") self.aboutAction = QAction(icon, \ "&About SEXTANTE", self.iface.mainWindow()) QObject.connect(self.aboutAction, SIGNAL("triggered()"), self.openAbout) self.menu.addAction(self.aboutAction) menuBar = self.iface.mainWindow().menuBar() menuBar.insertMenu(menuBar.actions()[-1], self.menu) def unload(self): self.toolbox.setVisible(False) self.menu.deleteLater() #delete temporary output files folder = SextanteUtils.tempFolder() for f in os.listdir(folder): path = os.path.join(folder,f) try: os.unlink(path) except: #leave files that could not be deleted pass def openToolbox(self): self.toolbox.setVisible(True) def openModeler(self): dlg = ModelerDialog() dlg.exec_() if dlg.update: self.toolbox.updateTree() def openResults(self): dlg = ResultsDialog() dlg.exec_() def openHistory(self): dlg = HistoryDialog() dlg.exec_() def openConfig(self): dlg = ConfigDialog(self.toolbox) dlg.exec_() def openAbout(self): dlg = AboutDialog() dlg.exec_() def openHelp(self): filename = os.path.dirname(__file__) + "/help/index.html" if os.name == "nt": os.startfile(filename) elif sys.platform == "darwin": subprocess.Popen(('open', filename)) else: subprocess.call(('xdg-open', filename))