def runDockableMirror(self):
        from dockableMirrorMap import DockableMirrorMap

        wdg = DockableMirrorMap(self.iface.mainWindow(), self.iface)

        minsize = wdg.minimumSize()
        maxsize = wdg.maximumSize()

        self.setupDockWidget(wdg)
        self.addDockWidget(wdg)

        wdg.setMinimumSize(minsize)
        wdg.setMaximumSize(maxsize)

        if wdg.isFloating():
            wdg.move(50, 50)  # move the widget to the center
    def onProjectLoaded(self):
        # restore mirrors?
        num, ok = QgsProject.instance().readNumEntry("DockableMirrorMap", "/numMirrors")
        if not ok or num <= 0:
            return

            # remove all mirrors
        self.removeDockableMirrors()

        mirror2lids = {}
        # load mirrors
        for i in range(num):
            if num >= 2:
                if i == 0:
                    prevFlag = self.iface.mapCanvas().renderFlag()
                    self.iface.mapCanvas().setRenderFlag(False)
                elif i == num - 1:
                    self.iface.mapCanvas().setRenderFlag(True)

            from dockableMirrorMap import DockableMirrorMap

            dockwidget = DockableMirrorMap(self.iface.mainWindow(), self.iface)

            minsize = dockwidget.minimumSize()
            maxsize = dockwidget.maximumSize()

            # restore position
            floating, ok = QgsProject.instance().readBoolEntry("DockableMirrorMap", "/mirror%s/floating" % i)
            if ok:
                dockwidget.setFloating(floating)
                position, ok = QgsProject.instance().readEntry("DockableMirrorMap", "/mirror%s/position" % i)
                if ok:
                    try:
                        if floating:
                            parts = position.split(" ")
                            if len(parts) >= 2:
                                dockwidget.move(int(parts[0]), int(parts[1]))
                        else:
                            dockwidget.setLocation(int(position))
                    except ValueError:
                        pass

                        # restore geometry
            dockwidget.setFixedSize(dockwidget.geometry().width(), dockwidget.geometry().height())
            size, ok = QgsProject.instance().readEntry("DockableMirrorMap", "/mirror%s/size" % i)
            if ok:
                try:
                    parts = size.split(" ")
                    dockwidget.setFixedSize(int(parts[0]), int(parts[1]))
                except ValueError:
                    pass

            scaleFactor, ok = QgsProject.instance().readDoubleEntry(
                "DockableMirrorMap", "/mirror%s/scaleFactor" % i, 1.0
            )
            if ok:
                dockwidget.getMirror().scaleFactor.setValue(scaleFactor)

            # get layer list
            layerIds, ok = QgsProject.instance().readListEntry("DockableMirrorMap", "/mirror%s/layers" % i)
            if ok:
                dockwidget.getMirror().setLayerSet(layerIds)

            self.addDockWidget(dockwidget)
            dockwidget.setMinimumSize(minsize)
            dockwidget.setMaximumSize(maxsize)
Beispiel #3
0
	def runDockableMirror(self):
		from dockableMirrorMap import DockableMirrorMap
		wdg = DockableMirrorMap(self.iface.mainWindow(), self.iface)

		minsize = wdg.minimumSize()
		maxsize = wdg.maximumSize()

		self.setupDockWidget(wdg)		
		self.addDockWidget(wdg)

		wdg.setMinimumSize(minsize)
		wdg.setMaximumSize(maxsize)

		if wdg.isFloating():
			wdg.move(50, 50)	# move the widget to the center
Beispiel #4
0
    def runDockableMirror(self, title = None):
        from dockableMirrorMap import DockableMirrorMap
        wdg = DockableMirrorMap(self.iface.mainWindow(), self.iface, title)

        minsize = wdg.minimumSize()
        maxsize = wdg.maximumSize()

        self.setupDockWidget(wdg)
        self.addDockWidget(wdg)

        wdg.setMinimumSize(minsize)
        wdg.setMaximumSize(maxsize)

        if wdg.isFloating():
            wdg.move(50, 50)  # move the widget to the center

        # QObject.connect(wdg.mainWidget.canvas, SIGNAL( "extentsChanged()" ), wdg.mainWidget.mirror_extent_changed)
        # QObject.connect(wdg.mainWidget, SIGNAL("extentChanged( QgsRectangle )"), self.extentChanged )
        return wdg
Beispiel #5
0
	def onProjectLoaded(self):
		# restore mirrors?
		num, ok = QgsProject.instance().readNumEntry("DockableMirrorMap", "/numMirrors")
		if not ok or num <= 0:
			return

		# remove all mirrors
		self.removeDockableMirrors()

		mirror2lids = {}
		# load mirrors
		for i in range(num):
			if num >= 2:
				if i == 0: 
					prevFlag = self.iface.mapCanvas().renderFlag()
					self.iface.mapCanvas().setRenderFlag(False)
				elif i == num-1:
					self.iface.mapCanvas().setRenderFlag(True)

			from dockableMirrorMap import DockableMirrorMap
			dockwidget = DockableMirrorMap(self.iface.mainWindow(), self.iface)

			minsize = dockwidget.minimumSize()
			maxsize = dockwidget.maximumSize()

			# restore position
			floating, ok = QgsProject.instance().readBoolEntry("DockableMirrorMap", "/mirror%s/floating" % i)
			if ok: 
				dockwidget.setFloating( floating )
				position, ok = QgsProject.instance().readEntry("DockableMirrorMap", "/mirror%s/position" % i)
				if ok: 
					try:
						if floating:
							parts = position.split(" ")
							if len(parts) >= 2:
								dockwidget.move( int(parts[0]), int(parts[1]) )
						else:
							dockwidget.setLocation( int(position) )
					except ValueError:
						pass

			# restore geometry
			dockwidget.setFixedSize( dockwidget.geometry().width(), dockwidget.geometry().height() )
			size, ok = QgsProject.instance().readEntry("DockableMirrorMap", "/mirror%s/size" % i)
			if ok:
				try:
					parts = size.split(" ")
					dockwidget.setFixedSize( int(parts[0]), int(parts[1]) )
				except ValueError:
					pass				

			scaleFactor, ok = QgsProject.instance().readDoubleEntry("DockableMirrorMap", "/mirror%s/scaleFactor" % i, 1.0)
			if ok: dockwidget.getMirror().scaleFactor.setValue( scaleFactor )

			# get layer list
			layerIds, ok = QgsProject.instance().readListEntry("DockableMirrorMap", "/mirror%s/layers" % i)
			if ok: dockwidget.getMirror().setLayerSet( layerIds )

			self.addDockWidget( dockwidget )
			dockwidget.setMinimumSize(minsize)
			dockwidget.setMaximumSize(maxsize)