class OLOverview(object): def __init__(self, iface, olLayerTypeRegistry): self._iface = iface self._olLayerTypeRegistry = olLayerTypeRegistry self._dockwidget = None self._oloWidget = None # Private def _setDocWidget(self): self._dockwidget = QDockWidget(QApplication.translate( "OpenLayersOverviewWidget", "OpenLayers Overview"), self._iface.mainWindow()) self._dockwidget.setObjectName("dwOpenlayersOverview") self._oloWidget = OpenLayersOverviewWidget(self._iface, self._dockwidget, self._olLayerTypeRegistry) self._dockwidget.setWidget(self._oloWidget) def _initGui(self): self._setDocWidget() self._iface.addDockWidget(Qt.LeftDockWidgetArea, self._dockwidget) def _unload(self): self._dockwidget.close() self._iface.removeDockWidget(self._dockwidget) del self._oloWidget self._dockwidget = None # Public def setVisible(self, visible): if visible: if self._dockwidget is None: self._initGui() else: if self._dockwidget is not None: self._unload()
class OLOverview(object): def __init__(self, iface, olLayerTypeRegistry): self._iface = iface self._olLayerTypeRegistry = olLayerTypeRegistry self._dockwidget = None self._oloWidget = None # Private def _setDocWidget(self): self._dockwidget = QDockWidget( QApplication.translate("OpenLayersOverviewWidget", "OpenLayers Overview"), self._iface.mainWindow()) self._dockwidget.setObjectName("dwOpenlayersOverview") self._oloWidget = OpenLayersOverviewWidget(self._iface, self._dockwidget, self._olLayerTypeRegistry) self._dockwidget.setWidget(self._oloWidget) def _initGui(self): self._setDocWidget() self._iface.addDockWidget(Qt.LeftDockWidgetArea, self._dockwidget) def _unload(self): self._dockwidget.close() self._iface.removeDockWidget(self._dockwidget) del self._oloWidget self._dockwidget = None # Public def setVisible(self, visible): if visible: if self._dockwidget is None: self._initGui() else: if self._dockwidget is not None: self._unload()
class Mutant(object): def __init__(self, iface): self.iface = iface self.canvas = self.iface.mapCanvas() def initGui(self): # add action to toolbar self.action = QAction(QIcon(":/plugins/mutant/img/icon.svg"), "Mutant", self.iface.mainWindow()) self.iface.addToolBarIcon(self.action) self.tool = MutantMap(self.canvas, self.action) self.saveTool = None self.action.triggered.connect(self.activateTool) self.tool.deactivated.connect(self.deactivateTool) # create the widget to display information self.mutantwidget = MutantWidget(self.iface) self.tool.moved.connect(self.mutantwidget.toolMoved) self.tool.pressed.connect(self.mutantwidget.toolPressed) self.mutantwidget.toggleMutant.clicked.connect(self.toggleTool) self.mutantwidget.plotOnMove.clicked.connect(self.toggleMouseClick) # create the dockwidget with the correct parent and add the widget self.mutantdockwidget = QDockWidget("Mutant", self.iface.mainWindow()) self.mutantdockwidget.setObjectName("Mutant") self.mutantdockwidget.setWidget(self.mutantwidget) # QObject.connect(self.mutantdockwidget, # SIGNAL('visibilityChanged ( bool )'), self.showHideDockWidget) # add the dockwidget to iface self.iface.addDockWidget(Qt.LeftDockWidgetArea, self.mutantdockwidget) # self.mutantwidget.show() def unload(self): QSettings().setValue('plugins/mutant/mouseClick', self.mutantwidget.plotOnMove.isChecked()) self.mutantdockwidget.close() self.deactivateTool() # remove dockwidget from iface self.iface.removeDockWidget(self.mutantdockwidget) # remove plugin menu item and icon # self.iface.removePluginMenu("Analyses",self.action) self.iface.removeToolBarIcon(self.action) def toggleTool(self, active): self.activateTool() if active else self.deactivateTool() def toggleMouseClick(self, toggle): if toggle: self.activateTool(False) else: self.deactivateTool(False) self.mutantwidget.changeActive(False, False) self.mutantwidget.changeActive(True, False) def activateTool(self, changeActive=True): if self.mutantwidget.plotOnMove.isChecked(): self.saveTool = self.canvas.mapTool() self.canvas.setMapTool(self.tool) if not self.mutantdockwidget.isVisible(): self.mutantdockwidget.show() if changeActive: self.mutantwidget.changeActive(True) def deactivateTool(self, changeActive=True): if self.canvas.mapTool() and self.canvas.mapTool() == self.tool: # block signals to avoid recursion self.tool.blockSignals(True) if self.saveTool: self.canvas.setMapTool(self.saveTool) self.saveTool = None else: self.canvas.unsetMapTool(self.tool) self.tool.blockSignals(False) if changeActive: self.mutantwidget.changeActive(False)
class ValueTool(object): def __init__(self, iface): # save reference to the QGIS interface self.iface = iface self.canvas = self.iface.mapCanvas() def initGui(self): # create action that will start plugin configuration #self.action = QAction(QIcon(":/plugins/valuetool/icon.png"), "Value Tool", self.iface.getMainWindow()) #self.action.setWhatsThis("Value Tool") #QObject.connect(self.action, SIGNAL("activated()"), self.run) ## add toolbar button and menu item #self.iface.addToolBarIcon(self.action) #self.iface.addPluginMenu("Analyses", self.action) ## add the tool to select feature #self.tool = selectPointTool(self.iface.getMapCanvas(),self.action) # add action to toolbar self.action = QAction(QIcon(":/plugins/valuetool/icon.svg"), "Value Tool", self.iface.mainWindow()) self.iface.addToolBarIcon(self.action) self.tool = ValueMapTool(self.canvas, self.action) self.saveTool = None self.action.triggered.connect(self.activateTool) #self.tool.deactivate.connect(self.deactivateTool) #Almerio: desativei essa linha # create the widget to display information self.valuewidget = ValueWidget(self.iface) self.valuewidget.cbxClick.setVisible( False) #Almerio: disabled until find error cause on using it #self.tool.moved.connect(self.valuewidget.toolMoved) #Almerio: desativei essa linha #self.tool.pressed.connect(self.valuewidget.toolPressed) #Almerio: desativei essa linha self.valuewidget.cbxEnable.clicked.connect(self.toggleTool) self.valuewidget.cbxClick.clicked.connect(self.toggleMouseClick) # create the dockwidget with the correct parent and add the valuewidget self.valuedockwidget = QDockWidget("Value Tool", self.iface.mainWindow()) self.valuedockwidget.setObjectName("Value Tool") self.valuedockwidget.setWidget(self.valuewidget) #QObject.connect(self.valuedockwidget, SIGNAL('visibilityChanged ( bool )'), self.showHideDockWidget) # add the dockwidget to iface self.iface.addDockWidget(Qt.LeftDockWidgetArea, self.valuedockwidget) #self.valuewidget.show() def unload(self): QSettings().setValue('plugins/valuetool/mouseClick', self.valuewidget.cbxClick.isChecked()) self.valuedockwidget.close() #self.deactivateTool() #Almerio: error on unload plugin, so I disabled this line # remove the dockwidget from iface self.iface.removeDockWidget(self.valuedockwidget) # remove the plugin menu item and icon #self.iface.removePluginMenu("Analyses",self.action) self.iface.removeToolBarIcon(self.action) def toggleTool(self, active): self.activateTool() if active else self.deactivateTool() def toggleMouseClick(self, toggle): if toggle: self.activateTool(False) else: self.deactivateTool(False) self.valuewidget.changeActive(False, False) self.valuewidget.changeActive(True, False) def activateTool(self, changeActive=True): if self.valuewidget.cbxClick.isChecked(): self.saveTool = self.canvas.mapTool() self.canvas.setMapTool(self.tool) if not self.valuedockwidget.isVisible(): self.valuedockwidget.show() if changeActive: self.valuewidget.changeActive(True) def deactivateTool(self, changeActive=True): if self.canvas.mapTool() and self.canvas.mapTool() == self.tool: # block signals to avoid recursion self.tool.blockSignals(True) if self.saveTool: self.canvas.setMapTool(self.saveTool) self.saveTool = None else: self.canvas.unsetMapTool(self.tool) self.tool.blockSignals(False) if changeActive: self.valuewidget.changeActive(False)
class ValueTool(object): def __init__(self, iface): # save reference to the QGIS interface self.iface = iface self.canvas = self.iface.mapCanvas() def initGui(self): # create action that will start plugin configuration #self.action = QAction(QIcon(":/plugins/valuetool/icon.png"), "Value Tool", self.iface.getMainWindow()) #self.action.setWhatsThis("Value Tool") #QObject.connect(self.action, SIGNAL("activated()"), self.run) ## add toolbar button and menu item #self.iface.addToolBarIcon(self.action) #self.iface.addPluginMenu("Analyses", self.action) ## add the tool to select feature #self.tool = selectPointTool(self.iface.getMapCanvas(),self.action) # add action to toolbar self.action = QAction(QIcon(":/plugins/valuetool/icon.svg"), "Value Tool", self.iface.mainWindow()) self.iface.addToolBarIcon(self.action) self.tool = ValueMapTool(self.canvas, self.action) self.saveTool = None self.action.triggered.connect(self.activateTool) #self.tool.deactivate.connect(self.deactivateTool) #Almerio: desativei essa linha self.tooltipRaster = TooltipRasterMapTool(self.iface) # create the widget to display information self.valuewidget = ValueWidget(self.iface) self.valuewidget.cbxClick.setVisible( False) #Almerio: disabled until find error cause on using it self.valuewidget.cbxEnableToolTip.setEnabled(False) #self.tool.moved.connect(self.valuewidget.toolMoved) #Almerio: desativei essa linha #self.tool.pressed.connect(self.valuewidget.toolPressed) #Almerio: desativei essa linha self.valuewidget.cbxEnable.clicked.connect(self.toggleTool) self.valuewidget.cbxEnableToolTip.clicked.connect(self.toggleToolTip) self.valuewidget.cbxClick.clicked.connect(self.toggleMouseClick) # self.valuewidget.btnSaveSettings.clicked.connect(self.saveSettings) #btn to save settings suppressed, save settings on unloading # create the dockwidget with the correct parent and add the valuewidget self.valuedockwidget = QDockWidget("Value Tool", self.iface.mainWindow()) self.valuedockwidget.setObjectName("Value Tool") self.valuedockwidget.setWidget(self.valuewidget) #QObject.connect(self.valuedockwidget, SIGNAL('visibilityChanged ( bool )'), self.showHideDockWidget) # add the dockwidget to iface self.iface.addDockWidget(Qt.LeftDockWidgetArea, self.valuedockwidget) #self.valuewidget.show() #save settings def saveSettings(self): QSettings().setValue('plugins/valuetool/cbxEnable', self.valuewidget.cbxEnable.isChecked()) QSettings().setValue('plugins/valuetool/cbxDigits', self.valuewidget.cbxDigits.isChecked()) QSettings().setValue('plugins/valuetool/spinDigits', self.valuewidget.spinDigits.value()) QSettings().setValue( 'plugins/valuetool/tableWidget/Col0Width', self.valuewidget.tableWidget.columnWidth(0)) #first column 'Layer' QSettings().setValue('plugins/valuetool/tableWidget/Col1Width', self.valuewidget.tableWidget.columnWidth( 1)) #second column 'value' #QSettings().setValue('plugins/valuetool/mouseClick', self.valuewidget.cbxClick.isChecked()) ##self.iface.messageBar().pushMessage("Value Tool", "Settings saved!", level=Qgis.Info, duration=5) def unload(self): self.saveSettings() self.valuedockwidget.close() #self.deactivateTool() #Almerio: error on unload plugin, so I disabled this line # remove the dockwidget from iface self.iface.removeDockWidget(self.valuedockwidget) # remove the plugin menu item and icon #self.iface.removePluginMenu("Analyses",self.action) self.iface.removeToolBarIcon(self.action) def toggleTool(self, active): self.activateTool() if active else self.deactivateTool() def toggleToolTip(self, active): if active: self.iface.mapCanvas().setMapTool(self.tooltipRaster) else: self.iface.mapCanvas().unsetMapTool(self.tooltipRaster) def toggleMouseClick(self, toggle): if toggle: self.activateTool(False) else: self.deactivateTool(False) self.valuewidget.changeActive(False, False) self.valuewidget.changeActive(True, False) def activateTool(self, changeActive=True): self.canvas.setCursor(self.tool.cursor) if self.valuewidget.cbxClick.isChecked(): self.saveTool = self.canvas.mapTool() self.canvas.setMapTool(self.tool) if not self.valuedockwidget.isVisible(): self.valuedockwidget.show() if changeActive: self.valuewidget.changeActive(True) self.valuewidget.cbxEnableToolTip.setEnabled(True) if self.valuewidget.cbxEnableToolTip.isChecked(): self.toggleToolTip(True) def deactivateTool(self, changeActive=True): QApplication.restoreOverrideCursor() if self.canvas.mapTool() and self.canvas.mapTool() == self.tool: # block signals to avoid recursion self.tool.blockSignals(True) if self.saveTool: self.canvas.setMapTool(self.saveTool) self.saveTool = None else: self.canvas.unsetMapTool(self.tool) self.tool.blockSignals(False) if changeActive: self.valuewidget.changeActive(False) self.valuewidget.cbxEnableToolTip.setEnabled(False) self.toggleToolTip(False)