class ToggleActiveLayerPlugin: def __init__(self, iface): self.iface = iface self.canvas = iface.mapCanvas() self.action = None self.tool = ToggleActiveLayerMapTool( self.iface ) def initGui(self): title = "Toggle visibility of active layer" icon = QIcon( os.path.join( os.path.dirname(__file__), 'toggleactivelayer.png' ) ) self.action = QAction( icon, title, self.iface.mainWindow() ) self.action.setObjectName( "ToggleActiveLayerPlugin" ) self.action.setWhatsThis( title ) self.action.setStatusTip( title ) self.action.triggered.connect( self.run ) # Maptool self.action.setCheckable( True ) self.tool.setAction( self.action ) self.iface.addToolBarIcon( self.action ) def unload(self): self.canvas.unsetMapTool( self.tool ) self.iface.removeToolBarIcon( self.action ) del self.action @pyqtSlot() def run(self): if self.canvas.mapTool() != self.tool: self.canvas.setMapTool( self.tool)
def __init__(self, iface): self.iface = iface self.canvas = iface.mapCanvas() self.action = None self.tool = ToggleActiveLayerMapTool( self.iface )