def layersAdded(self, layers): layer = layers[-1] if Tools.isNewProject: crs = layer.crs() settings = self.iface.mapCanvas().mapSettings() settings.setDestinationCrs(crs) settings.setCrsTransformEnabled(True) Tools.isNewProject = False source = layer.source().replace("\\", "/") dataLocation = Tools.dataLocation1().replace("\\", "/") if source.startswith(dataLocation): # i.e. if starts with "V:/GIS1-Corporate/Data/" start = len(dataLocation) cddpLayer = source[start:] Tools.updateCounter(cddpLayer) if layer.type() == QgsMapLayer.RasterLayer and layer.dataProvider().name() == "wms": url = "" layers = "" src = layer.source() srcParams = src.split("&") for param in srcParams: if param[:4] == "url=": url = param[4:] elif param[:7] == "layers=": layers = param[7:] wmsParams = (url, layers) wmsInCDDP = "start value" if Tools.cddpTechnique == "menu": wmsInCDDP = "" else: if wmsParams in Tools.WMSinCDDP: wmsInCDDP = " - CDDP layer" else: wmsInCDDP = " - Non-CDDP layer" Tools.updateWMSCounter(layer.name(), url, wmsInCDDP)
def initGui(self): # Create action that will start plugin configuration self.action = QAction( QIcon(":/plugins/ymactools2/YMAC_icon.png"), u"YMAC Tools for YMAC v 2.x", self.iface.mainWindow()) # connect the action to the run method self.action.triggered.connect(self.run) # Add toolbar button and menu item self.iface.addToolBarIcon(self.action) self.iface.addPluginToMenu(u"&YMAC Tools 2", self.action) self.iface.newProjectCreated.connect(self.newProject) self.iface.projectRead.connect(self.loadProject) QgsMapLayerRegistry.instance().layersAdded.connect(self.layersAdded) Tools.loadWMSPresets() Tools.loadWFSPresets() DockableWindow.getDockable(True)
def showProjectTemplateDialog(self): setting = Tools.getSetting("showDefaultMapDialog") if setting != "false": sb = Tools.iface.mainWindow().statusBar() if sb.currentMessage() == "Project loaded": sb.messageChanged.disconnect() templateDialog = ShowProjectTemplateDialog() #self.previousStatusMessage = "Project loaded" #elif sb.currentMessage() == "": # if self.previousStatusMessage == "Project loaded": #dialogue = ShowProjectTemplateDialog() #self.previousStatusMessage == "" else: pass