Example #1
0
    def __init__(self, parent=None, iface=None):
        """Constructor."""
        super(OverlapDialog, self).__init__(parent)
        # Set up the user interface from Designer through FORM_CLASS.
        # After self.setupUi() you can access any designer object by doing
        # self.<objectname>, and you can use autoconnect slots - see
        # http://qt-project.org/doc/qt-4.8/designer-using-a-ui-file.html
        # #widgets-and-dialogs-with-auto-connect
        QDialog.__init__(self, parent)
        self.parent = parent
        self.iface = iface
        self.setupUi(self)

        # layer
        self.layer = QgsMapLayerComboBox(parent)
        self.layer.setFilters(QgsMapLayerProxyModel.PolygonLayer)
        # self.layer.layerChanged.connect(self.check_form_validation)

        # output
        self.result.setStorageMode(storageMode=QgsFileWidget.SaveFile)
        self.result.setDialogTitle("Save File")

        # Set up things for ok button
        self.ok_button = self.button_ovelap.button(QDialogButtonBox.Ok)
        # self.ok_button.setEnabled(False)
        self.ok_button.clicked.connect(self.accept)

        # Set up things for cancel button
        self.cancel_button = self.button_ovelap.button(QDialogButtonBox.Cancel)
        self.cancel_button.clicked.connect(self.reject)
class Ui_hcmgis_find_replace_form(object):
    def setupUi(self, hcmgis_find_replace_form):
        hcmgis_find_replace_form.setObjectName("hcmgis_find_replace_form")
        hcmgis_find_replace_form.setWindowModality(QtCore.Qt.ApplicationModal)
        hcmgis_find_replace_form.setEnabled(True)
        hcmgis_find_replace_form.resize(341, 228)
        hcmgis_find_replace_form.setMouseTracking(False)
        self.LblChar = QtWidgets.QLabel(hcmgis_find_replace_form)
        self.LblChar.setGeometry(QtCore.QRect(10, 110, 151, 16))
        self.LblChar.setObjectName("LblChar")
        self.BtnOKCancel = QtWidgets.QDialogButtonBox(hcmgis_find_replace_form)
        self.BtnOKCancel.setGeometry(QtCore.QRect(175, 189, 156, 31))
        self.BtnOKCancel.setStandardButtons(QtWidgets.QDialogButtonBox.Cancel
                                            | QtWidgets.QDialogButtonBox.Ok)
        self.BtnOKCancel.setObjectName("BtnOKCancel")
        self.LblInput = QtWidgets.QLabel(hcmgis_find_replace_form)
        self.LblInput.setGeometry(QtCore.QRect(11, 11, 321, 16))
        self.LblInput.setObjectName("LblInput")
        self.CboInput = QgsMapLayerComboBox(hcmgis_find_replace_form)
        self.CboInput.setGeometry(QtCore.QRect(10, 30, 321, 21))
        self.CboInput.setObjectName("CboInput")
        self.LblOutput_2 = QtWidgets.QLabel(hcmgis_find_replace_form)
        self.LblOutput_2.setGeometry(QtCore.QRect(10, 63, 321, 16))
        self.LblOutput_2.setObjectName("LblOutput_2")
        self.CboField = QgsFieldComboBox(hcmgis_find_replace_form)
        self.CboField.setGeometry(QtCore.QRect(10, 80, 321, 21))
        self.CboField.setObjectName("CboField")
        self.LinFind = QtWidgets.QLineEdit(hcmgis_find_replace_form)
        self.LinFind.setGeometry(QtCore.QRect(10, 130, 151, 20))
        self.LinFind.setObjectName("LinFind")
        self.LblChar_2 = QtWidgets.QLabel(hcmgis_find_replace_form)
        self.LblChar_2.setGeometry(QtCore.QRect(180, 110, 151, 20))
        self.LblChar_2.setObjectName("LblChar_2")
        self.LinReplace = QtWidgets.QLineEdit(hcmgis_find_replace_form)
        self.LinReplace.setGeometry(QtCore.QRect(180, 130, 151, 20))
        self.LinReplace.setObjectName("LinReplace")
        self.ChkSelectedFeaturesOnly = QtWidgets.QCheckBox(
            hcmgis_find_replace_form)
        self.ChkSelectedFeaturesOnly.setGeometry(QtCore.QRect(
            10, 165, 321, 17))
        self.ChkSelectedFeaturesOnly.setObjectName("ChkSelectedFeaturesOnly")

        self.retranslateUi(hcmgis_find_replace_form)
        self.BtnOKCancel.accepted.connect(hcmgis_find_replace_form.accept)
        self.BtnOKCancel.rejected.connect(hcmgis_find_replace_form.reject)
        QtCore.QMetaObject.connectSlotsByName(hcmgis_find_replace_form)

    def retranslateUi(self, hcmgis_find_replace_form):
        _translate = QtCore.QCoreApplication.translate
        hcmgis_find_replace_form.setWindowTitle(
            _translate("hcmgis_find_replace_form", "Find and Replace"))
        self.LblChar.setText(_translate("hcmgis_find_replace_form", "Find"))
        self.LblInput.setText(
            _translate("hcmgis_find_replace_form", "Input Layer"))
        self.LblOutput_2.setText(
            _translate("hcmgis_find_replace_form", "Field"))
        self.LblChar_2.setText(
            _translate("hcmgis_find_replace_form", "Replace"))
        self.ChkSelectedFeaturesOnly.setText(
            _translate("hcmgis_find_replace_form", "Selected features only"))
Example #3
0
    def initGui(self):
        """Create the menu entries and toolbar icons inside the QGIS GUI."""

        icon_path = ':/plugins/UAVPreparer/icon.png'
        self.add_action(
            icon_path,
            text=self.tr(self.tr(u'Unmanned Aerial Vehicle Preparer')),
            callback=self.run,
            parent=self.iface.mainWindow())

        # Access the raster layer
        self.layerComboManagerDSM = QgsMapLayerComboBox(self.dlg.widgetDSM)
        self.layerComboManagerDSM.setFilters(QgsMapLayerProxyModel.RasterLayer)
        self.layerComboManagerDSM.setFixedWidth(175)
        self.layerComboManagerDSM.setCurrentIndex(-1)

        # Access the vector layer and an attribute field
        self.layerComboManagerPoint = QgsMapLayerComboBox(self.dlg.widgetPoint)
        self.layerComboManagerPoint.setCurrentIndex(-1)
        self.layerComboManagerPoint.setFilters(QgsMapLayerProxyModel.PointLayer)
        self.layerComboManagerPoint.setFixedWidth(175)
        self.layerComboManagerPointField = QgsFieldComboBox(self.dlg.widgetField)
        self.layerComboManagerPointField.setFilters(QgsFieldProxyModel.Numeric)
        self.layerComboManagerPoint.layerChanged.connect(self.layerComboManagerPointField.setLayer)

        # Set up of file save dialog
        self.fileDialog = QFileDialog()
        self.dlg.selectButton.clicked.connect(self.savefile)

        # Set up for the Help button
        self.dlg.helpButton.clicked.connect(self.help)

        # Set up for the Run button
        self.dlg.runButton.clicked.connect(self.start_progress)
 def _build_widgets(self):
     """Builds own widgets."""
     
     self.lastBpejLayer = None
     
     self.bpejMapLayerComboBox = QgsMapLayerComboBox(self)
     self.bpejMapLayerComboBox.setObjectName(u'bpejMapLayerComboBox')
     self.bpejMapLayerComboBox.setFilters(
         QgsMapLayerProxyModel.PolygonLayer)
     self.bpejMapLayerComboBox.activated.connect(self._set_last_bpej_layer)
     QgsMapLayerRegistry.instance().layersAdded.connect(
         self._rollback_bpej_layer)
     QgsMapLayerRegistry.instance().layersRemoved.connect(
         self._reset_bpej_layer)
     self.set_bpej_layer(self.lastBpejLayer)
     self.vBoxLayout.addWidget(self.bpejMapLayerComboBox)
     
     self.bpejFieldComboBox = QgsFieldComboBox(self)
     self.bpejFieldComboBox.setObjectName(u'bpejFieldComboBox')
     self.bpejFieldComboBox.setLayer(
         self.bpejMapLayerComboBox.currentLayer())
     self.vBoxLayout.addWidget(self.bpejFieldComboBox)
     
     self.bpejMapLayerComboBox.layerChanged.connect(
         self.bpejFieldComboBox.setLayer)
    def __init__(self, curPointLayerName, curPolygonLayerName, curFiledName, parent=None):
        QtGui.QDialog.__init__(self, parent)

        self.resize(300, 100)
        Plugin().plPrint("curPointLayerName:: %s" % curPointLayerName)
        Plugin().plPrint("curPolygonLayerName:: %s" % curPolygonLayerName)
        Plugin().plPrint("curFiledName:: %s" % curFiledName)
        self.setWindowTitle(Plugin().getPluginName())
        self.__mainLayout = QtGui.QVBoxLayout(self)
        self.__layout = QtGui.QGridLayout(self)

        # self.__layout.addWidget(QtGui.QLabel(self.tr("Point layer name") + ":"), 0, 0)
        l1 = QtGui.QLabel(u"Имя точечного слоя" + ":")
        l1.setSizePolicy(
            QtGui.QSizePolicy.Preferred,
            QtGui.QSizePolicy.Fixed
        )
        self.__layout.addWidget(l1, 0, 0)
        self.pointsLayersComboBox = QgsMapLayerComboBox()
        self.pointsLayersComboBox.setSizePolicy(
            QtGui.QSizePolicy.Expanding,
            QtGui.QSizePolicy.Fixed
        )
        self.pointsLayersComboBox.setFilters(QgsMapLayerProxyModel.PointLayer)
        self.pointsLayersComboBox.setEditable(True)
        self.pointsLayersComboBox.setEditText(curPointLayerName)
        self.pointsLayersComboBox.layerChanged.connect(self.layerChooze1)
        self.__layout.addWidget(self.pointsLayersComboBox, 0, 1)


        # self.__layout.addWidget(QtGui.QLabel(self.tr("Field name") + ":"), 2, 0)
        self.__layout.addWidget(QtGui.QLabel(u"Имя поля" + ":"), 2, 0)
        self.fieldName = QgsFieldComboBox()
        self.fieldName.setFilters(QgsFieldProxyModel.Int)
        self.fieldName.setEditable(True)
        self.fieldName.setEditText(curFiledName)
        self.fieldName.fieldChanged.connect(self.filedChooze)
        self.__layout.addWidget(self.fieldName, 2, 1)

        # self.__layout.addWidget(QtGui.QLabel(self.tr("Polypon layer name") + ":"), 1, 0)
        self.__layout.addWidget(QtGui.QLabel(u"Имя полигонального слоя" + ":"), 1, 0)
        self.polygonsLayersComboBox = QgsMapLayerComboBox()
        self.polygonsLayersComboBox.setFilters(QgsMapLayerProxyModel.PolygonLayer)
        self.polygonsLayersComboBox.setEditable(True)
        self.polygonsLayersComboBox.setEditText(curPolygonLayerName)
        self.polygonsLayersComboBox.layerChanged.connect(self.layerChooze2)
        self.polygonsLayersComboBox.layerChanged.connect(self.fieldName.setLayer)
        self.__layout.addWidget(self.polygonsLayersComboBox, 1, 1)

        # self.startButton = QtGui.QPushButton(self.tr("Start"))
        # self.startButton.clicked.connect(self.startCalculation)
        # self.__layout.addWidget(self.startButton, 3, 1)

        self.__mainLayout.addLayout(self.__layout)
        # self.progress = QtGui.QLabel()
        # self.__mainLayout.addWidget(self.progress)
        self.__bbox = QtGui.QDialogButtonBox(QtGui.QDialogButtonBox.Ok)
        self.__bbox.setSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
        self.__bbox.accepted.connect(self.accept)
        self.__mainLayout.addWidget(self.__bbox)
class Ui_selectLayer_dlg(object):
    def setupUi(self, selectLayer_dlg):
        selectLayer_dlg.setObjectName(_fromUtf8("selectLayer_dlg"))
        selectLayer_dlg.resize(400, 101)
        self.verticalLayout = QtGui.QVBoxLayout(selectLayer_dlg)
        self.verticalLayout.setObjectName(_fromUtf8("verticalLayout"))
        self.label = QtGui.QLabel(selectLayer_dlg)
        self.label.setAlignment(QtCore.Qt.AlignCenter)
        self.label.setObjectName(_fromUtf8("label"))
        self.verticalLayout.addWidget(self.label)
        self.selectLayer_CBox = QgsMapLayerComboBox(selectLayer_dlg)
        self.selectLayer_CBox.setObjectName(_fromUtf8("selectLayer_CBox"))
        self.verticalLayout.addWidget(self.selectLayer_CBox)
        self.buttonBox = QtGui.QDialogButtonBox(selectLayer_dlg)
        self.buttonBox.setOrientation(QtCore.Qt.Horizontal)
        self.buttonBox.setStandardButtons(QtGui.QDialogButtonBox.Cancel|QtGui.QDialogButtonBox.Ok)
        self.buttonBox.setObjectName(_fromUtf8("buttonBox"))
        self.verticalLayout.addWidget(self.buttonBox)

        self.retranslateUi(selectLayer_dlg)
        QtCore.QObject.connect(self.buttonBox, QtCore.SIGNAL(_fromUtf8("accepted()")), selectLayer_dlg.accept)
        QtCore.QObject.connect(self.buttonBox, QtCore.SIGNAL(_fromUtf8("rejected()")), selectLayer_dlg.reject)
        QtCore.QMetaObject.connectSlotsByName(selectLayer_dlg)

    def retranslateUi(self, selectLayer_dlg):
        selectLayer_dlg.setWindowTitle(_translate("selectLayer_dlg", "Dialog", None))
        self.label.setText(_translate("selectLayer_dlg", "Select Roads vectotr layer", None))
class UploadLayerDialog(QtGui.QDialog):
    def  __init__(self):
        QtGui.QDialog.__init__(self)
        self.setupUi()

    def setupUi(self):
        self.resize(400, 400)
        self.setWindowTitle('Upload layer to Shogun')

        title = QtGui.QLabel(self)
        title.setGeometry(50,30,300,70)
        title.setText('Please select the layer you wish to upload to the \n Shogun Server')

        self.layerBox = QgsMapLayerComboBox(self)
        self.layerBox.setGeometry(QRect(50, 100, 300, 30))

        self.uploadButton = QtGui.QPushButton(self)
        self.uploadButton.setGeometry(QRect(250, 160, 100, 35))
        self.uploadButton.setText('Upload Layer')

        self.cancelButton = QtGui.QPushButton(self)
        self.cancelButton.setGeometry(QRect(140, 160, 100, 35))
        self.cancelButton.setText('Cancel')
        self.cancelButton.clicked.connect(self.hide)

        self.logWindow = QtGui.QTextEdit(self)
        self.logWindow.setGeometry(QRect(50, 200, 300, 180))
        self.logWindow.setReadOnly(True)
        self.logWindow.setText('Upload Log:')

    def log(self, message):
        msg = ' - ' + message
        self.logWindow.append(msg)
    def setupUi(self, hcmgis_closestpair_form):
        hcmgis_closestpair_form.setObjectName("hcmgis_closestpair_form")
        hcmgis_closestpair_form.setWindowModality(QtCore.Qt.ApplicationModal)
        hcmgis_closestpair_form.setEnabled(True)
        hcmgis_closestpair_form.resize(352, 136)
        hcmgis_closestpair_form.setMouseTracking(False)
        self.BtnOKCancel = QtWidgets.QDialogButtonBox(hcmgis_closestpair_form)
        self.BtnOKCancel.setGeometry(QtCore.QRect(190, 100, 156, 31))
        self.BtnOKCancel.setStandardButtons(QtWidgets.QDialogButtonBox.Cancel|QtWidgets.QDialogButtonBox.Ok)
        self.BtnOKCancel.setObjectName("BtnOKCancel")
        self.LblInput = QtWidgets.QLabel(hcmgis_closestpair_form)
        self.LblInput.setGeometry(QtCore.QRect(10, 7, 331, 16))
        self.LblInput.setObjectName("LblInput")
        self.CboInput = QgsMapLayerComboBox(hcmgis_closestpair_form)
        self.CboInput.setGeometry(QtCore.QRect(10, 24, 331, 21))
        self.CboInput.setObjectName("CboInput")
        self.LblInput_2 = QtWidgets.QLabel(hcmgis_closestpair_form)
        self.LblInput_2.setGeometry(QtCore.QRect(10, 56, 331, 16))
        self.LblInput_2.setObjectName("LblInput_2")
        self.CboField = QgsFieldComboBox(hcmgis_closestpair_form)
        self.CboField.setGeometry(QtCore.QRect(10, 75, 331, 21))
        self.CboField.setObjectName("CboField")

        self.retranslateUi(hcmgis_closestpair_form)
        self.BtnOKCancel.accepted.connect(hcmgis_closestpair_form.accept)
        self.BtnOKCancel.rejected.connect(hcmgis_closestpair_form.reject)
        QtCore.QMetaObject.connectSlotsByName(hcmgis_closestpair_form)
Example #9
0
    def __init__(self, gtomain, parent=None):
        super(GtoWidgetActiveLayer, self).__init__(parent)
        # QWidgetAction.__init__(self,parent)
        self.iface = gtomain.iface
        self.info = gtomain.info
        self.canvas = self.iface.mapCanvas()
        # ui
        lay = QHBoxLayout(self)
        self.lblCaption = QLabel('Layer:')
        self.lblCaption.setToolTip("Aktiver Layer (selected features)")
        lay.addWidget(self.lblCaption)

        self.lblLayer = QLabel()
        self.qgsLayers = QgsMapLayerComboBox()
        self.qgsLayers.setCurrentIndex(-1)
        self.qgsLayers.setFilters(QgsMapLayerProxyModel.VectorLayer)

        lay.addWidget(self.lblLayer)

        self.setLayout(lay)

        # signals
        self.canvas.currentLayerChanged.connect(self.layer_changed)
        self.canvas.selectionChanged.connect(self.selection_changed)
        # start
        self.layer_changed(self.iface.activeLayer())
Example #10
0
    def setupUi(self, selectLayer_dlg):
        selectLayer_dlg.setObjectName(_fromUtf8("selectLayer_dlg"))
        selectLayer_dlg.resize(400, 101)
        self.verticalLayout = QtGui.QVBoxLayout(selectLayer_dlg)
        self.verticalLayout.setObjectName(_fromUtf8("verticalLayout"))
        self.label = QtGui.QLabel(selectLayer_dlg)
        self.label.setAlignment(QtCore.Qt.AlignCenter)
        self.label.setObjectName(_fromUtf8("label"))
        self.verticalLayout.addWidget(self.label)
        self.selectLayer_CBox = QgsMapLayerComboBox(selectLayer_dlg)
        self.selectLayer_CBox.setObjectName(_fromUtf8("selectLayer_CBox"))
        self.verticalLayout.addWidget(self.selectLayer_CBox)
        self.buttonBox = QtGui.QDialogButtonBox(selectLayer_dlg)
        self.buttonBox.setOrientation(QtCore.Qt.Horizontal)
        self.buttonBox.setStandardButtons(QtGui.QDialogButtonBox.Cancel
                                          | QtGui.QDialogButtonBox.Ok)
        self.buttonBox.setObjectName(_fromUtf8("buttonBox"))
        self.verticalLayout.addWidget(self.buttonBox)

        self.retranslateUi(selectLayer_dlg)
        QtCore.QObject.connect(self.buttonBox,
                               QtCore.SIGNAL(_fromUtf8("accepted()")),
                               selectLayer_dlg.accept)
        QtCore.QObject.connect(self.buttonBox,
                               QtCore.SIGNAL(_fromUtf8("rejected()")),
                               selectLayer_dlg.reject)
        QtCore.QMetaObject.connectSlotsByName(selectLayer_dlg)
class Ui_hcmgis_checkvalidity_form(object):
    def setupUi(self, hcmgis_checkvalidity_form):
        hcmgis_checkvalidity_form.setObjectName("hcmgis_checkvalidity_form")
        hcmgis_checkvalidity_form.setWindowModality(QtCore.Qt.ApplicationModal)
        hcmgis_checkvalidity_form.setEnabled(True)
        hcmgis_checkvalidity_form.resize(341, 89)
        hcmgis_checkvalidity_form.setMouseTracking(False)
        self.BtnOKCancel = QtWidgets.QDialogButtonBox(
            hcmgis_checkvalidity_form)
        self.BtnOKCancel.setGeometry(QtCore.QRect(177, 50, 156, 31))
        self.BtnOKCancel.setStandardButtons(QtWidgets.QDialogButtonBox.Cancel
                                            | QtWidgets.QDialogButtonBox.Ok)
        self.BtnOKCancel.setObjectName("BtnOKCancel")
        self.LblInput = QtWidgets.QLabel(hcmgis_checkvalidity_form)
        self.LblInput.setGeometry(QtCore.QRect(10, 7, 321, 16))
        self.LblInput.setObjectName("LblInput")
        self.CboInput = QgsMapLayerComboBox(hcmgis_checkvalidity_form)
        self.CboInput.setGeometry(QtCore.QRect(10, 24, 321, 21))
        self.CboInput.setObjectName("CboInput")

        self.retranslateUi(hcmgis_checkvalidity_form)
        self.BtnOKCancel.accepted.connect(hcmgis_checkvalidity_form.accept)
        self.BtnOKCancel.rejected.connect(hcmgis_checkvalidity_form.reject)
        QtCore.QMetaObject.connectSlotsByName(hcmgis_checkvalidity_form)

    def retranslateUi(self, hcmgis_checkvalidity_form):
        _translate = QtCore.QCoreApplication.translate
        hcmgis_checkvalidity_form.setWindowTitle(
            _translate("hcmgis_checkvalidity_form", "Check Validity"))
        self.LblInput.setText(
            _translate("hcmgis_checkvalidity_form", "Input Layer"))
Example #12
0
    def __init__(self, gtoObj, parent=None):
        super(GtoWidgetQgisLayers, self).__init__(parent)
        # QWidgetAction.__init__(self,parent)
        self.gtomain = gtoObj.gtomain
        self.info = self.gtomain.info
        self.iface = self.gtomain.iface
        self.canvas = self.iface.mapCanvas()
        self.setSizePolicy(QSizePolicy.Preferred, QSizePolicy.Minimum)

        self.qgsLayers = QgsMapLayerComboBox()
        self.qgsLayers.setMinimumContentsLength(25)
        self.qgsLayers.setMinimumWidth(300)
        self.qgsLayers.setCurrentIndex(-1)
        self.qgsLayers.setFilters(QgsMapLayerProxyModel.VectorLayer)
        #signals
        self.canvas.currentLayerChanged.connect(self.qgsLayers.setLayer)
        self.qgsLayers.layerChanged.connect(self.layer_changed)
        self.canvas.selectionChanged.connect(self.selection_changed)
        # ui
        lay = QHBoxLayout(self)
        self.caption = 'Layer: ({0})'
        self.lblLayer = QLabel('Layer:')
        self.lblLayer.setToolTip("Aktiver Layer (selected features)")
        lay.addWidget(self.lblLayer)
        lay.addWidget(self.qgsLayers)
        self.setLayout(lay)
        # help QgsMapLayerComboBox ..:O
        self.timer = QTimer()
        self.timer.singleShot(100, self._setLayer)
Example #13
0
class SingleLayerSelectDialog(QDialog):
    def __init__(self, parent=None, label=""):

        QDialog.__init__(self, parent)

        vl = QVBoxLayout()
        if label:
            vl.addWidget(QLabel(label))

        self.comboBox = QgsMapLayerComboBox()
        self.comboBox.setFilters(QgsMapLayerProxyModel.HasGeometry
                                 | QgsMapLayerProxyModel.RasterLayer
                                 | QgsMapLayerProxyModel.MeshLayer)
        vl.addWidget(self.comboBox)

        self.buttonBox = QDialogButtonBox()
        self.buttonBox.setStandardButtons(QDialogButtonBox.Cancel
                                          | QDialogButtonBox.Ok)
        self.buttonBox.accepted.connect(self.accept)
        self.buttonBox.rejected.connect(self.reject)
        vl.addWidget(self.buttonBox)

        self.setLayout(vl)

    def selectedLayer(self):
        return self.comboBox.currentLayer()
Example #14
0
    def setupUi(self, Targetselection):
        Targetselection.setObjectName("Targetselection")
        Targetselection.resize(438, 328)
        Targetselection.setModal(True)
        self.verticalLayout = QtWidgets.QVBoxLayout(Targetselection)
        self.verticalLayout.setObjectName("verticalLayout")
        self.layerLabel = QtWidgets.QLabel(Targetselection)
        self.layerLabel.setObjectName("layerLabel")
        self.verticalLayout.addWidget(self.layerLabel)
        self.targetLayerComboBox = QgsMapLayerComboBox(Targetselection)
        self.targetLayerComboBox.setObjectName("targetLayerComboBox")
        self.verticalLayout.addWidget(self.targetLayerComboBox)
        self.fieldTable = QtWidgets.QTableWidget(Targetselection)
        self.fieldTable.setColumnCount(2)
        self.fieldTable.setObjectName("fieldTable")
        self.fieldTable.setRowCount(0)
        self.fieldTable.horizontalHeader().setVisible(False)
        self.fieldTable.horizontalHeader().setStretchLastSection(True)
        self.verticalLayout.addWidget(self.fieldTable)
        self.buttonBox = QtWidgets.QDialogButtonBox(Targetselection)
        self.buttonBox.setOrientation(QtCore.Qt.Horizontal)
        self.buttonBox.setStandardButtons(QtWidgets.QDialogButtonBox.Cancel
                                          | QtWidgets.QDialogButtonBox.Ok)
        self.buttonBox.setObjectName("buttonBox")
        self.verticalLayout.addWidget(self.buttonBox)
        self.verticalLayout.setStretch(2, 1)

        self.retranslateUi(Targetselection)
        self.buttonBox.rejected.connect(Targetselection.reject)
        QtCore.QMetaObject.connectSlotsByName(Targetselection)
Example #15
0
    def __init__(self, iface):
        QgsDockWidget.__init__(
            self,
            QCoreApplication.translate('AttributesDock', 'Quick Attribution'))
        self.iface = iface
        self.widget = QWidget()
        self.widget.setLayout(QGridLayout())
        self.widget.setContentsMargins(0, 0, 0, 0)
        self.layerComboBox = QgsMapLayerComboBox()
        self.layerComboBox.layerChanged.connect(self.setLayer)
        self.layerComboBox.setSizePolicy(QSizePolicy.Expanding,
                                         QSizePolicy.Fixed)
        self.layerTitleLabel = QLabel()
        self.widget.layout().addWidget(self.layerTitleLabel, 0, 0, 1, 1)
        self.widget.layout().addWidget(self.layerComboBox, 0, 1, 1, 1)
        self.formWidget = QWidget()
        self.formWidget.setLayout(QGridLayout())
        self.formWidget.setContentsMargins(0, 0, 0, 0)
        self.widget.layout().addWidget(self.formWidget, 1, 0, 1, 2)
        self.setWidget(self.widget)
        self.attributeForm = None
        self.layer = None
        self.feature = None

        self.layerComboBox.setFilters(QgsMapLayerProxyModel.WritableLayer
                                      | QgsMapLayerProxyModel.VectorLayer)

        QgsProject.instance().readProject.connect(self.onProjectRead)
    def setupUi(self, LayerSelector):
        LayerSelector.setObjectName(_fromUtf8("LayerSelector"))
        LayerSelector.resize(400, 153)
        self.verticalLayout = QtGui.QVBoxLayout(LayerSelector)
        self.verticalLayout.setObjectName(_fromUtf8("verticalLayout"))
        self.label = QtGui.QLabel(LayerSelector)
        self.label.setObjectName(_fromUtf8("label"))
        self.verticalLayout.addWidget(self.label)
        self.layerCombo = QgsMapLayerComboBox(LayerSelector)
        self.layerCombo.setFilters(QgsMapLayerProxyModel.RasterLayer)
        self.layerCombo.setObjectName(_fromUtf8("layerCombo"))
        self.verticalLayout.addWidget(self.layerCombo)
        spacerItem = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding)
        self.verticalLayout.addItem(spacerItem)
        self.buttonBox = QtGui.QDialogButtonBox(LayerSelector)
        self.buttonBox.setOrientation(QtCore.Qt.Horizontal)
        self.buttonBox.setStandardButtons(QtGui.QDialogButtonBox.Cancel|QtGui.QDialogButtonBox.Ok)
        self.buttonBox.setCenterButtons(True)
        self.buttonBox.setObjectName(_fromUtf8("buttonBox"))
        self.verticalLayout.addWidget(self.buttonBox)

        self.retranslateUi(LayerSelector)
        QtCore.QObject.connect(self.buttonBox, QtCore.SIGNAL(_fromUtf8("accepted()")), LayerSelector.accept)
        QtCore.QObject.connect(self.buttonBox, QtCore.SIGNAL(_fromUtf8("rejected()")), LayerSelector.reject)
        QtCore.QMetaObject.connectSlotsByName(LayerSelector)
class LayerSelectionDialog(QDialog):
    def __init__(self, parent=None):
        super().__init__(parent)
        self.setWindowTitle(self.tr('Select Extent'))

        vl = QVBoxLayout()
        vl.addWidget(QLabel(self.tr('Use extent from')))
        self.combo = QgsMapLayerComboBox()
        self.combo.setFilters(QgsMapLayerProxyModel.HasGeometry
                              | QgsMapLayerProxyModel.RasterLayer
                              | QgsMapLayerProxyModel.MeshLayer)
        self.combo.setShowCrs(
            ProcessingConfig.getSetting(ProcessingConfig.SHOW_CRS_DEF))
        vl.addWidget(self.combo)

        self.button_box = QDialogButtonBox()
        self.button_box.setStandardButtons(QDialogButtonBox.Cancel
                                           | QDialogButtonBox.Ok)
        self.button_box.accepted.connect(self.accept)
        self.button_box.rejected.connect(self.reject)

        vl.addWidget(self.button_box)
        self.setLayout(vl)

    def selected_layer(self):
        return self.combo.currentLayer()
Example #18
0
    def initGui(self):
        self.toolbar = self.iface.addToolBar(u'TIN Tools')
        self.toolbar.setObjectName(u'tintools')
        label = QLabel('Capa TIN:')
        self.toolbar.addWidget(label)
        self.tin_cb = QgsMapLayerComboBox()
        self.tin_cb.setMinimumWidth(200)
        self.tin_cb.setFilters(QgsMapLayerProxyModel.VectorLayer)
        self.tin_cb.layerChanged.connect(self.tinLayerChanged)
        self.toolbar.addWidget(self.tin_cb)

        #        icon_path = self.plugin_dir +'/icon.png'
        #        icon = QIcon(icon_path)
        #'\u0394 \u2B16  \u20E4  \u2350 \u21C8 \u2963 \u2B7F \u2b85 \u23C4  \u25e9'
        self.calc_plane_action = QAction('\u0394', self.iface.mainWindow())
        self.calc_plane_action.triggered.connect(self.calcPlaneEquation)
        self.toolbar.addAction(self.calc_plane_action)

        self.calc_z = QAction('\u21C8', self.iface.mainWindow())
        self.calc_z.triggered.connect(self.calcZ)
        self.toolbar.addAction(self.calc_z)

        self.adjust_to_tin = QAction('\u25e9', self.iface.mainWindow())
        self.adjust_to_tin.triggered.connect(self.adjustToTin)
        self.toolbar.addAction(self.adjust_to_tin)

        self.tinLayerChanged(self.tin_cb.currentLayer())
Example #19
0
 def mapLayerComboBox(self):
     """
     Retrieves the configured map layer selection combo box.
     :return: (QgsMapLayerComboBox) configured layer selection widget. 
     """
     cb = QgsMapLayerComboBox()
     cb.setFilters(QgsMapLayerProxyModel.VectorLayer)
     return cb
Example #20
0
    def setLayerBoxWidget(self):
        self.layerCombo = QgsMapLayerComboBox()
        self.layerCombo.setFilters(QgsMapLayerProxyModel.LineLayer)
        layout = self.layerComboLayout
        layout.addWidget(self.layerCombo)

        self.fieldCombo = QgsFieldComboBox()
        self.layoutForField.addWidget(self.fieldCombo)
Example #21
0
class GtoWidgetQgisLayers(QWidget):
    def __init__(self, gtoObj, parent=None):
        super(GtoWidgetQgisLayers, self).__init__(parent)
        # QWidgetAction.__init__(self,parent)
        self.gtomain = gtoObj.gtomain
        self.info = self.gtomain.info
        self.iface = self.gtomain.iface
        self.canvas = self.iface.mapCanvas()
        self.setSizePolicy(QSizePolicy.Preferred, QSizePolicy.Minimum)

        self.qgsLayers = QgsMapLayerComboBox()
        self.qgsLayers.setMinimumContentsLength(25)
        self.qgsLayers.setMinimumWidth(300)
        self.qgsLayers.setCurrentIndex(-1)
        self.qgsLayers.setFilters(QgsMapLayerProxyModel.VectorLayer)
        #signals
        self.canvas.currentLayerChanged.connect(self.qgsLayers.setLayer)
        self.qgsLayers.layerChanged.connect(self.layer_changed)
        self.canvas.selectionChanged.connect(self.selection_changed)
        # ui
        lay = QHBoxLayout(self)
        self.caption = 'Layer: ({0})'
        self.lblLayer = QLabel('Layer:')
        self.lblLayer.setToolTip("Aktiver Layer (selected features)")
        lay.addWidget(self.lblLayer)
        lay.addWidget(self.qgsLayers)
        self.setLayout(lay)
        # help QgsMapLayerComboBox ..:O
        self.timer = QTimer()
        self.timer.singleShot(100, self._setLayer)

    def selection_changed(self, layer):
        try:
            selcount = len(layer.selectedFeatureIds())
            self.lblLayer.setText(self.caption.format(selcount))
        except Exception as e:
            self.info.err(e)

    def layer_changed(self, layer):
        try:
            if layer is not None:
                self.selection_changed(layer)
                self.iface.setActiveLayer(layer)
                ml = QgsProject.instance().layerTreeRoot().findLayer(
                    layer.id())
                if ml is not None:
                    ml.setItemVisibilityCheckedParentRecursive(True)
        except Exception as e:
            self.info.err(e)

    def _setLayer(self):
        try:
            layer = self.iface.activeLayer()
            if layer is not None:
                self.qgsLayers.setLayer(layer)
        except Exception as e:
            self.info.err(e)
Example #22
0
    def setupUi(self):
        '''
        set up the user interface
        '''
        self.setMinimumWidth(500)
        self.setWindowTitle('Neues Projekt erstellen')

        project_manager = ProjectManager()
        self.project_names = [p.name for p in project_manager.projects]

        layout = QVBoxLayout(self)

        label = QLabel('Name des Projekts')
        self.name_edit = QLineEdit()
        self.name_edit.textChanged.connect(self.validate)
        layout.addWidget(label)
        layout.addWidget(self.name_edit)
        self.path = os.path.join(project_manager.settings.TEMPLATE_PATH,
                                 'projektflaechen')

        hlayout = QHBoxLayout(self)
        label = QLabel('Import der (Teil-)Flächen des Plangebiets')
        self.layer_combo = QgsMapLayerComboBox()
        self.layer_combo.setFilters(QgsMapLayerProxyModel.VectorLayer)

        self.source = None

        self.layer_combo.layerChanged.connect(self.set_layer)
        self.layer_combo.layerChanged.connect(self.validate)
        browse_button = QPushButton('...')
        browse_button.clicked.connect(self.browse_path)
        browse_button.setMaximumWidth(30)
        hlayout.addWidget(self.layer_combo)
        hlayout.addWidget(browse_button)
        layout.addWidget(label)
        layout.addLayout(hlayout)

        self.status_label = QLabel()
        layout.addWidget(self.status_label)

        spacer = QSpacerItem(
            20, 40, QSizePolicy.Minimum, QSizePolicy.Expanding)
        layout.addItem(spacer)

        buttons = QDialogButtonBox(
            QDialogButtonBox.Ok | QDialogButtonBox.Cancel,
            Qt.Horizontal, self)
        self.ok_button = buttons.button(QDialogButtonBox.Ok)
        self.ok_button.setEnabled(False)
        buttons.accepted.connect(self.accept)
        buttons.rejected.connect(self.reject)
        layout.addWidget(buttons)

        if len(self.layer_combo) > 0:
            self.set_layer(self.layer_combo.currentLayer())
        self.layer_combo.setCurrentIndex(0)
Example #23
0
    def initGui(self):
        """Creates application GUI widgets"""
        self.initProcessing()

        self.dock = VertexDockWidget(self.iface.mapCanvas())
        self.iface.addDockWidget(Qt.RightDockWidgetArea, self.dock)
        self.dock.setUserVisible(False)

        self.toolbar = QToolBar(self.tr('Vertex Compare Toolbar'))
        self.toolbar.setObjectName('vertexCompareToolbar')
        self.iface.addToolBar(self.toolbar)

        self.layer_combo = QgsMapLayerComboBox()
        self.layer_combo.setAllowEmptyLayer(True, self.tr('Disabled'))
        self.layer_combo.setFilters(QgsMapLayerProxyModel.PolygonLayer
                                    | QgsMapLayerProxyModel.LineLayer)
        self.layer_combo.setMinimumWidth(
            QFontMetrics(self.layer_combo.font()).width('x') * 40)
        self.layer_combo.setCurrentIndex(0)
        self.layer_combo.layerChanged.connect(self._set_layer)
        self.toolbar.addWidget(self.layer_combo)

        self.show_vertices_action = QAction(self.tr("Show Vertex Numbers"),
                                            self)
        self.show_vertices_action.setIcon(
            GuiUtils.get_icon('show_vertex_numbers.svg'))
        self.show_vertices_action.setCheckable(True)
        self.show_vertices_action.setEnabled(False)
        self.actions.append(self.show_vertices_action)
        self.toolbar.addAction(self.show_vertices_action)
        self.show_vertices_action.toggled.connect(
            self.vertex_highlighter.set_visible)

        self.show_topology_action = QAction(self.tr("Compare Vertices"), self)
        self.show_topology_action.setIcon(GuiUtils.get_icon('topology.svg'))
        self.show_topology_action.setCheckable(True)
        self.actions.append(self.show_topology_action)
        self.toolbar.addAction(self.show_topology_action)
        self.show_topology_action.toggled.connect(
            self.vertex_highlighter.set_topological)

        self.show_dock_action = QAction(self.tr('Show Vertices'),
                                        parent=self.toolbar)
        self.show_dock_action.setIcon(GuiUtils.get_icon('vertex_table.svg'))
        self.toolbar.addAction(self.show_dock_action)
        self.actions.append(self.show_dock_action)
        self.dock.setToggleVisibilityAction(self.show_dock_action)

        self.selection_handler.selection_changed.connect(
            self._selection_changed)
        self.dock.label_filter_changed.connect(self.vertex_highlighter.redraw)
        self.dock.vertex_symbol_changed.connect(self.vertex_highlighter.redraw)
        self.dock.vertex_text_format_changed.connect(
            self.vertex_highlighter.redraw)
        self.dock.selected_vertex_changed.connect(
            self.vertex_highlighter.set_selected_vertex)
Example #24
0
    def setupUi(self, hcmgis_centerline_form):
        hcmgis_centerline_form.setObjectName("hcmgis_centerline_form")
        hcmgis_centerline_form.setWindowModality(QtCore.Qt.ApplicationModal)
        hcmgis_centerline_form.setEnabled(True)
        hcmgis_centerline_form.resize(352, 264)
        hcmgis_centerline_form.setMouseTracking(False)
        self.BtnOKCancel = QtWidgets.QDialogButtonBox(hcmgis_centerline_form)
        self.BtnOKCancel.setGeometry(QtCore.QRect(190, 230, 156, 31))
        self.BtnOKCancel.setStandardButtons(QtWidgets.QDialogButtonBox.Cancel|QtWidgets.QDialogButtonBox.Ok)
        self.BtnOKCancel.setObjectName("BtnOKCancel")
        self.LblInput = QtWidgets.QLabel(hcmgis_centerline_form)
        self.LblInput.setGeometry(QtCore.QRect(10, 7, 331, 16))
        self.LblInput.setObjectName("LblInput")
        self.CboInput = QgsMapLayerComboBox(hcmgis_centerline_form)
        self.CboInput.setGeometry(QtCore.QRect(10, 24, 331, 21))
        self.CboInput.setObjectName("CboInput")
        self.LblInput_2 = QtWidgets.QLabel(hcmgis_centerline_form)
        self.LblInput_2.setGeometry(QtCore.QRect(10, 56, 331, 16))
        self.LblInput_2.setObjectName("LblInput_2")
        self.spinBox = QtWidgets.QSpinBox(hcmgis_centerline_form)
        self.spinBox.setGeometry(QtCore.QRect(10, 73, 331, 22))
        self.spinBox.setLayoutDirection(QtCore.Qt.LeftToRight)
        self.spinBox.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
        self.spinBox.setMinimum(1)
        self.spinBox.setMaximum(10)
        self.spinBox.setObjectName("spinBox")
        self.label = QtWidgets.QLabel(hcmgis_centerline_form)
        self.label.setGeometry(QtCore.QRect(10, 190, 331, 16))
        font = QtGui.QFont()
        font.setBold(False)
        font.setItalic(True)
        font.setWeight(50)
        font.setKerning(False)
        self.label.setFont(font)
        self.label.setObjectName("label")
        self.chksurround = QtWidgets.QCheckBox(hcmgis_centerline_form)
        self.chksurround.setGeometry(QtCore.QRect(10, 110, 331, 20))
        self.chksurround.setChecked(False)
        self.chksurround.setObjectName("chksurround")
        self.lblsurround = QtWidgets.QLabel(hcmgis_centerline_form)
        self.lblsurround.setGeometry(QtCore.QRect(10, 138, 331, 16))
        self.lblsurround.setObjectName("lblsurround")
        self.distance = QtWidgets.QSpinBox(hcmgis_centerline_form)
        self.distance.setGeometry(QtCore.QRect(10, 160, 331, 22))
        self.distance.setLayoutDirection(QtCore.Qt.LeftToRight)
        self.distance.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
        self.distance.setMinimum(1)
        self.distance.setMaximum(1000)
        self.distance.setProperty("value", 2)
        self.distance.setObjectName("distance")

        self.retranslateUi(hcmgis_centerline_form)
        self.BtnOKCancel.accepted.connect(hcmgis_centerline_form.accept)
        self.BtnOKCancel.rejected.connect(hcmgis_centerline_form.reject)
        QtCore.QMetaObject.connectSlotsByName(hcmgis_centerline_form)
Example #25
0
class Ui_hcmgis_fixgeometries_form(object):
    def setupUi(self, hcmgis_fixgeometries_form):
        hcmgis_fixgeometries_form.setObjectName("hcmgis_fixgeometries_form")
        hcmgis_fixgeometries_form.setWindowModality(QtCore.Qt.ApplicationModal)
        hcmgis_fixgeometries_form.setEnabled(True)
        hcmgis_fixgeometries_form.resize(341, 140)
        hcmgis_fixgeometries_form.setMouseTracking(False)
        self.BtnOKCancel = QtWidgets.QDialogButtonBox(
            hcmgis_fixgeometries_form)
        self.BtnOKCancel.setGeometry(QtCore.QRect(175, 100, 156, 31))
        self.BtnOKCancel.setStandardButtons(QtWidgets.QDialogButtonBox.Cancel
                                            | QtWidgets.QDialogButtonBox.Ok)
        self.BtnOKCancel.setObjectName("BtnOKCancel")
        self.LblInput = QtWidgets.QLabel(hcmgis_fixgeometries_form)
        self.LblInput.setGeometry(QtCore.QRect(10, 7, 321, 16))
        self.LblInput.setObjectName("LblInput")
        self.CboInput = QgsMapLayerComboBox(hcmgis_fixgeometries_form)
        self.CboInput.setGeometry(QtCore.QRect(10, 24, 321, 21))
        self.CboInput.setObjectName("CboInput")
        self.LblOutput_3 = QtWidgets.QLabel(hcmgis_fixgeometries_form)
        self.LblOutput_3.setGeometry(QtCore.QRect(10, 50, 321, 16))
        self.LblOutput_3.setObjectName("LblOutput_3")
        self.LinOutput = QtWidgets.QLineEdit(hcmgis_fixgeometries_form)
        self.LinOutput.setEnabled(True)
        self.LinOutput.setGeometry(QtCore.QRect(10, 70, 241, 20))
        self.LinOutput.setMouseTracking(True)
        self.LinOutput.setFocusPolicy(QtCore.Qt.StrongFocus)
        self.LinOutput.setAcceptDrops(False)
        self.LinOutput.setText("")
        self.LinOutput.setReadOnly(False)
        self.LinOutput.setObjectName("LinOutput")
        self.BtnOutput = QtWidgets.QPushButton(hcmgis_fixgeometries_form)
        self.BtnOutput.setEnabled(True)
        self.BtnOutput.setGeometry(QtCore.QRect(260, 70, 71, 21))
        font = QtGui.QFont()
        font.setBold(False)
        font.setWeight(50)
        self.BtnOutput.setFont(font)
        self.BtnOutput.setObjectName("BtnOutput")

        self.retranslateUi(hcmgis_fixgeometries_form)
        self.BtnOKCancel.accepted.connect(hcmgis_fixgeometries_form.accept)
        self.BtnOKCancel.rejected.connect(hcmgis_fixgeometries_form.reject)
        QtCore.QMetaObject.connectSlotsByName(hcmgis_fixgeometries_form)

    def retranslateUi(self, hcmgis_fixgeometries_form):
        _translate = QtCore.QCoreApplication.translate
        hcmgis_fixgeometries_form.setWindowTitle(
            _translate("hcmgis_fixgeometries_form", "Fix Geometries"))
        self.LblInput.setText(
            _translate("hcmgis_fixgeometries_form", "Input Layer"))
        self.LblOutput_3.setText(
            _translate("hcmgis_fixgeometries_form", "Output Shapefile"))
        self.BtnOutput.setText(
            _translate("hcmgis_fixgeometries_form", "Browse..."))
    def setupUi(self, hcmgis_reprojection_form):
        hcmgis_reprojection_form.setObjectName("hcmgis_reprojection_form")
        hcmgis_reprojection_form.setWindowModality(QtCore.Qt.ApplicationModal)
        hcmgis_reprojection_form.setEnabled(True)
        hcmgis_reprojection_form.resize(370, 288)
        hcmgis_reprojection_form.setMouseTracking(False)
        self.verticalLayout = QtWidgets.QVBoxLayout(hcmgis_reprojection_form)
        self.verticalLayout.setSpacing(7)
        self.verticalLayout.setObjectName("verticalLayout")
        self.LblInput = QtWidgets.QLabel(hcmgis_reprojection_form)
        self.LblInput.setObjectName("LblInput")
        self.verticalLayout.addWidget(self.LblInput)
        self.CboInput = QgsMapLayerComboBox(hcmgis_reprojection_form)
        self.CboInput.setShowCrs(True)
        self.CboInput.setObjectName("CboInput")
        self.verticalLayout.addWidget(self.CboInput)
        self.LblOutput_4 = QtWidgets.QLabel(hcmgis_reprojection_form)
        self.LblOutput_4.setObjectName("LblOutput_4")
        self.verticalLayout.addWidget(self.LblOutput_4)
        self.crs = QgsProjectionSelectionWidget(hcmgis_reprojection_form)
        self.crs.setObjectName("crs")
        self.verticalLayout.addWidget(self.crs)
        self.LblOutput_3 = QtWidgets.QLabel(hcmgis_reprojection_form)
        self.LblOutput_3.setObjectName("LblOutput_3")
        self.verticalLayout.addWidget(self.LblOutput_3)
        self.gridLayout = QtWidgets.QGridLayout()
        self.gridLayout.setObjectName("gridLayout")
        self.LinOutput = QtWidgets.QLineEdit(hcmgis_reprojection_form)
        self.LinOutput.setEnabled(True)
        self.LinOutput.setMouseTracking(True)
        self.LinOutput.setFocusPolicy(QtCore.Qt.StrongFocus)
        self.LinOutput.setAcceptDrops(False)
        self.LinOutput.setText("")
        self.LinOutput.setReadOnly(False)
        self.LinOutput.setObjectName("LinOutput")
        self.gridLayout.addWidget(self.LinOutput, 0, 0, 1, 1)
        self.BtnOutput = QtWidgets.QPushButton(hcmgis_reprojection_form)
        self.BtnOutput.setEnabled(True)
        font = QtGui.QFont()
        font.setBold(False)
        font.setWeight(50)
        self.BtnOutput.setFont(font)
        self.BtnOutput.setObjectName("BtnOutput")
        self.gridLayout.addWidget(self.BtnOutput, 0, 1, 1, 1)
        self.verticalLayout.addLayout(self.gridLayout)
        self.BtnOKCancel = QtWidgets.QDialogButtonBox(hcmgis_reprojection_form)
        self.BtnOKCancel.setStandardButtons(QtWidgets.QDialogButtonBox.Cancel
                                            | QtWidgets.QDialogButtonBox.Ok)
        self.BtnOKCancel.setObjectName("BtnOKCancel")
        self.verticalLayout.addWidget(self.BtnOKCancel)

        self.retranslateUi(hcmgis_reprojection_form)
        self.BtnOKCancel.accepted.connect(hcmgis_reprojection_form.accept)
        self.BtnOKCancel.rejected.connect(hcmgis_reprojection_form.reject)
        QtCore.QMetaObject.connectSlotsByName(hcmgis_reprojection_form)
Example #27
0
class OverlapDialog(QDialog, FORM_CLASS):
    def __init__(self, parent=None, iface=None):
        """Constructor."""
        super(OverlapDialog, self).__init__(parent)
        # Set up the user interface from Designer through FORM_CLASS.
        # After self.setupUi() you can access any designer object by doing
        # self.<objectname>, and you can use autoconnect slots - see
        # http://qt-project.org/doc/qt-4.8/designer-using-a-ui-file.html
        # #widgets-and-dialogs-with-auto-connect
        QDialog.__init__(self, parent)
        self.parent = parent
        self.iface = iface
        self.setupUi(self)

        # layer
        self.layer = QgsMapLayerComboBox(parent)
        self.layer.setFilters(QgsMapLayerProxyModel.PolygonLayer)
        # self.layer.layerChanged.connect(self.check_form_validation)

        # output
        self.result.setStorageMode(storageMode=QgsFileWidget.SaveFile)
        self.result.setDialogTitle("Save File")

        # Set up things for ok button
        self.ok_button = self.button_ovelap.button(QDialogButtonBox.Ok)
        # self.ok_button.setEnabled(False)
        self.ok_button.clicked.connect(self.accept)

        # Set up things for cancel button
        self.cancel_button = self.button_ovelap.button(QDialogButtonBox.Cancel)
        self.cancel_button.clicked.connect(self.reject)

    def check_form_validation(self):
        """Slot for in form modif"""

        input_layer = self.layer.currentLayer()
        if input_layer is None:
            self.ok_button.setEnabled(True)
        else:
            self.ok_button.setEnabled(False)

    def accept(self):
        """Method invoked when OK button is clicked."""

        input_layer = self.layer.currentLayer()
        out = self.result.filePath()
        file_out = QgsFileWidget.splitFilePaths(out)
        count_overlap_action(input_layer, out)
        QgsMessageLog.logMessage(
            "Input layer: {} and Output: {}".format(input_layer.name(),
                                                    file_out), 'Footprint',
            Qgis.Info)
        self.close()
Example #28
0
    def widgetFromParameter(self, param):
        paramtype = param["type"]
        if paramtype == FILES:

            def edit(textbox):
                f = QFileDialog.getOpenFileNames(self, "Select file", "",
                                                 "*.*")
                if f:
                    textbox.value = ",".join(f)

            return TextBoxWithLink("Browse", edit, None, True)
        elif paramtype == FOLDER:

            def edit(textbox):
                f = QFileDialog.getExistingDirectory(self, "Select folder", "")
                if f:
                    textbox.value = f

            return TextBoxWithLink("Browse", edit, None, True)
        elif paramtype == BOOL:
            check = QCheckBox(param["label"])
            if param["default"]:
                check.setCheckState(Qt.Checked)
            else:
                check.setCheckState(Qt.Unchecked)
            return check
        elif paramtype == CHOICE:
            combo = QComboBox()
            for option in param["options"]:
                combo.addItem(option)
            idx = combo.findText(str(param["default"]))
            combo.setCurrentIndex(idx)
            return combo
        elif paramtype == TEXT:
            textEdit = QTextEdit()
            textEdit.setPlainText(param["default"])
            return textEdit
        elif paramtype == VECTOR:
            combo = QgsMapLayerComboBox()
            combo.setFilters(QgsMapLayerProxyModel.VectorLayer)
            return combo
        elif paramtype == RASTER:
            combo = QgsMapLayerComboBox()
            combo.setFilters(QgsMapLayerProxyModel.RasterLayer)
            return combo
        elif paramtype == PASSWORD:
            lineEdit = QLineEdit()
            lineEdit.setEchoMode(QLineEdit.Password)
            return lineEdit
        else:
            lineEdit = QLineEdit()
            lineEdit.setText(str(param["default"]))
            return lineEdit
Example #29
0
    def __init__(self, iface):
        """Constructor.

        :param iface: An interface instance that will be passed to this class
            which provides the hook by which you can manipulate the QGIS
            application at run time.
        :type iface: QgsInterface
        """
        # Save reference to the QGIS interface
        self.iface = iface
        # initialize plugin directory
        self.plugin_dir = os.path.dirname(__file__)
        # initialize locale
        locale = QSettings().value('locale/userLocale')[0:2]
        locale_path = os.path.join(
            self.plugin_dir, 'i18n',
            'PotentialSlopeFailure_{}.qm'.format(locale))

        if os.path.exists(locale_path):
            self.translator = QTranslator()
            self.translator.load(locale_path)

            if qVersion() > '4.3.3':
                QCoreApplication.installTranslator(self.translator)

        self.dlg = PotentialSlopeFailureDialog(self.iface)
        self.dlg.runButton.clicked.connect(self.start_progress)
        self.dlg.pushButtonHelp.clicked.connect(self.help)
        self.dlg.pushButtonSave.clicked.connect(self.folder_path)
        self.fileDialog = QFileDialog()
        self.fileDialog.setFileMode(QFileDialog.Directory)
        self.fileDialog.setOption(QFileDialog.ShowDirsOnly, True)

        # Declare instance attributes
        #self.actions = []
        #self.menu = self.tr(u'&Potential Slope Failure')
        # TODO: We are going to let the user set this up in a future iteration
        #self.toolbar = self.iface.addToolBar(u'PotentialSlopeFailure')
        #self.toolbar.setObjectName(u'PotentialSlopeFailure')

        # self.layerComboManagerDEM = RasterLayerCombo(self.dlg.comboBoxDem)
        # RasterLayerCombo(self.dlg.comboBoxDem, initLayer="")
        # self.layerComboManagerSOIL = RasterLayerCombo(self.dlg.comboBoxSoil)
        # RasterLayerCombo(self.dlg.comboBoxSoil, initLayer="")
        self.layerComboManagerDEM = QgsMapLayerComboBox(self.dlg.widgetDEM)
        self.layerComboManagerDEM.setFilters(QgsMapLayerProxyModel.RasterLayer)
        self.layerComboManagerDEM.setFixedWidth(175)
        self.layerComboManagerSOIL = QgsMapLayerComboBox(self.dlg.widgetSOIL)
        self.layerComboManagerSOIL.setFilters(
            QgsMapLayerProxyModel.RasterLayer)
        self.layerComboManagerSOIL.setFixedWidth(175)
        self.folderPath = 'None'
Example #30
0
    def setupUi(self, windowForm):
        windowForm.setObjectName(_fromUtf8("windowForm"))
        windowForm.resize(564, 144)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(windowForm.sizePolicy().hasHeightForWidth())
        windowForm.setSizePolicy(sizePolicy)
        windowForm.setWindowOpacity(1.0)
        windowForm.setAutoFillBackground(False)
        self.gridLayout = QtWidgets.QGridLayout(windowForm)
        self.gridLayout.setObjectName(_fromUtf8("gridLayout"))
        self.label_3 = QtWidgets.QLabel(windowForm)
        self.label_3.setObjectName(_fromUtf8("label_3"))
        self.gridLayout.addWidget(self.label_3, 0, 1, 1, 1)
        self.layersComboBox = QgsMapLayerComboBox(windowForm)
        self.layersComboBox.setObjectName(_fromUtf8("layersComboBox"))
        self.gridLayout.addWidget(self.layersComboBox, 0, 3, 1, 1)
        self.label_2 = QtWidgets.QLabel(windowForm)
        self.label_2.setObjectName(_fromUtf8("label_2"))
        self.gridLayout.addWidget(self.label_2, 2, 1, 1, 1)
        self.label = QtWidgets.QLabel(windowForm)
        self.label.setObjectName(_fromUtf8("label"))
        self.gridLayout.addWidget(self.label, 1, 1, 1, 1)
        self.oldFieldComboBox = QgsFieldComboBox(windowForm)
        self.oldFieldComboBox.setObjectName(_fromUtf8("oldFieldComboBox"))
        self.gridLayout.addWidget(self.oldFieldComboBox, 1, 3, 1, 1)
        self.newFieldLineEdit = QtWidgets.QLineEdit(windowForm)
        self.newFieldLineEdit.setObjectName(_fromUtf8("newFieldLineEdit"))
        self.gridLayout.addWidget(self.newFieldLineEdit, 2, 3, 1, 1)
        self.convertButton = QtWidgets.QPushButton(windowForm)
        font = QtGui.QFont()
        font.setPointSize(10)
        font.setBold(False)
        font.setWeight(50)
        self.convertButton.setFont(font)
        self.convertButton.setDefault(True)
        self.convertButton.setFlat(False)
        self.convertButton.setObjectName(_fromUtf8("convertButton"))
        self.gridLayout.addWidget(self.convertButton, 0, 4, 1, 1)
        self.cancelButton = QtWidgets.QPushButton(windowForm)
        font = QtGui.QFont()
        font.setPointSize(10)
        font.setBold(False)
        font.setWeight(50)
        self.cancelButton.setFont(font)
        self.cancelButton.setObjectName(_fromUtf8("cancelButton"))
        self.gridLayout.addWidget(self.cancelButton, 2, 4, 1, 1)

        self.retranslateUi(windowForm)
        QtCore.QObject.connect(self.cancelButton, QtCore.SIGNAL(_fromUtf8("clicked()")), windowForm.close)
        QtCore.QMetaObject.connectSlotsByName(windowForm)
Example #31
0
class Ui_hcmgis_lec_form(object):
    def setupUi(self, hcmgis_lec_form):
        hcmgis_lec_form.setObjectName("hcmgis_lec_form")
        hcmgis_lec_form.setWindowModality(QtCore.Qt.ApplicationModal)
        hcmgis_lec_form.setEnabled(True)
        hcmgis_lec_form.resize(341, 200)
        hcmgis_lec_form.setMouseTracking(False)
        self.BtnOKCancel = QtWidgets.QDialogButtonBox(hcmgis_lec_form)
        self.BtnOKCancel.setGeometry(QtCore.QRect(175, 160, 156, 31))
        self.BtnOKCancel.setStandardButtons(QtWidgets.QDialogButtonBox.Cancel
                                            | QtWidgets.QDialogButtonBox.Ok)
        self.BtnOKCancel.setObjectName("BtnOKCancel")
        self.LblInput = QtWidgets.QLabel(hcmgis_lec_form)
        self.LblInput.setGeometry(QtCore.QRect(10, 7, 321, 16))
        self.LblInput.setObjectName("LblInput")
        self.CboInput = QgsMapLayerComboBox(hcmgis_lec_form)
        self.CboInput.setGeometry(QtCore.QRect(10, 24, 321, 21))
        self.CboInput.setObjectName("CboInput")
        self.LblOutput_2 = QtWidgets.QLabel(hcmgis_lec_form)
        self.LblOutput_2.setGeometry(QtCore.QRect(10, 54, 321, 16))
        self.LblOutput_2.setObjectName("LblOutput_2")
        self.CboField = QgsFieldComboBox(hcmgis_lec_form)
        self.CboField.setGeometry(QtCore.QRect(10, 70, 321, 21))
        self.CboField.setObjectName("CboField")
        self.outfilename = QtWidgets.QLineEdit(hcmgis_lec_form)
        self.outfilename.setGeometry(QtCore.QRect(10, 120, 231, 21))
        self.outfilename.setText("")
        self.outfilename.setReadOnly(False)
        self.outfilename.setObjectName("outfilename")
        self.browseoutfile = QtWidgets.QPushButton(hcmgis_lec_form)
        self.browseoutfile.setGeometry(QtCore.QRect(250, 117, 81, 26))
        self.browseoutfile.setObjectName("browseoutfile")
        self.label = QtWidgets.QLabel(hcmgis_lec_form)
        self.label.setGeometry(QtCore.QRect(10, 100, 321, 22))
        self.label.setObjectName("label")

        self.retranslateUi(hcmgis_lec_form)
        self.BtnOKCancel.accepted.connect(hcmgis_lec_form.accept)
        self.BtnOKCancel.rejected.connect(hcmgis_lec_form.reject)
        QtCore.QMetaObject.connectSlotsByName(hcmgis_lec_form)

    def retranslateUi(self, hcmgis_lec_form):
        _translate = QtCore.QCoreApplication.translate
        hcmgis_lec_form.setWindowTitle(
            _translate("hcmgis_lec_form", "Largest Empty Circle"))
        self.LblInput.setText(
            _translate("hcmgis_lec_form", "Input Point Layer"))
        self.LblOutput_2.setText(_translate("hcmgis_lec_form", "Unique field"))
        self.browseoutfile.setText(_translate("hcmgis_lec_form", "Browse..."))
        self.label.setText(
            _translate("hcmgis_lec_form", "Output Largest Empty Circle"))
    def add_layer(self):
        i = self.dlg.table.rowCount()
        self.dlg.table.insertRow(i)

        layer = QgsMapLayerComboBox()
        layer.setFilters(QgsMapLayerProxyModel.RasterLayer)
        band = QTableWidgetItem('1')
        band.setFlags(Qt.ItemIsEnabled)
        mean = QDoubleSpinBox()
        mean.setRange(-10000.00,10000.00)

        self.dlg.table.setCellWidget(i, 0, layer)
        self.dlg.table.setItem(i, 1, band)
        self.dlg.table.setCellWidget(i, 2, mean)
    def add_layer(self):
        i = self.dlg.table.rowCount()
        self.dlg.table.insertRow(i)

        layer = QgsMapLayerComboBox()
        layer.setFilters(QgsMapLayerProxyModel.RasterLayer)
        band = QTableWidgetItem('1')
        band.setFlags(Qt.ItemIsEnabled)
        mean = QDoubleSpinBox()
        mean.setRange(-10000.00, 10000.00)

        self.dlg.table.setCellWidget(i, 0, layer)
        self.dlg.table.setItem(i, 1, band)
        self.dlg.table.setCellWidget(i, 2, mean)
    def __init__(self, parent=None):
        QDialog.__init__(self, parent)

        self.resize(500, 100)
        self.setWindowTitle("Settings")

        layout = QGridLayout(self)

        csTargetLayerName = getCSLayerName()
        bufferTargetLayerName = getRZLayerName()

        csLable = QLabel("Compressor staitions layer:")
        csLable.setSizePolicy(QSizePolicy.Fixed, QSizePolicy.Fixed)
        layout.addWidget(csLable, 0, 0)
        self.__csLayerName = QgsMapLayerComboBox()
        self.__csLayerName.setEditable(True)
        self.__csLayerName.setFilters(QgsMapLayerProxyModel.PointLayer)
        self.__csLayerName.setEditText(csTargetLayerName)
        self.__csLayerName.layerChanged.connect(self.csLayerChooze)
        self.__csLayerName.editTextChanged.connect(self.csLayernameSave)
        self.__csLayerName.setSizePolicy(QSizePolicy.Preferred, QSizePolicy.Fixed)
        layout.addWidget(self.__csLayerName, 0, 1)

        self.__csIdField = QgsFieldComboBox()
        self.__csIdField.setEditable(True)
        self.__csIdField.fieldChanged.connect(self.csIdFiledChooze)
        self.__csIdField.editTextChanged.connect(self.csIdFieldSave)
        self.__csIdField.setSizePolicy(QSizePolicy.Fixed, QSizePolicy.Fixed)
        self.csIdFieldFill()
        layout.addWidget(self.__csIdField, 0, 2)

        bufferLable = QLabel("Buffer layer:")
        bufferLable.setSizePolicy(QSizePolicy.Fixed, QSizePolicy.Fixed)
        layout.addWidget(bufferLable, 1, 0)
        # self.__bufferLayerName = QLineEdit(bufferTargetLayerName, self)
        # self.__bufferLayerName.editingFinished.connect(self.bufferTargetLayernameSave)
        self.__bufferLayerName = QgsMapLayerComboBox()
        self.__bufferLayerName.setEditable(True)
        self.__bufferLayerName.setFilters(QgsMapLayerProxyModel.PolygonLayer)
        self.__bufferLayerName.setEditText(bufferTargetLayerName)
        self.__bufferLayerName.layerChanged.connect(self.bufferLayerChooze)
        self.__bufferLayerName.editTextChanged.connect(self.bufferLayernameSave)
        layout.addWidget(self.__bufferLayerName, 1, 1)
class LayerSelectionDialog(QDialog):

    def __init__(self, parent=None):
        super().__init__(parent)
        self.setWindowTitle(self.tr('Select Extent'))

        vl = QVBoxLayout()
        vl.addWidget(QLabel(self.tr('Use extent from')))
        self.combo = QgsMapLayerComboBox()
        self.combo.setFilters(
            QgsMapLayerProxyModel.HasGeometry | QgsMapLayerProxyModel.RasterLayer | QgsMapLayerProxyModel.MeshLayer)
        self.combo.setShowCrs(ProcessingConfig.getSetting(ProcessingConfig.SHOW_CRS_DEF))
        vl.addWidget(self.combo)

        self.button_box = QDialogButtonBox()
        self.button_box.setStandardButtons(QDialogButtonBox.Cancel | QDialogButtonBox.Ok)
        self.button_box.accepted.connect(self.accept)
        self.button_box.rejected.connect(self.reject)

        vl.addWidget(self.button_box)
        self.setLayout(vl)

    def selected_layer(self):
        return self.combo.currentLayer()
    def setupUi(self, DsgRasterInfoTool):
        DsgRasterInfoTool.setObjectName(_fromUtf8("DsgRasterInfoTool"))
        DsgRasterInfoTool.resize(309, 49)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Preferred, QtGui.QSizePolicy.MinimumExpanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(DsgRasterInfoTool.sizePolicy().hasHeightForWidth())
        DsgRasterInfoTool.setSizePolicy(sizePolicy)
        DsgRasterInfoTool.setMinimumSize(QtCore.QSize(0, 20))
        DsgRasterInfoTool.setMaximumSize(QtCore.QSize(468, 50))
        DsgRasterInfoTool.setToolTip(_fromUtf8(""))
        self.gridLayout = QtGui.QGridLayout(DsgRasterInfoTool)
        self.gridLayout.setObjectName(_fromUtf8("gridLayout"))
        self.rasterInfoPushButton = QtGui.QPushButton(DsgRasterInfoTool)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed, QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.rasterInfoPushButton.sizePolicy().hasHeightForWidth())
        self.rasterInfoPushButton.setSizePolicy(sizePolicy)
        self.rasterInfoPushButton.setMinimumSize(QtCore.QSize(32, 20))
        self.rasterInfoPushButton.setMaximumSize(QtCore.QSize(32, 32))
        self.rasterInfoPushButton.setText(_fromUtf8(""))
        icon = QtGui.QIcon()
        icon.addPixmap(QtGui.QPixmap(_fromUtf8(":/plugins/DsgTools/icons/rasterToolTip.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.rasterInfoPushButton.setIcon(icon)
        self.rasterInfoPushButton.setIconSize(QtCore.QSize(20, 28))
        self.rasterInfoPushButton.setCheckable(True)
        self.rasterInfoPushButton.setObjectName(_fromUtf8("rasterInfoPushButton"))
        self.gridLayout.addWidget(self.rasterInfoPushButton, 0, 0, 1, 1)
        self.splitter = QtGui.QSplitter(DsgRasterInfoTool)
        self.splitter.setOrientation(QtCore.Qt.Horizontal)
        self.splitter.setObjectName(_fromUtf8("splitter"))
        self.rasterComboBox = QgsMapLayerComboBox(self.splitter)
        self.rasterComboBox.setFilters(QgsMapLayerProxyModel.RasterLayer)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.MinimumExpanding, QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.rasterComboBox.sizePolicy().hasHeightForWidth())
        self.rasterComboBox.setSizePolicy(sizePolicy)
        self.rasterComboBox.setMinimumSize(QtCore.QSize(0, 20))
        self.rasterComboBox.setMaximumSize(QtCore.QSize(16777215, 32))
        self.rasterComboBox.setObjectName(_fromUtf8("rasterComboBox"))
        self.bandTooltipButton = QtGui.QPushButton(self.splitter)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed, QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.bandTooltipButton.sizePolicy().hasHeightForWidth())
        self.bandTooltipButton.setSizePolicy(sizePolicy)
        self.bandTooltipButton.setMinimumSize(QtCore.QSize(32, 20))
        self.bandTooltipButton.setMaximumSize(QtCore.QSize(32, 32))
        self.bandTooltipButton.setText(_fromUtf8(""))
        icon1 = QtGui.QIcon()
        icon1.addPixmap(QtGui.QPixmap(_fromUtf8(":/plugins/DsgTools/icons/band_tooltip.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.bandTooltipButton.setIcon(icon1)
        self.bandTooltipButton.setIconSize(QtCore.QSize(20, 20))
        self.bandTooltipButton.setCheckable(True)
        self.bandTooltipButton.setObjectName(_fromUtf8("bandTooltipButton"))
        self.dynamicHistogramButton = QtGui.QPushButton(self.splitter)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed, QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.dynamicHistogramButton.sizePolicy().hasHeightForWidth())
        self.dynamicHistogramButton.setSizePolicy(sizePolicy)
        self.dynamicHistogramButton.setMinimumSize(QtCore.QSize(32, 20))
        self.dynamicHistogramButton.setMaximumSize(QtCore.QSize(32, 32))
        self.dynamicHistogramButton.setText(_fromUtf8(""))
        icon2 = QtGui.QIcon()
        icon2.addPixmap(QtGui.QPixmap(_fromUtf8(":/plugins/DsgTools/icons/histogram.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.dynamicHistogramButton.setIcon(icon2)
        self.dynamicHistogramButton.setIconSize(QtCore.QSize(20, 20))
        self.dynamicHistogramButton.setCheckable(True)
        self.dynamicHistogramButton.setObjectName(_fromUtf8("dynamicHistogramButton"))
        self.gridLayout.addWidget(self.splitter, 0, 1, 1, 1)

        self.valueSetterButton = QtGui.QPushButton(self.splitter)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed, QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.valueSetterButton.sizePolicy().hasHeightForWidth())
        self.valueSetterButton.setSizePolicy(sizePolicy)
        self.valueSetterButton.setMinimumSize(QtCore.QSize(32, 20))
        self.valueSetterButton.setMaximumSize(QtCore.QSize(32, 32))
        self.valueSetterButton.setText(_fromUtf8(""))
        icon2 = QtGui.QIcon()
        icon2.addPixmap(QtGui.QPixmap(_fromUtf8(":/plugins/DsgTools/icons/valueSetter.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.valueSetterButton.setIcon(icon2)
        self.valueSetterButton.setIconSize(QtCore.QSize(40, 40))
        self.valueSetterButton.setCheckable(True)
        self.valueSetterButton.setObjectName(_fromUtf8("valueSetterButton"))
        self.gridLayout.addWidget(self.splitter, 0, 2, 1, 1)

        self.retranslateUi(DsgRasterInfoTool)
        QtCore.QMetaObject.connectSlotsByName(DsgRasterInfoTool)
Example #37
0
 def setupUi(self, form1):
     form1.setObjectName(_fromUtf8("form1"))
     form1.resize(400, 253)
     form1.setFocusPolicy(QtCore.Qt.TabFocus)
     form1.setWindowTitle(_fromUtf8("Kuwahara filter"))
     icon = QtGui.QIcon()
     icon.addPixmap(QtGui.QPixmap(_fromUtf8(":/qgis.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
     form1.setWindowIcon(icon)
     self.label = QLabel(form1)
     self.label.setGeometry(QtCore.QRect(21, 10, 111, 20))
     font = QtGui.QFont()
     font.setPointSize(10)
     self.label.setFont(font)
     self.label.setToolTip(_fromUtf8(""))
     self.label.setObjectName(_fromUtf8("label"))
     self.outputb = QPushButton(form1)
     self.outputb.setGeometry(QtCore.QRect(320, 47, 31, 23))
     self.outputb.setObjectName(_fromUtf8("outputb"))
     self.label_2 = QLabel(form1)
     self.label_2.setGeometry(QtCore.QRect(22, 49, 101, 20))
     font = QtGui.QFont()
     font.setPointSize(10)
     self.label_2.setFont(font)
     self.label_2.setToolTip(_fromUtf8(""))
     self.label_2.setObjectName(_fromUtf8("label_2"))
     self.progressBar = QProgressBar(form1)
     self.progressBar.setGeometry(QtCore.QRect(19, 220, 361, 23))
     self.progressBar.setProperty(_fromUtf8("value"), 24)
     self.progressBar.setObjectName(_fromUtf8("progressBar"))
     self.label_3 = QLabel(form1)
     self.label_3.setGeometry(QtCore.QRect(22, 88, 131, 20))
     font = QtGui.QFont()
     font.setPointSize(10)
     self.label_3.setFont(font)
     self.label_3.setObjectName(_fromUtf8("label_3"))
     self.label_4 = QLabel(form1)
     self.label_4.setGeometry(QtCore.QRect(21, 125, 181, 20))
     font = QtGui.QFont()
     font.setPointSize(10)
     self.label_4.setFont(font)
     self.label_4.setObjectName(_fromUtf8("label_4"))
     self.run = QPushButton(form1)
     self.run.setGeometry(QtCore.QRect(139, 185, 101, 23))
     self.run.setObjectName(_fromUtf8("run"))
     self.inputbox = QgsMapLayerComboBox(form1)
     self.inputbox.setGeometry(QtCore.QRect(141, 10, 170, 22))
     self.inputbox.setObjectName(_fromUtf8("input"))
     self.output = QLineEdit(form1)
     self.output.setGeometry(QtCore.QRect(149, 45, 160, 28))
     self.output.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignVCenter)
     self.output.setObjectName(_fromUtf8("output"))
     self.refb = QLineEdit(form1)
     self.refb.setGeometry(QtCore.QRect(149, 82, 160, 28))
     self.refb.setObjectName(_fromUtf8("refb"))
     self.mem = QLineEdit(form1)
     self.mem.setGeometry(QtCore.QRect(208, 120, 101, 28))
     self.mem.setObjectName(_fromUtf8("mem"))
     self.addout = QCheckBox(form1)
     self.addout.setGeometry(QtCore.QRect(100, 158, 171, 17))
     self.addout.setChecked(True)
     self.addout.setObjectName(_fromUtf8("checkBox"))
     self.inputb = QPushButton(form1)
     self.inputb.setGeometry(QtCore.QRect(320, 10, 31, 23))
     self.inputb.setObjectName(_fromUtf8("inputb"))
     self.retranslateUi(form1)
     self.setWindowFlags(QtCore.Qt.WindowFlags(QtCore.Qt.WindowMinimizeButtonHint | QtCore.Qt.WindowMaximizeButtonHint | QtCore.Qt.WindowCloseButtonHint))
     QtCore.QMetaObject.connectSlotsByName(form1)
Example #38
0
class Dialog(QtGui.QDialog):
    def __init__(
            self,
            curPointsLayerFrom,
            curPointsLayerTo,
            curFNIdFrom,
            curFNLink,
            curFNIdTo,
            curResultLayerName,
            parent=None):
        QtGui.QDialog.__init__(self, parent)

        self.resize(500, 200)

        self.setWindowTitle(QgisPlugin().pluginName)
        self.__mainLayout = QtGui.QVBoxLayout(self)
        self.__layout = QtGui.QGridLayout(self)

        l1 = QtGui.QLabel(self.tr(u"Point layer 'FROM'") + ":")
        l1.setSizePolicy(
            QtGui.QSizePolicy.Preferred,
            QtGui.QSizePolicy.Fixed
        )
        self.__layout.addWidget(l1, 0, 0)
        self.pointsLayerFrom = QgsMapLayerComboBox()
        self.pointsLayerFrom.setSizePolicy(
            QtGui.QSizePolicy.Expanding,
            QtGui.QSizePolicy.Fixed
        )
        self.pointsLayerFrom.setFilters(QgsMapLayerProxyModel.PointLayer)
        self.pointsLayerFrom.setEditable(True)
        # self.pointsLayerFrom.setEditText(curPointsLayerFrom)
        self.pointsLayerFrom.layerChanged.connect(self.choozeLayerFrom)
        self.__layout.addWidget(self.pointsLayerFrom, 0, 1)

        l2 = QtGui.QLabel(self.tr(u"Point layer 'TO'") + ":")
        l2.setSizePolicy(
            QtGui.QSizePolicy.Preferred,
            QtGui.QSizePolicy.Fixed
        )
        self.__layout.addWidget(l2, 1, 0)
        self.pointsLayerTo = QgsMapLayerComboBox()
        self.pointsLayerTo.setSizePolicy(
            QtGui.QSizePolicy.Expanding,
            QtGui.QSizePolicy.Fixed
        )
        self.pointsLayerTo.setFilters(QgsMapLayerProxyModel.PointLayer)
        self.pointsLayerTo.setEditable(True)
        # self.pointsLayerTo.setEditText(curPointsLayerTo)
        self.pointsLayerTo.layerChanged.connect(self.choozeLayerTo)
        self.__layout.addWidget(self.pointsLayerTo, 1, 1)

        self.__layout.addWidget(
            QtGui.QLabel(self.tr(u"Point 'FROM' id field") + ":"),
            2, 0
        )
        self.fnIdFrom = QgsFieldComboBox()
        self.fnIdFrom.setFilters(QgsFieldProxyModel.Int | QgsFieldProxyModel.LongLong)
        self.fnIdFrom.setEditable(True)
        # self.fnIdFrom.setEditText(curFNIdFrom)
        self.fnIdFrom.fieldChanged.connect(self.filedChooze)
        self.__layout.addWidget(self.fnIdFrom, 2, 1)

        self.__layout.addWidget(
            QtGui.QLabel(self.tr(u"Link field") + ":"),
            3, 0
        )
        self.fnLink = QgsFieldComboBox()
        self.fnLink.setFilters(QgsFieldProxyModel.Int | QgsFieldProxyModel.LongLong)
        self.fnLink.setEditable(True)
        # self.fnLink.setEditText(curFNLink)
        self.fnLink.fieldChanged.connect(self.filedChooze)
        self.__layout.addWidget(self.fnLink, 3, 1)

        self.__layout.addWidget(
            QtGui.QLabel(self.tr(u"Point 'TO' id field") + ":"), 4, 0)
        self.fnIdTo = QgsFieldComboBox()
        self.fnIdTo.setFilters(QgsFieldProxyModel.Int | QgsFieldProxyModel.LongLong)
        self.fnIdTo.setEditable(True)
        # self.fnIdTo.setEditText(curFNIdTo)
        self.fnIdTo.fieldChanged.connect(self.filedChooze)
        self.__layout.addWidget(self.fnIdTo, 4, 1)

        self.__layout.addWidget(
            QtGui.QLabel(self.tr(u"Save result in layer") + ":"),
            5, 0
        )
        self.linesLayer = QgsMapLayerComboBox()
        self.linesLayer.setSizePolicy(
            QtGui.QSizePolicy.Expanding,
            QtGui.QSizePolicy.Fixed
        )
        self.linesLayer.setFilters(QgsMapLayerProxyModel.LineLayer)
        self.linesLayer.setEditable(True)
        self.linesLayer.layerChanged.connect(self.choozeResultLayer)
        self.__layout.addWidget(self.linesLayer, 5, 1)

        # self.__layout4resultFileChoose = QtGui.QHBoxLayout()
        # self.leResultFilename = QtGui.QLineEdit(curResultFilename)
        # self.__layout4resultFileChoose.addWidget(self.leResultFilename)
        # self.pbChooseResultFilename = QtGui.QPushButton(u"Выбрать")
        # self.pbChooseResultFilename.released.connect(self.chooseResultFilename)
        # self.__layout4resultFileChoose.addWidget(self.pbChooseResultFilename)
        # self.__layout.addLayout(self.__layout4resultFileChoose, 6, 0, 2, 0)

        self.pointsLayerFrom.layerChanged.connect(self.fnIdFrom.setLayer)
        self.pointsLayerFrom.layerChanged.connect(self.fnLink.setLayer)

        self.pointsLayerTo.layerChanged.connect(self.fnIdTo.setLayer)

        self.__mainLayout.addLayout(self.__layout)

        self.__bbox = QtGui.QDialogButtonBox(QtGui.QDialogButtonBox.Ok)
        self.__bbox.setSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
        self.__bbox.accepted.connect(self.accept)
        self.__mainLayout.addWidget(self.__bbox)

        self.fillControls(
            curPointsLayerFrom,
            curPointsLayerTo,
            curFNIdFrom,
            curFNLink,
            curFNIdTo,
            curResultLayerName
        )

    def fillControls(
        self,
        curPointsLayerFrom,
        curPointsLayerTo,
        curFNIdFrom,
        curFNLink,
        curFNIdTo,
        curResultLayerName
    ):
        QgisPlugin().plPrint("curPointsLayerFrom: " + curPointsLayerFrom)
        QgisPlugin().plPrint("curPointsLayerTo: " + curPointsLayerTo)
        QgisPlugin().plPrint("curFNIdFrom: " + curPointsLayerFrom)
        QgisPlugin().plPrint("curFNLink: " + curFNIdFrom)
        QgisPlugin().plPrint("curPointsLayerFrom: " + curFNLink)
        QgisPlugin().plPrint("curFNIdTo: " + curFNIdTo)
        QgisPlugin().plPrint("curResultLayerName: " + curResultLayerName)

        layerFrom = self.getQGISLayer(curPointsLayerFrom)
        layerTo = self.getQGISLayer(curPointsLayerTo)
        layerResult = self.getQGISLayer(curResultLayerName, True)

        if layerFrom is None:
            self.pointsLayerFrom.setCurrentIndex(-1)
            self.pointsLayerFrom.setEditText(curPointsLayerFrom)
        else:
            self.pointsLayerFrom.setLayer(layerFrom)

        if layerTo is None:
            self.pointsLayerTo.setCurrentIndex(-1)
            self.pointsLayerTo.setEditText(curPointsLayerTo)
        else:
            self.pointsLayerTo.setLayer(layerTo)

        if layerResult is None:
            self.linesLayer.setCurrentIndex(-1)
            self.linesLayer.setEditText(curResultLayerName)
        else:
            self.linesLayer.setLayer(layerResult)

        # self.fnIdFrom.clear()
        # self.fnLink.clear()
        # self.fnIdTo.clear()

        # self.fnIdFrom.setField(curFNIdFrom)
        self.fnIdFrom.setCurrentIndex(-1)
        self.fnIdFrom.setEditText(curFNIdFrom)
        # self.fnLink.setField(curFNLink)
        self.fnLink.setCurrentIndex(-1)
        self.fnLink.setEditText(curFNLink)
        # self.fnIdTo.setField(curFNIdTo)
        self.fnIdTo.setCurrentIndex(-1)
        self.fnIdTo.setEditText(curFNIdTo)

    def getQGISLayer(self, layerName, silent=False):
        if layerName is None:
            return
        if layerName == "":
            return

        layers = QgsMapLayerRegistry.instance().mapLayersByName(layerName)
        if len(layers) == 0:
            if silent is False:
                QgisPlugin().showMessageForUser(
                    self.tr(u"Layer with name '%s' not found!") % layerName,
                    QgsMessageBar.CRITICAL,
                    0
                )
            return None
        return layers[0]

    def choozeLayerFrom(self, qgsMapLayer):
        self.pointsLayerFrom.setEditText(qgsMapLayer.name())

    def choozeLayerTo(self, qgsMapLayer):
        self.pointsLayerTo.setEditText(qgsMapLayer.name())

    def choozeResultLayer(self, qgsMapLayer):
        self.linesLayer.setEditText(qgsMapLayer.name())

    def filedChooze(self, fieldName):
        self.sender().setEditText(fieldName)

    def chooseResultFilename(self):
        filename = QtGui.QFileDialog.getSaveFileName(
            self,
            self.tr(u"Choose file for save result"),
            self.curResultFilename
            # QtCore.QFileInfo(self.curResultFilename).absolutePath()
        )
        self.leResultFilename.setText(filename)

    def getSettings(self):
        return [
            self.pointsLayerFrom.currentText(),
            self.pointsLayerTo.currentText(),
            self.fnIdFrom.currentText(),
            self.fnLink.currentText(),
            self.fnIdTo.currentText(),
            self.linesLayer.currentText(),
        ]
    def setupUi(self, ContourDialog):
        ContourDialog.setObjectName("ContourDialog")
        ContourDialog.setWindowModality(QtCore.Qt.NonModal)
        ContourDialog.resize(655, 742)
        ContourDialog.setSizeGripEnabled(True)
        self.verticalLayout = QtWidgets.QVBoxLayout(ContourDialog)
        self.verticalLayout.setObjectName("verticalLayout")
        self.scrollArea_2 = QtWidgets.QScrollArea(ContourDialog)
        self.scrollArea_2.setHorizontalScrollBarPolicy(QtCore.Qt.ScrollBarAlwaysOff)
        self.scrollArea_2.setWidgetResizable(True)
        self.scrollArea_2.setObjectName("scrollArea_2")
        self.scrollAreaWidgetContents_2 = QtWidgets.QWidget()
        self.scrollAreaWidgetContents_2.setGeometry(QtCore.QRect(0, 0, 641, 654))
        self.scrollAreaWidgetContents_2.setObjectName("scrollAreaWidgetContents_2")
        self.verticalLayout_2 = QtWidgets.QVBoxLayout(self.scrollAreaWidgetContents_2)
        self.verticalLayout_2.setObjectName("verticalLayout_2")
        self.groupBox_2 = QtWidgets.QGroupBox(self.scrollAreaWidgetContents_2)
        self.groupBox_2.setObjectName("groupBox_2")
        self.gridLayout = QtWidgets.QGridLayout(self.groupBox_2)
        self.gridLayout.setObjectName("gridLayout")
        self.formLayout_2 = QtWidgets.QFormLayout()
        self.formLayout_2.setFieldGrowthPolicy(QtWidgets.QFormLayout.AllNonFixedFieldsGrow)
        self.formLayout_2.setContentsMargins(-1, 0, -1, -1)
        self.formLayout_2.setObjectName("formLayout_2")
        self.label_3 = QtWidgets.QLabel(self.groupBox_2)
        self.label_3.setObjectName("label_3")
        self.formLayout_2.setWidget(1, QtWidgets.QFormLayout.LabelRole, self.label_3)
        self.uSourceLayer = QgsMapLayerComboBox(self.groupBox_2)
        self.uSourceLayer.setObjectName("uSourceLayer")
        self.formLayout_2.setWidget(1, QtWidgets.QFormLayout.FieldRole, self.uSourceLayer)
        self.label_4 = QtWidgets.QLabel(self.groupBox_2)
        self.label_4.setObjectName("label_4")
        self.formLayout_2.setWidget(3, QtWidgets.QFormLayout.LabelRole, self.label_4)
        self.uDataField = QgsFieldExpressionWidget(self.groupBox_2)
        self.uDataField.setObjectName("uDataField")
        self.formLayout_2.setWidget(3, QtWidgets.QFormLayout.FieldRole, self.uDataField)
        self.uSelectedOnly = QtWidgets.QCheckBox(self.groupBox_2)
        self.uSelectedOnly.setObjectName("uSelectedOnly")
        self.formLayout_2.setWidget(4, QtWidgets.QFormLayout.FieldRole, self.uSelectedOnly)
        self.gridLayout.addLayout(self.formLayout_2, 1, 0, 1, 1)
        self.horizontalLayout = QtWidgets.QHBoxLayout()
        self.horizontalLayout.setObjectName("horizontalLayout")
        self.label_2 = QtWidgets.QLabel(self.groupBox_2)
        self.label_2.setObjectName("label_2")
        self.horizontalLayout.addWidget(self.label_2)
        self.uRemoveDuplicates = QtWidgets.QCheckBox(self.groupBox_2)
        self.uRemoveDuplicates.setText("")
        self.uRemoveDuplicates.setObjectName("uRemoveDuplicates")
        self.horizontalLayout.addWidget(self.uRemoveDuplicates)
        self.label_11 = QtWidgets.QLabel(self.groupBox_2)
        self.label_11.setObjectName("label_11")
        self.horizontalLayout.addWidget(self.label_11)
        self.uDuplicateTolerance = QtWidgets.QDoubleSpinBox(self.groupBox_2)
        self.uDuplicateTolerance.setDecimals(3)
        self.uDuplicateTolerance.setMinimum(0.001)
        self.uDuplicateTolerance.setMaximum(99999.999)
        self.uDuplicateTolerance.setSingleStep(0.001)
        self.uDuplicateTolerance.setProperty("value", 0.001)
        self.uDuplicateTolerance.setObjectName("uDuplicateTolerance")
        self.horizontalLayout.addWidget(self.uDuplicateTolerance)
        self.uUseGridLabel = QtWidgets.QLabel(self.groupBox_2)
        self.uUseGridLabel.setEnabled(True)
        self.uUseGridLabel.setObjectName("uUseGridLabel")
        self.horizontalLayout.addWidget(self.uUseGridLabel)
        self.uUseGrid = QtWidgets.QCheckBox(self.groupBox_2)
        self.uUseGrid.setText("")
        self.uUseGrid.setObjectName("uUseGrid")
        self.horizontalLayout.addWidget(self.uUseGrid)
        spacerItem = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
        self.horizontalLayout.addItem(spacerItem)
        self.gridLayout.addLayout(self.horizontalLayout, 3, 0, 1, 1)
        self.uLayerDescription = QtWidgets.QLabel(self.groupBox_2)
        self.uLayerDescription.setText("")
        self.uLayerDescription.setObjectName("uLayerDescription")
        self.gridLayout.addWidget(self.uLayerDescription, 4, 0, 1, 1)
        self.verticalLayout_2.addWidget(self.groupBox_2)
        self.groupBox = QtWidgets.QGroupBox(self.scrollAreaWidgetContents_2)
        self.groupBox.setObjectName("groupBox")
        self.gridLayout_2 = QtWidgets.QGridLayout(self.groupBox)
        self.gridLayout_2.setObjectName("gridLayout_2")
        self.horizontalLayout_7 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_7.setObjectName("horizontalLayout_7")
        self.uLinesContours = QtWidgets.QRadioButton(self.groupBox)
        self.uLinesContours.setObjectName("uLinesContours")
        self.horizontalLayout_7.addWidget(self.uLinesContours)
        self.uFilledContours = QtWidgets.QRadioButton(self.groupBox)
        self.uFilledContours.setObjectName("uFilledContours")
        self.horizontalLayout_7.addWidget(self.uFilledContours)
        self.uBoth = QtWidgets.QRadioButton(self.groupBox)
        self.uBoth.setObjectName("uBoth")
        self.horizontalLayout_7.addWidget(self.uBoth)
        self.uLayerContours = QtWidgets.QRadioButton(self.groupBox)
        self.uLayerContours.setObjectName("uLayerContours")
        self.horizontalLayout_7.addWidget(self.uLayerContours)
        spacerItem1 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
        self.horizontalLayout_7.addItem(spacerItem1)
        self.gridLayout_2.addLayout(self.horizontalLayout_7, 0, 0, 1, 3)
        spacerItem2 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding)
        self.gridLayout_2.addItem(spacerItem2, 10, 1, 1, 1)
        self.label_5 = QtWidgets.QLabel(self.groupBox)
        self.label_5.setObjectName("label_5")
        self.gridLayout_2.addWidget(self.label_5, 5, 0, 1, 1)
        self.label = QtWidgets.QLabel(self.groupBox)
        self.label.setObjectName("label")
        self.gridLayout_2.addWidget(self.label, 3, 0, 1, 1)
        self.uNContour = QtWidgets.QSpinBox(self.groupBox)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.uNContour.sizePolicy().hasHeightForWidth())
        self.uNContour.setSizePolicy(sizePolicy)
        self.uNContour.setMinimum(1)
        self.uNContour.setMaximum(9999)
        self.uNContour.setProperty("value", 10)
        self.uNContour.setObjectName("uNContour")
        self.gridLayout_2.addWidget(self.uNContour, 3, 1, 1, 1)
        self.label_10 = QtWidgets.QLabel(self.groupBox)
        self.label_10.setObjectName("label_10")
        self.gridLayout_2.addWidget(self.label_10, 8, 0, 1, 1)
        self.uExtend = QtWidgets.QComboBox(self.groupBox)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.uExtend.sizePolicy().hasHeightForWidth())
        self.uExtend.setSizePolicy(sizePolicy)
        self.uExtend.setObjectName("uExtend")
        self.gridLayout_2.addWidget(self.uExtend, 8, 1, 1, 1)
        self.horizontalLayout_6 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_6.setContentsMargins(-1, 0, -1, -1)
        self.horizontalLayout_6.setObjectName("horizontalLayout_6")
        self.uSetMaximum = QtWidgets.QCheckBox(self.groupBox)
        self.uSetMaximum.setObjectName("uSetMaximum")
        self.horizontalLayout_6.addWidget(self.uSetMaximum)
        self.uMaxContour = QtWidgets.QDoubleSpinBox(self.groupBox)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.uMaxContour.sizePolicy().hasHeightForWidth())
        self.uMaxContour.setSizePolicy(sizePolicy)
        self.uMaxContour.setLocale(QtCore.QLocale(QtCore.QLocale.C, QtCore.QLocale.AnyCountry))
        self.uMaxContour.setDecimals(4)
        self.uMaxContour.setMinimum(-999999999.0)
        self.uMaxContour.setMaximum(999999999.0)
        self.uMaxContour.setObjectName("uMaxContour")
        self.horizontalLayout_6.addWidget(self.uMaxContour)
        self.gridLayout_2.addLayout(self.horizontalLayout_6, 7, 1, 1, 1)
        self.label_7 = QtWidgets.QLabel(self.groupBox)
        self.label_7.setObjectName("label_7")
        self.gridLayout_2.addWidget(self.label_7, 1, 0, 1, 1)
        self.uMethod = QtWidgets.QComboBox(self.groupBox)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.uMethod.sizePolicy().hasHeightForWidth())
        self.uMethod.setSizePolicy(sizePolicy)
        self.uMethod.setObjectName("uMethod")
        self.gridLayout_2.addWidget(self.uMethod, 1, 1, 1, 1)
        self.horizontalLayout_5 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_5.setContentsMargins(-1, 0, -1, -1)
        self.horizontalLayout_5.setSpacing(10)
        self.horizontalLayout_5.setObjectName("horizontalLayout_5")
        self.uSetMinimum = QtWidgets.QCheckBox(self.groupBox)
        self.uSetMinimum.setObjectName("uSetMinimum")
        self.horizontalLayout_5.addWidget(self.uSetMinimum)
        self.uMinContour = QtWidgets.QDoubleSpinBox(self.groupBox)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.uMinContour.sizePolicy().hasHeightForWidth())
        self.uMinContour.setSizePolicy(sizePolicy)
        self.uMinContour.setLocale(QtCore.QLocale(QtCore.QLocale.C, QtCore.QLocale.AnyCountry))
        self.uMinContour.setDecimals(4)
        self.uMinContour.setMinimum(-999999999.0)
        self.uMinContour.setMaximum(999999999.0)
        self.uMinContour.setObjectName("uMinContour")
        self.horizontalLayout_5.addWidget(self.uMinContour)
        self.gridLayout_2.addLayout(self.horizontalLayout_5, 5, 1, 1, 1)
        self.label_6 = QtWidgets.QLabel(self.groupBox)
        self.label_6.setObjectName("label_6")
        self.gridLayout_2.addWidget(self.label_6, 7, 0, 1, 1)
        self.uContourInterval = QtWidgets.QDoubleSpinBox(self.groupBox)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.uContourInterval.sizePolicy().hasHeightForWidth())
        self.uContourInterval.setSizePolicy(sizePolicy)
        self.uContourInterval.setLocale(QtCore.QLocale(QtCore.QLocale.C, QtCore.QLocale.AnyCountry))
        self.uContourInterval.setDecimals(4)
        self.uContourInterval.setMinimum(-999999999.0)
        self.uContourInterval.setMaximum(999999999.0)
        self.uContourInterval.setObjectName("uContourInterval")
        self.gridLayout_2.addWidget(self.uContourInterval, 2, 1, 1, 1)
        self.label_15 = QtWidgets.QLabel(self.groupBox)
        self.label_15.setObjectName("label_15")
        self.gridLayout_2.addWidget(self.label_15, 2, 0, 1, 1)
        self.uLevelsList = QtWidgets.QListWidget(self.groupBox)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.uLevelsList.sizePolicy().hasHeightForWidth())
        self.uLevelsList.setSizePolicy(sizePolicy)
        self.uLevelsList.setLocale(QtCore.QLocale(QtCore.QLocale.C, QtCore.QLocale.AnyCountry))
        self.uLevelsList.setObjectName("uLevelsList")
        self.gridLayout_2.addWidget(self.uLevelsList, 1, 2, 10, 1)
        self.verticalLayout_2.addWidget(self.groupBox)
        self.groupBox_3 = QtWidgets.QGroupBox(self.scrollAreaWidgetContents_2)
        self.groupBox_3.setObjectName("groupBox_3")
        self.gridLayout_4 = QtWidgets.QGridLayout(self.groupBox_3)
        self.gridLayout_4.setObjectName("gridLayout_4")
        self.formLayout = QtWidgets.QFormLayout()
        self.formLayout.setContentsMargins(-1, -1, -1, 6)
        self.formLayout.setObjectName("formLayout")
        self.label_8 = QtWidgets.QLabel(self.groupBox_3)
        self.label_8.setObjectName("label_8")
        self.formLayout.setWidget(0, QtWidgets.QFormLayout.LabelRole, self.label_8)
        self.uOutputName = QtWidgets.QLineEdit(self.groupBox_3)
        self.uOutputName.setObjectName("uOutputName")
        self.formLayout.setWidget(0, QtWidgets.QFormLayout.FieldRole, self.uOutputName)
        self.horizontalLayout_2 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_2.setContentsMargins(0, 0, -1, -1)
        self.horizontalLayout_2.setObjectName("horizontalLayout_2")
        self.uPrecision = QtWidgets.QSpinBox(self.groupBox_3)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.uPrecision.sizePolicy().hasHeightForWidth())
        self.uPrecision.setSizePolicy(sizePolicy)
        self.uPrecision.setMinimum(-1)
        self.uPrecision.setMaximum(10)
        self.uPrecision.setProperty("value", 4)
        self.uPrecision.setObjectName("uPrecision")
        self.horizontalLayout_2.addWidget(self.uPrecision)
        self.label_14 = QtWidgets.QLabel(self.groupBox_3)
        self.label_14.setObjectName("label_14")
        self.horizontalLayout_2.addWidget(self.label_14)
        self.uTrimZeros = QtWidgets.QCheckBox(self.groupBox_3)
        self.uTrimZeros.setText("")
        self.uTrimZeros.setObjectName("uTrimZeros")
        self.horizontalLayout_2.addWidget(self.uTrimZeros)
        self.label_12 = QtWidgets.QLabel(self.groupBox_3)
        self.label_12.setObjectName("label_12")
        self.horizontalLayout_2.addWidget(self.label_12)
        self.uLabelUnits = QtWidgets.QLineEdit(self.groupBox_3)
        self.uLabelUnits.setObjectName("uLabelUnits")
        self.horizontalLayout_2.addWidget(self.uLabelUnits)
        spacerItem3 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
        self.horizontalLayout_2.addItem(spacerItem3)
        self.formLayout.setLayout(1, QtWidgets.QFormLayout.FieldRole, self.horizontalLayout_2)
        self.label_9 = QtWidgets.QLabel(self.groupBox_3)
        self.label_9.setObjectName("label_9")
        self.formLayout.setWidget(1, QtWidgets.QFormLayout.LabelRole, self.label_9)
        self.horizontalLayout_4 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_4.setContentsMargins(-1, -1, -1, 0)
        self.horizontalLayout_4.setObjectName("horizontalLayout_4")
        self.uApplyColors = QtWidgets.QCheckBox(self.groupBox_3)
        self.uApplyColors.setText("")
        self.uApplyColors.setObjectName("uApplyColors")
        self.horizontalLayout_4.addWidget(self.uApplyColors)
        self.uColorRamp = QgsColorRampButton(self.groupBox_3)
        self.uColorRamp.setObjectName("uColorRamp")
        self.horizontalLayout_4.addWidget(self.uColorRamp)
        self.uReverseRamp = QtWidgets.QCheckBox(self.groupBox_3)
        self.uReverseRamp.setObjectName("uReverseRamp")
        self.horizontalLayout_4.addWidget(self.uReverseRamp)
        spacerItem4 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
        self.horizontalLayout_4.addItem(spacerItem4)
        self.horizontalLayout_4.setStretch(1, 1)
        self.formLayout.setLayout(2, QtWidgets.QFormLayout.FieldRole, self.horizontalLayout_4)
        self.label_13 = QtWidgets.QLabel(self.groupBox_3)
        self.label_13.setObjectName("label_13")
        self.formLayout.setWidget(2, QtWidgets.QFormLayout.LabelRole, self.label_13)
        self.gridLayout_4.addLayout(self.formLayout, 0, 0, 1, 1)
        self.verticalLayout_2.addWidget(self.groupBox_3)
        self.verticalLayout_2.setStretch(1, 1)
        self.scrollArea_2.setWidget(self.scrollAreaWidgetContents_2)
        self.verticalLayout.addWidget(self.scrollArea_2)
        self.uMessageBar = QgsMessageBar(ContourDialog)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(1)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.uMessageBar.sizePolicy().hasHeightForWidth())
        self.uMessageBar.setSizePolicy(sizePolicy)
        self.uMessageBar.setMinimumSize(QtCore.QSize(0, 27))
        self.uMessageBar.setObjectName("uMessageBar")
        self.verticalLayout.addWidget(self.uMessageBar)
        self.horizontalLayout_8 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_8.setContentsMargins(-1, 0, -1, -1)
        self.horizontalLayout_8.setObjectName("horizontalLayout_8")
        self.progressBar = QtWidgets.QProgressBar(ContourDialog)
        self.progressBar.setProperty("value", 0)
        self.progressBar.setAlignment(QtCore.Qt.AlignCenter)
        self.progressBar.setTextVisible(True)
        self.progressBar.setObjectName("progressBar")
        self.horizontalLayout_8.addWidget(self.progressBar)
        self.uHelpButton = QtWidgets.QPushButton(ContourDialog)
        self.uHelpButton.setAutoDefault(False)
        self.uHelpButton.setObjectName("uHelpButton")
        self.horizontalLayout_8.addWidget(self.uHelpButton)
        self.uAddButton = QtWidgets.QPushButton(ContourDialog)
        self.uAddButton.setObjectName("uAddButton")
        self.horizontalLayout_8.addWidget(self.uAddButton)
        self.uCloseButton = QtWidgets.QPushButton(ContourDialog)
        self.uCloseButton.setObjectName("uCloseButton")
        self.horizontalLayout_8.addWidget(self.uCloseButton)
        self.verticalLayout.addLayout(self.horizontalLayout_8)
        self.verticalLayout.setStretch(0, 1)
        self.label_3.setBuddy(self.uSourceLayer)
        self.label_4.setBuddy(self.uDataField)
        self.label_2.setBuddy(self.uRemoveDuplicates)
        self.label_11.setBuddy(self.uDuplicateTolerance)
        self.uUseGridLabel.setBuddy(self.uUseGrid)
        self.label_5.setBuddy(self.uSetMinimum)
        self.label.setBuddy(self.uNContour)
        self.label_10.setBuddy(self.uExtend)
        self.label_7.setBuddy(self.uMethod)
        self.label_6.setBuddy(self.uSetMaximum)
        self.label_15.setBuddy(self.uContourInterval)
        self.label_8.setBuddy(self.uOutputName)
        self.label_14.setBuddy(self.uTrimZeros)
        self.label_12.setBuddy(self.uLabelUnits)
        self.label_9.setBuddy(self.uPrecision)
        self.label_13.setBuddy(self.uApplyColors)

        self.retranslateUi(ContourDialog)
        QtCore.QMetaObject.connectSlotsByName(ContourDialog)
        ContourDialog.setTabOrder(self.uSourceLayer, self.uSelectedOnly)
        ContourDialog.setTabOrder(self.uSelectedOnly, self.uRemoveDuplicates)
        ContourDialog.setTabOrder(self.uRemoveDuplicates, self.uDuplicateTolerance)
        ContourDialog.setTabOrder(self.uDuplicateTolerance, self.uLinesContours)
        ContourDialog.setTabOrder(self.uLinesContours, self.uFilledContours)
        ContourDialog.setTabOrder(self.uFilledContours, self.uBoth)
        ContourDialog.setTabOrder(self.uBoth, self.uLayerContours)
        ContourDialog.setTabOrder(self.uLayerContours, self.uMethod)
        ContourDialog.setTabOrder(self.uMethod, self.uContourInterval)
        ContourDialog.setTabOrder(self.uContourInterval, self.uNContour)
        ContourDialog.setTabOrder(self.uNContour, self.uSetMinimum)
        ContourDialog.setTabOrder(self.uSetMinimum, self.uMinContour)
        ContourDialog.setTabOrder(self.uMinContour, self.uSetMaximum)
        ContourDialog.setTabOrder(self.uSetMaximum, self.uMaxContour)
        ContourDialog.setTabOrder(self.uMaxContour, self.uExtend)
        ContourDialog.setTabOrder(self.uExtend, self.uLevelsList)
        ContourDialog.setTabOrder(self.uLevelsList, self.uOutputName)
        ContourDialog.setTabOrder(self.uOutputName, self.uPrecision)
        ContourDialog.setTabOrder(self.uPrecision, self.uTrimZeros)
        ContourDialog.setTabOrder(self.uTrimZeros, self.uLabelUnits)
        ContourDialog.setTabOrder(self.uLabelUnits, self.uApplyColors)
        ContourDialog.setTabOrder(self.uApplyColors, self.uColorRamp)
        ContourDialog.setTabOrder(self.uColorRamp, self.uReverseRamp)
        ContourDialog.setTabOrder(self.uReverseRamp, self.uAddButton)
        ContourDialog.setTabOrder(self.uAddButton, self.uCloseButton)
Example #40
0
    def __init__(self, callbackobject, parent=None):
        """Constructor."""
        super(Viewer, self).__init__(parent)
        self.setupUi(self)
        self.callbackobject = callbackobject
        self.frame = self.webview.page().mainFrame()
        self.actiongroup = QActionGroup(self)
        self.actiongroup.setExclusive(True)
        self.actiongroup.triggered.connect(self.action_triggered)

        self.measuredialog = MeasureDialog(self)

        self.toolbar = QToolBar()
        self.qgisTrackButton = self.toolbar.addAction("QGIS Track")
        self.qgisTrackButton.setIcon(QIcon(":/icons/track"))
        self.qgisTrackButton.setCheckable(True)
        self.qgisTrackButton.setChecked(True)
        self.qgisTrackButton.toggled.connect(self.trackingChanged.emit)

        self.setlocationaction = self.toolbar.addAction("Set location")
        self.setlocationaction.setIcon(QIcon(":/icons/location"))
        self.setlocationaction.triggered.connect(self.setLocationTriggered.emit)
        self.setlocationaction.setCheckable(True)

        self.viewfeatures = self.toolbar.addAction("Load QGIS Features")
        self.viewfeatures.setIcon(QIcon(":/icons/features"))
        self.viewfeatures.setCheckable(True)
        self.viewfeatures.setChecked(True)
        self.viewfeatures.toggled.connect(self.updateFeatures.emit)

        spacer = QWidget()
        spacer.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Expanding)
        self.toolbar.addWidget(spacer)

        self.measureaction = self.toolbar.addAction("measure")
        self.measureaction.setObjectName("Measure")
        self.measureaction.setIcon(QIcon(":/icons/measure"))
        self.measureaction.setCheckable(True)

        self.infoaction = self.toolbar.addAction("Info")
        self.infoaction.setObjectName("Info")
        self.infoaction.setIcon(QIcon(":/icons/info"))
        self.infoaction.setCheckable(True)

        self.selectaction = self.toolbar.addAction("Select")
        self.selectaction.setObjectName("Select")
        self.selectaction.setIcon(QIcon(":/icons/select"))
        self.selectaction.setCheckable(True)

        self.toolbar.addSeparator()

        self.deleteaction = self.toolbar.addAction("Delete")
        self.deleteaction.setIcon(QIcon(":/icons/delete"))
        self.deleteaction.triggered.connect(self.delete_selected)
        self.deleteaction.setEnabled(False)

        self.addaction = self.toolbar.addAction("Add")
        self.addaction.setObjectName("Add")
        self.addaction.setIcon(QIcon(":/icons/add"))
        self.addaction.setCheckable(True)

        self.moveaction = self.toolbar.addAction("Move")
        self.moveaction.setObjectName("Move")
        self.moveaction.setIcon(QIcon(":/icons/move"))
        self.moveaction.setCheckable(True)

        self.actiongroup.addAction(self.moveaction)
        self.actiongroup.addAction(self.addaction)
        self.actiongroup.addAction(self.infoaction)
        self.actiongroup.addAction(self.measureaction)
        self.actiongroup.addAction(self.selectaction)

        self.activelayercombo = QgsMapLayerComboBox()
        self.activelayercombo.layerChanged.connect(self.layer_changed)
        self.activelayeraction = self.toolbar.addWidget(self.activelayercombo)
        self.activelayercombo.setSizeAdjustPolicy(QComboBox.AdjustToContents)
        self.activelayercombo.currentIndexChanged.connect(self.index_changed)

        self.zvaluecheck = QCheckBox()
        self.zvaluecheck.setChecked(True)
        self.zvaluecheck.setText("Copy Z value")
        self.zvaluecheck.setToolTip("Copy Z value from viewer to new features in QGIS. Must have a field named Z to enable")
        self.zvalueaction = self.toolbar.addWidget(self.zvaluecheck)

        self.dockWidgetContents.layout().insertWidget(0, self.toolbar)

        self.webview.settings().setAttribute(QWebSettings.PluginsEnabled, True)
        self.webview.settings().setAttribute(QWebSettings.JavascriptEnabled, True)
        self.webview.settings().setAttribute(QWebSettings.DeveloperExtrasEnabled, True)
        self.frame.setScrollBarPolicy(Qt.Horizontal, Qt.ScrollBarAlwaysOff)
        self.frame.setScrollBarPolicy(Qt.Vertical, Qt.ScrollBarAlwaysOff)
        self.frame.javaScriptWindowObjectCleared.connect(self.addcallbackobject)
        self.measuredialog.modeCombo.currentIndexChanged.connect(self.action_triggered)
        self.measuredialog.clearButton.clicked.connect(self.clear_line)

        self.earthmine = EarthmineAPI(self.frame)
# coding: utf-8
from PyQt4.QtGui import QDialog, QFormLayout
from qgis.gui import (QgsFieldComboBox, QgsMapLayerComboBox,
                      QgsMapLayerProxyModel)

# Create dialog
new_dialog = QDialog()

# Add combobox for layer and field
map_layer_combo_box = QgsMapLayerComboBox()
map_layer_combo_box.setCurrentIndex(-1)
map_layer_combo_box.setFilters(QgsMapLayerProxyModel.VectorLayer)
field_combo_box = QgsFieldComboBox()

# Create a form layout and add the two combobox
layout = QFormLayout()
layout.addWidget(map_layer_combo_box)
layout.addWidget(field_combo_box)

# Add signal event
map_layer_combo_box.layerChanged.connect(field_combo_box.setLayer)  # setLayer is a native slot function


def on_field_changed(fieldName):
    print(fieldName)
    print("Layer field changed")

field_combo_box.fieldChanged.connect(on_field_changed)

new_dialog.setLayout(layout)
new_dialog.show()  # To see possibility of this component, you need at least a layer opened
Example #42
0
    def setupUi(self, ui_query):
        ui_query.setObjectName(_fromUtf8("ui_query"))
        ui_query.resize(603, 871)
        self.verticalLayout_3 = QtGui.QVBoxLayout(ui_query)
        self.verticalLayout_3.setObjectName(_fromUtf8("verticalLayout_3"))
        self.scrollArea = QtGui.QScrollArea(ui_query)
        self.scrollArea.setFrameShape(QtGui.QFrame.NoFrame)
        self.scrollArea.setFrameShadow(QtGui.QFrame.Plain)
        self.scrollArea.setWidgetResizable(True)
        self.scrollArea.setObjectName(_fromUtf8("scrollArea"))
        self.scrollAreaWidgetContents = QtGui.QWidget()
        self.scrollAreaWidgetContents.setGeometry(QtCore.QRect(0, 0, 595, 863))
        self.scrollAreaWidgetContents.setObjectName(_fromUtf8("scrollAreaWidgetContents"))
        self.verticalLayout = QtGui.QVBoxLayout(self.scrollAreaWidgetContents)
        self.verticalLayout.setObjectName(_fromUtf8("verticalLayout"))
        self.horizontalLayout_9 = QtGui.QHBoxLayout()
        self.horizontalLayout_9.setObjectName(_fromUtf8("horizontalLayout_9"))
        self.label = QtGui.QLabel(self.scrollAreaWidgetContents)
        self.label.setObjectName(_fromUtf8("label"))
        self.horizontalLayout_9.addWidget(self.label)
        spacerItem = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
        self.horizontalLayout_9.addItem(spacerItem)
        self.buttonBox = QtGui.QDialogButtonBox(self.scrollAreaWidgetContents)
        self.buttonBox.setStandardButtons(QtGui.QDialogButtonBox.Reset)
        self.buttonBox.setCenterButtons(True)
        self.buttonBox.setObjectName(_fromUtf8("buttonBox"))
        self.horizontalLayout_9.addWidget(self.buttonBox)
        self.verticalLayout.addLayout(self.horizontalLayout_9)
        self.textEdit_query = QtGui.QTextEdit(self.scrollAreaWidgetContents)
        self.textEdit_query.setAcceptRichText(False)
        self.textEdit_query.setObjectName(_fromUtf8("textEdit_query"))
        self.verticalLayout.addWidget(self.textEdit_query)
        self.groupBox = QgsCollapsibleGroupBox(self.scrollAreaWidgetContents)
        self.groupBox.setChecked(False)
        self.groupBox.setObjectName(_fromUtf8("groupBox"))
        self.verticalLayout_2 = QtGui.QVBoxLayout(self.groupBox)
        self.verticalLayout_2.setObjectName(_fromUtf8("verticalLayout_2"))
        self.formLayout_4 = QtGui.QFormLayout()
        self.formLayout_4.setFieldGrowthPolicy(QtGui.QFormLayout.ExpandingFieldsGrow)
        self.formLayout_4.setObjectName(_fromUtf8("formLayout_4"))
        self.label_2 = QtGui.QLabel(self.groupBox)
        self.label_2.setText(_fromUtf8("{{geocodeArea:}}"))
        self.label_2.setObjectName(_fromUtf8("label_2"))
        self.formLayout_4.setWidget(0, QtGui.QFormLayout.LabelRole, self.label_2)
        self.lineEdit_nominatim = QtGui.QLineEdit(self.groupBox)
        self.lineEdit_nominatim.setObjectName(_fromUtf8("lineEdit_nominatim"))
        self.formLayout_4.setWidget(0, QtGui.QFormLayout.FieldRole, self.lineEdit_nominatim)
        self.label_5 = QtGui.QLabel(self.groupBox)
        self.label_5.setObjectName(_fromUtf8("label_5"))
        self.formLayout_4.setWidget(2, QtGui.QFormLayout.LabelRole, self.label_5)
        self.radioButton_extentMapCanvas = QtGui.QRadioButton(self.groupBox)
        self.radioButton_extentMapCanvas.setChecked(True)
        self.radioButton_extentMapCanvas.setObjectName(_fromUtf8("radioButton_extentMapCanvas"))
        self.formLayout_4.setWidget(2, QtGui.QFormLayout.FieldRole, self.radioButton_extentMapCanvas)
        self.label_3 = QtGui.QLabel(self.groupBox)
        self.label_3.setObjectName(_fromUtf8("label_3"))
        self.formLayout_4.setWidget(4, QtGui.QFormLayout.LabelRole, self.label_3)
        self.label_7 = QtGui.QLabel(self.groupBox)
        self.label_7.setText(_fromUtf8(""))
        self.label_7.setObjectName(_fromUtf8("label_7"))
        self.formLayout_4.setWidget(4, QtGui.QFormLayout.FieldRole, self.label_7)
        self.label_10 = QtGui.QLabel(self.groupBox)
        self.label_10.setText(_fromUtf8("Points"))
        self.label_10.setObjectName(_fromUtf8("label_10"))
        self.formLayout_4.setWidget(5, QtGui.QFormLayout.LabelRole, self.label_10)
        self.horizontalLayout_4 = QtGui.QHBoxLayout()
        self.horizontalLayout_4.setObjectName(_fromUtf8("horizontalLayout_4"))
        self.checkBox_points = QtGui.QCheckBox(self.groupBox)
        self.checkBox_points.setText(_fromUtf8(""))
        self.checkBox_points.setChecked(True)
        self.checkBox_points.setObjectName(_fromUtf8("checkBox_points"))
        self.horizontalLayout_4.addWidget(self.checkBox_points)
        self.lineEdit_csv_points = QtGui.QLineEdit(self.groupBox)
        self.lineEdit_csv_points.setInputMask(_fromUtf8(""))
        self.lineEdit_csv_points.setText(_fromUtf8(""))
        self.lineEdit_csv_points.setPlaceholderText(_fromUtf8("col1,col2,col3"))
        self.lineEdit_csv_points.setObjectName(_fromUtf8("lineEdit_csv_points"))
        self.horizontalLayout_4.addWidget(self.lineEdit_csv_points)
        self.formLayout_4.setLayout(5, QtGui.QFormLayout.FieldRole, self.horizontalLayout_4)
        self.label_11 = QtGui.QLabel(self.groupBox)
        self.label_11.setText(_fromUtf8("Lines"))
        self.label_11.setObjectName(_fromUtf8("label_11"))
        self.formLayout_4.setWidget(6, QtGui.QFormLayout.LabelRole, self.label_11)
        self.horizontalLayout_6 = QtGui.QHBoxLayout()
        self.horizontalLayout_6.setObjectName(_fromUtf8("horizontalLayout_6"))
        self.checkBox_lines = QtGui.QCheckBox(self.groupBox)
        self.checkBox_lines.setText(_fromUtf8(""))
        self.checkBox_lines.setChecked(True)
        self.checkBox_lines.setObjectName(_fromUtf8("checkBox_lines"))
        self.horizontalLayout_6.addWidget(self.checkBox_lines)
        self.lineEdit_csv_lines = QtGui.QLineEdit(self.groupBox)
        self.lineEdit_csv_lines.setObjectName(_fromUtf8("lineEdit_csv_lines"))
        self.horizontalLayout_6.addWidget(self.lineEdit_csv_lines)
        self.formLayout_4.setLayout(6, QtGui.QFormLayout.FieldRole, self.horizontalLayout_6)
        self.label_14 = QtGui.QLabel(self.groupBox)
        self.label_14.setText(_fromUtf8("Multilinestrings"))
        self.label_14.setObjectName(_fromUtf8("label_14"))
        self.formLayout_4.setWidget(7, QtGui.QFormLayout.LabelRole, self.label_14)
        self.horizontalLayout_7 = QtGui.QHBoxLayout()
        self.horizontalLayout_7.setObjectName(_fromUtf8("horizontalLayout_7"))
        self.checkBox_multilinestrings = QtGui.QCheckBox(self.groupBox)
        self.checkBox_multilinestrings.setText(_fromUtf8(""))
        self.checkBox_multilinestrings.setChecked(True)
        self.checkBox_multilinestrings.setObjectName(_fromUtf8("checkBox_multilinestrings"))
        self.horizontalLayout_7.addWidget(self.checkBox_multilinestrings)
        self.lineEdit_csv_multilinestrings = QtGui.QLineEdit(self.groupBox)
        self.lineEdit_csv_multilinestrings.setPlaceholderText(_fromUtf8(""))
        self.lineEdit_csv_multilinestrings.setObjectName(_fromUtf8("lineEdit_csv_multilinestrings"))
        self.horizontalLayout_7.addWidget(self.lineEdit_csv_multilinestrings)
        self.formLayout_4.setLayout(7, QtGui.QFormLayout.FieldRole, self.horizontalLayout_7)
        self.label_12 = QtGui.QLabel(self.groupBox)
        self.label_12.setText(_fromUtf8("Multipolygons"))
        self.label_12.setObjectName(_fromUtf8("label_12"))
        self.formLayout_4.setWidget(8, QtGui.QFormLayout.LabelRole, self.label_12)
        self.horizontalLayout_8 = QtGui.QHBoxLayout()
        self.horizontalLayout_8.setObjectName(_fromUtf8("horizontalLayout_8"))
        self.checkBox_multipolygons = QtGui.QCheckBox(self.groupBox)
        self.checkBox_multipolygons.setText(_fromUtf8(""))
        self.checkBox_multipolygons.setChecked(True)
        self.checkBox_multipolygons.setObjectName(_fromUtf8("checkBox_multipolygons"))
        self.horizontalLayout_8.addWidget(self.checkBox_multipolygons)
        self.lineEdit_csv_multipolygons = QtGui.QLineEdit(self.groupBox)
        self.lineEdit_csv_multipolygons.setPlaceholderText(_fromUtf8(""))
        self.lineEdit_csv_multipolygons.setObjectName(_fromUtf8("lineEdit_csv_multipolygons"))
        self.horizontalLayout_8.addWidget(self.lineEdit_csv_multipolygons)
        self.formLayout_4.setLayout(8, QtGui.QFormLayout.FieldRole, self.horizontalLayout_8)
        self.horizontalLayout_3 = QtGui.QHBoxLayout()
        self.horizontalLayout_3.setObjectName(_fromUtf8("horizontalLayout_3"))
        self.radioButton_extentLayer = QtGui.QRadioButton(self.groupBox)
        self.radioButton_extentLayer.setObjectName(_fromUtf8("radioButton_extentLayer"))
        self.horizontalLayout_3.addWidget(self.radioButton_extentLayer)
        self.comboBox_extentLayer = QgsMapLayerComboBox(self.groupBox)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.comboBox_extentLayer.sizePolicy().hasHeightForWidth())
        self.comboBox_extentLayer.setSizePolicy(sizePolicy)
        self.comboBox_extentLayer.setObjectName(_fromUtf8("comboBox_extentLayer"))
        self.horizontalLayout_3.addWidget(self.comboBox_extentLayer)
        self.formLayout_4.setLayout(3, QtGui.QFormLayout.FieldRole, self.horizontalLayout_3)
        self.verticalLayout_2.addLayout(self.formLayout_4)
        self.formLayout_2 = QtGui.QFormLayout()
        self.formLayout_2.setFieldGrowthPolicy(QtGui.QFormLayout.ExpandingFieldsGrow)
        self.formLayout_2.setObjectName(_fromUtf8("formLayout_2"))
        self.label_4 = QtGui.QLabel(self.groupBox)
        self.label_4.setObjectName(_fromUtf8("label_4"))
        self.formLayout_2.setWidget(0, QtGui.QFormLayout.LabelRole, self.label_4)
        self.horizontalLayout = QtGui.QHBoxLayout()
        self.horizontalLayout.setObjectName(_fromUtf8("horizontalLayout"))
        self.lineEdit_browseDir = QtGui.QLineEdit(self.groupBox)
        self.lineEdit_browseDir.setObjectName(_fromUtf8("lineEdit_browseDir"))
        self.horizontalLayout.addWidget(self.lineEdit_browseDir)
        self.pushButton_browse_output_file = QtGui.QPushButton(self.groupBox)
        self.pushButton_browse_output_file.setObjectName(_fromUtf8("pushButton_browse_output_file"))
        self.horizontalLayout.addWidget(self.pushButton_browse_output_file)
        self.formLayout_2.setLayout(0, QtGui.QFormLayout.FieldRole, self.horizontalLayout)
        self.label_6 = QtGui.QLabel(self.groupBox)
        self.label_6.setObjectName(_fromUtf8("label_6"))
        self.formLayout_2.setWidget(1, QtGui.QFormLayout.LabelRole, self.label_6)
        self.lineEdit_filePrefix = QtGui.QLineEdit(self.groupBox)
        self.lineEdit_filePrefix.setObjectName(_fromUtf8("lineEdit_filePrefix"))
        self.formLayout_2.setWidget(1, QtGui.QFormLayout.FieldRole, self.lineEdit_filePrefix)
        self.verticalLayout_2.addLayout(self.formLayout_2)
        self.verticalLayout.addWidget(self.groupBox)
        self.horizontalLayout_2 = QtGui.QHBoxLayout()
        self.horizontalLayout_2.setSizeConstraint(QtGui.QLayout.SetMinimumSize)
        self.horizontalLayout_2.setObjectName(_fromUtf8("horizontalLayout_2"))
        self.pushButton_generateQuery = QtGui.QPushButton(self.scrollAreaWidgetContents)
        self.pushButton_generateQuery.setObjectName(_fromUtf8("pushButton_generateQuery"))
        self.horizontalLayout_2.addWidget(self.pushButton_generateQuery)
        self.pushButton_runQuery = QtGui.QPushButton(self.scrollAreaWidgetContents)
        self.pushButton_runQuery.setDefault(True)
        self.pushButton_runQuery.setObjectName(_fromUtf8("pushButton_runQuery"))
        self.horizontalLayout_2.addWidget(self.pushButton_runQuery)
        self.pushButton_saveQuery = QtGui.QPushButton(self.scrollAreaWidgetContents)
        self.pushButton_saveQuery.setObjectName(_fromUtf8("pushButton_saveQuery"))
        self.horizontalLayout_2.addWidget(self.pushButton_saveQuery)
        self.verticalLayout.addLayout(self.horizontalLayout_2)
        self.label_progress = QtGui.QLabel(self.scrollAreaWidgetContents)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Maximum, QtGui.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_progress.sizePolicy().hasHeightForWidth())
        self.label_progress.setSizePolicy(sizePolicy)
        self.label_progress.setText(_fromUtf8("progress text"))
        self.label_progress.setObjectName(_fromUtf8("label_progress"))
        self.verticalLayout.addWidget(self.label_progress)
        self.progressBar_execution = QtGui.QProgressBar(self.scrollAreaWidgetContents)
        self.progressBar_execution.setProperty("value", 0)
        self.progressBar_execution.setObjectName(_fromUtf8("progressBar_execution"))
        self.verticalLayout.addWidget(self.progressBar_execution)
        self.horizontalLayout_5 = QtGui.QHBoxLayout()
        self.horizontalLayout_5.setObjectName(_fromUtf8("horizontalLayout_5"))
        self.pushButton_overpassTurbo = QtGui.QPushButton(self.scrollAreaWidgetContents)
        self.pushButton_overpassTurbo.setText(_fromUtf8("Overpass Turbo"))
        icon = QtGui.QIcon()
        icon.addPixmap(QtGui.QPixmap(_fromUtf8(":/plugins/QuickOSM/resources/turbo.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.pushButton_overpassTurbo.setIcon(icon)
        self.pushButton_overpassTurbo.setObjectName(_fromUtf8("pushButton_overpassTurbo"))
        self.horizontalLayout_5.addWidget(self.pushButton_overpassTurbo)
        self.pushButton_documentation = QtGui.QPushButton(self.scrollAreaWidgetContents)
        self.pushButton_documentation.setObjectName(_fromUtf8("pushButton_documentation"))
        self.horizontalLayout_5.addWidget(self.pushButton_documentation)
        self.verticalLayout.addLayout(self.horizontalLayout_5)
        spacerItem1 = QtGui.QSpacerItem(20, 71, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding)
        self.verticalLayout.addItem(spacerItem1)
        self.scrollArea.setWidget(self.scrollAreaWidgetContents)
        self.verticalLayout_3.addWidget(self.scrollArea)

        self.retranslateUi(ui_query)
        QtCore.QObject.connect(self.checkBox_points, QtCore.SIGNAL(_fromUtf8("toggled(bool)")), self.lineEdit_csv_points.setEnabled)
        QtCore.QObject.connect(self.checkBox_lines, QtCore.SIGNAL(_fromUtf8("toggled(bool)")), self.lineEdit_csv_lines.setEnabled)
        QtCore.QObject.connect(self.checkBox_multilinestrings, QtCore.SIGNAL(_fromUtf8("toggled(bool)")), self.lineEdit_csv_multilinestrings.setEnabled)
        QtCore.QObject.connect(self.checkBox_multipolygons, QtCore.SIGNAL(_fromUtf8("toggled(bool)")), self.lineEdit_csv_multipolygons.setEnabled)
        QtCore.QMetaObject.connectSlotsByName(ui_query)
Example #43
0
class Ui_DockWidget(object):
    def setupUi(self, DockWidget):
        DockWidget.setObjectName("DockWidget")
        DockWidget.resize(350, 300)
        DockWidget.setMinimumSize(QtCore.QSize(366, 353))
        DockWidget.setMaximumSize(QtCore.QSize(600, 600))
        self.dockWidgetContents = QtWidgets.QWidget()
        self.dockWidgetContents.setObjectName("dockWidgetContents")
        self.gridLayout_2 = QtWidgets.QGridLayout(self.dockWidgetContents)
        self.gridLayout_2.setObjectName("gridLayout_2")
        self.label_8 = QtWidgets.QLabel(self.dockWidgetContents)
        self.label_8.setMinimumSize(QtCore.QSize(250, 0))
        self.label_8.setText("")
        self.label_8.setPixmap(QtGui.QPixmap(":/plugins/dzetsaka/img/parcguyane.jpg"))
        self.label_8.setObjectName("label_8")
        self.gridLayout_2.addWidget(self.label_8, 0, 0, 1, 1)
        self.gridLayout = QtWidgets.QGridLayout()
        self.gridLayout.setObjectName("gridLayout")
        self.label_2 = QtWidgets.QLabel(self.dockWidgetContents)
        self.label_2.setMinimumSize(QtCore.QSize(15, 15))
        self.label_2.setMaximumSize(QtCore.QSize(15, 15))
        self.label_2.setText("")
        self.label_2.setPixmap(QtGui.QPixmap(":/plugins/dzetsaka/img/raster.svg"))
        self.label_2.setScaledContents(True)
        self.label_2.setObjectName("label_2")
        self.gridLayout.addWidget(self.label_2, 0, 0, 1, 1)
        self.inRaster = QgsMapLayerComboBox(self.dockWidgetContents)
        self.inRaster.setMinimumSize(QtCore.QSize(200, 0))
        self.inRaster.setMaximumSize(QtCore.QSize(16777215, 30))
        self.inRaster.setShowCrs(True)
        self.inRaster.setObjectName("inRaster")
        self.gridLayout.addWidget(self.inRaster, 0, 1, 1, 3)
        self.label_3 = QtWidgets.QLabel(self.dockWidgetContents)
        self.label_3.setMaximumSize(QtCore.QSize(15, 15))
        self.label_3.setText("")
        self.label_3.setPixmap(QtGui.QPixmap(":/plugins/dzetsaka/img/vector.svg"))
        self.label_3.setScaledContents(True)
        self.label_3.setObjectName("label_3")
        self.gridLayout.addWidget(self.label_3, 1, 0, 1, 1)
        self.inShape = QgsMapLayerComboBox(self.dockWidgetContents)
        self.inShape.setMinimumSize(QtCore.QSize(90, 0))
        self.inShape.setMaximumSize(QtCore.QSize(16777215, 30))
        self.inShape.setShowCrs(True)
        self.inShape.setObjectName("inShape")
        self.gridLayout.addWidget(self.inShape, 1, 1, 1, 1)
        self.label = QtWidgets.QLabel(self.dockWidgetContents)
        self.label.setMaximumSize(QtCore.QSize(20, 25))
        self.label.setObjectName("label")
        self.gridLayout.addWidget(self.label, 1, 2, 1, 1)
        self.checkInModel = QtWidgets.QCheckBox(self.dockWidgetContents)
        self.checkInModel.setMinimumSize(QtCore.QSize(110, 0))
        self.checkInModel.setMaximumSize(QtCore.QSize(110, 16777215))
        self.checkInModel.setObjectName("checkInModel")
        self.gridLayout.addWidget(self.checkInModel, 1, 3, 1, 1)
        self.label_4 = QtWidgets.QLabel(self.dockWidgetContents)
        self.label_4.setMaximumSize(QtCore.QSize(15, 15))
        self.label_4.setText("")
        self.label_4.setPixmap(QtGui.QPixmap(":/plugins/dzetsaka/img/column.svg"))
        self.label_4.setScaledContents(True)
        self.label_4.setObjectName("label_4")
        self.gridLayout.addWidget(self.label_4, 2, 0, 1, 1)
        self.inField = QtWidgets.QComboBox(self.dockWidgetContents)
        self.inField.setMinimumSize(QtCore.QSize(90, 0))
        self.inField.setMaximumSize(QtCore.QSize(16777215, 30))
        self.inField.setObjectName("inField")
        self.gridLayout.addWidget(self.inField, 2, 1, 1, 1)
        self.inModel = QtWidgets.QLineEdit(self.dockWidgetContents)
        self.inModel.setEnabled(False)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.inModel.sizePolicy().hasHeightForWidth())
        self.inModel.setSizePolicy(sizePolicy)
        self.inModel.setMinimumSize(QtCore.QSize(110, 0))
        self.inModel.setMaximumSize(QtCore.QSize(160, 16777215))
        self.inModel.setInputMask("")
        self.inModel.setText("")
        self.inModel.setObjectName("inModel")
        self.gridLayout.addWidget(self.inModel, 2, 2, 1, 2)
        self.gridLayout_5 = QtWidgets.QGridLayout()
        self.gridLayout_5.setObjectName("gridLayout_5")
        self.outRaster = QtWidgets.QLineEdit(self.dockWidgetContents)
        self.outRaster.setMaximumSize(QtCore.QSize(16777215, 30))
        self.outRaster.setObjectName("outRaster")
        self.gridLayout_5.addWidget(self.outRaster, 0, 0, 1, 3)
        spacerItem = QtWidgets.QSpacerItem(15, 17, QtWidgets.QSizePolicy.MinimumExpanding, QtWidgets.QSizePolicy.Minimum)
        self.gridLayout_5.addItem(spacerItem, 1, 0, 1, 1)
        self.performMagic = QtWidgets.QToolButton(self.dockWidgetContents)
        self.performMagic.setMinimumSize(QtCore.QSize(175, 0))
        self.performMagic.setObjectName("performMagic")
        self.gridLayout_5.addWidget(self.performMagic, 1, 1, 1, 1)
        spacerItem1 = QtWidgets.QSpacerItem(15, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
        self.gridLayout_5.addItem(spacerItem1, 1, 2, 1, 1)
        self.settingsButton = QtWidgets.QToolButton(self.dockWidgetContents)
        icon = QtGui.QIcon()
        icon.addPixmap(QtGui.QPixmap(":/plugins/dzetsaka/img/settings.png"), QtGui.QIcon.Normal, QtGui.QIcon.On)
        self.settingsButton.setIcon(icon)
        self.settingsButton.setObjectName("settingsButton")
        self.gridLayout_5.addWidget(self.settingsButton, 1, 3, 1, 1)
        self.outRasterButton = QtWidgets.QToolButton(self.dockWidgetContents)
        self.outRasterButton.setObjectName("outRasterButton")
        self.gridLayout_5.addWidget(self.outRasterButton, 0, 3, 1, 1)
        self.gridLayout.addLayout(self.gridLayout_5, 3, 1, 1, 3)
        self.gridLayout_2.addLayout(self.gridLayout, 1, 0, 1, 1)
        spacerItem2 = QtWidgets.QSpacerItem(100, 1, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding)
        self.gridLayout_2.addItem(spacerItem2, 3, 0, 1, 1)
        self.mGroupBox = QgsCollapsibleGroupBox(self.dockWidgetContents)
        self.mGroupBox.setEnabled(True)
        self.mGroupBox.setMaximumSize(QtCore.QSize(16777215, 23))
        self.mGroupBox.setFlat(True)
        self.mGroupBox.setCollapsed(True)
        self.mGroupBox.setScrollOnExpand(False)
        self.mGroupBox.setSaveCollapsedState(True)
        self.mGroupBox.setSaveCheckedState(False)
        self.mGroupBox.setObjectName("mGroupBox")
        self.gridLayout_3 = QtWidgets.QGridLayout(self.mGroupBox)
        self.gridLayout_3.setContentsMargins(0, -1, 0, -1)
        self.gridLayout_3.setObjectName("gridLayout_3")
        self.label_7 = QtWidgets.QLabel(self.mGroupBox)
        self.label_7.setMaximumSize(QtCore.QSize(20, 20))
        self.label_7.setText("")
        self.label_7.setPixmap(QtGui.QPixmap(":/plugins/dzetsaka/img/mask.svg"))
        self.label_7.setScaledContents(True)
        self.label_7.setObjectName("label_7")
        self.gridLayout_3.addWidget(self.label_7, 0, 0, 1, 1)
        self.checkInMask = QtWidgets.QCheckBox(self.mGroupBox)
        self.checkInMask.setMinimumSize(QtCore.QSize(40, 0))
        self.checkInMask.setMaximumSize(QtCore.QSize(140, 16777215))
        self.checkInMask.setObjectName("checkInMask")
        self.gridLayout_3.addWidget(self.checkInMask, 0, 1, 1, 2)
        self.inMask = QtWidgets.QLineEdit(self.mGroupBox)
        self.inMask.setEnabled(False)
        self.inMask.setMinimumSize(QtCore.QSize(70, 20))
        self.inMask.setObjectName("inMask")
        self.gridLayout_3.addWidget(self.inMask, 0, 4, 1, 2)
        self.label_5 = QtWidgets.QLabel(self.mGroupBox)
        self.label_5.setMaximumSize(QtCore.QSize(20, 20))
        self.label_5.setText("")
        self.label_5.setPixmap(QtGui.QPixmap(":/plugins/dzetsaka/img/confidence.png"))
        self.label_5.setScaledContents(True)
        self.label_5.setObjectName("label_5")
        self.gridLayout_3.addWidget(self.label_5, 1, 0, 1, 1)
        self.checkInConfidence = QtWidgets.QCheckBox(self.mGroupBox)
        self.checkInConfidence.setMinimumSize(QtCore.QSize(140, 0))
        self.checkInConfidence.setMaximumSize(QtCore.QSize(140, 16777215))
        self.checkInConfidence.setObjectName("checkInConfidence")
        self.gridLayout_3.addWidget(self.checkInConfidence, 1, 1, 1, 3)
        self.outConfidenceMap = QtWidgets.QLineEdit(self.mGroupBox)
        self.outConfidenceMap.setEnabled(False)
        self.outConfidenceMap.setMinimumSize(QtCore.QSize(70, 20))
        self.outConfidenceMap.setObjectName("outConfidenceMap")
        self.gridLayout_3.addWidget(self.outConfidenceMap, 1, 4, 1, 2)
        self.label_6 = QtWidgets.QLabel(self.mGroupBox)
        self.label_6.setMaximumSize(QtCore.QSize(20, 20))
        self.label_6.setText("")
        self.label_6.setPixmap(QtGui.QPixmap(":/plugins/dzetsaka/img/model.svg"))
        self.label_6.setScaledContents(True)
        self.label_6.setObjectName("label_6")
        self.gridLayout_3.addWidget(self.label_6, 2, 0, 1, 1)
        self.checkOutModel = QtWidgets.QCheckBox(self.mGroupBox)
        self.checkOutModel.setMaximumSize(QtCore.QSize(140, 16777215))
        self.checkOutModel.setObjectName("checkOutModel")
        self.gridLayout_3.addWidget(self.checkOutModel, 2, 1, 1, 3)
        self.outModel = QtWidgets.QLineEdit(self.mGroupBox)
        self.outModel.setEnabled(False)
        self.outModel.setMinimumSize(QtCore.QSize(70, 20))
        self.outModel.setObjectName("outModel")
        self.gridLayout_3.addWidget(self.outModel, 2, 4, 1, 2)
        self.label_11 = QtWidgets.QLabel(self.mGroupBox)
        self.label_11.setMaximumSize(QtCore.QSize(20, 20))
        self.label_11.setText("")
        self.label_11.setPixmap(QtGui.QPixmap(":/plugins/dzetsaka/img/table.png"))
        self.label_11.setScaledContents(True)
        self.label_11.setObjectName("label_11")
        self.gridLayout_3.addWidget(self.label_11, 3, 0, 1, 1)
        self.checkOutMatrix = QtWidgets.QCheckBox(self.mGroupBox)
        self.checkOutMatrix.setMaximumSize(QtCore.QSize(140, 16777215))
        self.checkOutMatrix.setObjectName("checkOutMatrix")
        self.gridLayout_3.addWidget(self.checkOutMatrix, 3, 1, 1, 3)
        self.outMatrix = QtWidgets.QLineEdit(self.mGroupBox)
        self.outMatrix.setEnabled(False)
        self.outMatrix.setMinimumSize(QtCore.QSize(70, 20))
        self.outMatrix.setObjectName("outMatrix")
        self.gridLayout_3.addWidget(self.outMatrix, 3, 4, 1, 2)
        self.inSplit = QtWidgets.QSpinBox(self.mGroupBox)
        self.inSplit.setEnabled(False)
        self.inSplit.setMinimumSize(QtCore.QSize(65, 20))
        self.inSplit.setMaximum(100)
        self.inSplit.setProperty("value", 100)
        self.inSplit.setObjectName("inSplit")
        self.gridLayout_3.addWidget(self.inSplit, 4, 4, 1, 1)
        spacerItem3 = QtWidgets.QSpacerItem(36, 20, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Minimum)
        self.gridLayout_3.addItem(spacerItem3, 4, 5, 1, 1)
        spacerItem4 = QtWidgets.QSpacerItem(15, 20, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Minimum)
        self.gridLayout_3.addItem(spacerItem4, 4, 0, 1, 1)
        self.label_9 = QtWidgets.QLabel(self.mGroupBox)
        self.label_9.setObjectName("label_9")
        self.gridLayout_3.addWidget(self.label_9, 4, 1, 1, 1)
        self.label_10 = QtWidgets.QLabel(self.mGroupBox)
        font = QtGui.QFont()
        font.setPointSize(8)
        self.label_10.setFont(font)
        self.label_10.setObjectName("label_10")
        self.gridLayout_3.addWidget(self.label_10, 4, 2, 1, 1)
        self.gridLayout_2.addWidget(self.mGroupBox, 2, 0, 1, 1)
        DockWidget.setWidget(self.dockWidgetContents)

        self.retranslateUi(DockWidget)
        QtCore.QMetaObject.connectSlotsByName(DockWidget)
        DockWidget.setTabOrder(self.inRaster, self.inShape)
        DockWidget.setTabOrder(self.inShape, self.inField)
        DockWidget.setTabOrder(self.inField, self.checkInModel)
        DockWidget.setTabOrder(self.checkInModel, self.inModel)
        DockWidget.setTabOrder(self.inModel, self.outRaster)
        DockWidget.setTabOrder(self.outRaster, self.performMagic)
        DockWidget.setTabOrder(self.performMagic, self.mGroupBox)
        DockWidget.setTabOrder(self.mGroupBox, self.checkInConfidence)
        DockWidget.setTabOrder(self.checkInConfidence, self.outConfidenceMap)
        DockWidget.setTabOrder(self.outConfidenceMap, self.checkOutModel)
        DockWidget.setTabOrder(self.checkOutModel, self.outModel)
        DockWidget.setTabOrder(self.outModel, self.checkOutMatrix)
        DockWidget.setTabOrder(self.checkOutMatrix, self.outMatrix)
        DockWidget.setTabOrder(self.outMatrix, self.inSplit)

    def retranslateUi(self, DockWidget):
        _translate = QtCore.QCoreApplication.translate
        DockWidget.setWindowTitle(_translate("DockWidget", "dzetsaka : classification tool"))
        self.label_2.setToolTip(_translate("DockWidget", "<html><head/><body><p>The image to classify</p></body></html>"))
        self.label_3.setToolTip(_translate("DockWidget", "<html><head/><body><p>Your ROI</p></body></html>"))
        self.label.setText(_translate("DockWidget", "or"))
        self.checkInModel.setText(_translate("DockWidget", "Load model"))
        self.label_4.setToolTip(_translate("DockWidget", "<html><head/><body><p>Column name where class number is stored</p></body></html>"))
        self.inModel.setPlaceholderText(_translate("DockWidget", "Model"))
        self.outRaster.setPlaceholderText(_translate("DockWidget", "Classification. Leave empty for temporary file"))
        self.performMagic.setText(_translate("DockWidget", "Perform the classification"))
        self.settingsButton.setText(_translate("DockWidget", "..."))
        self.outRasterButton.setText(_translate("DockWidget", "..."))
        self.mGroupBox.setTitle(_translate("DockWidget", "Optional"))
        self.label_7.setToolTip(_translate("DockWidget", "<html><head/><body><p>Mask where 0 are the pixels to ignore and 1 to classify</p></body></html>"))
        self.checkInMask.setText(_translate("DockWidget", "Mask "))
        self.inMask.setPlaceholderText(_translate("DockWidget", "Automatic find filename_mask.ext"))
        self.label_5.setToolTip(_translate("DockWidget", "<html><head/><body><p>Mask where 0 are the pixels to ignore and 1 to classify</p></body></html>"))
        self.checkInConfidence.setToolTip(_translate("DockWidget", "Create a confidence map for each classified pixel. 1 is total confidence, 0 is null."))
        self.checkInConfidence.setText(_translate("DockWidget", "Confidence map"))
        self.outConfidenceMap.setPlaceholderText(_translate("DockWidget", "Map of confidence"))
        self.label_6.setToolTip(_translate("DockWidget", "<html><head/><body><p>If you want to save the model for a further use and with another image</p></body></html>"))
        self.checkOutModel.setText(_translate("DockWidget", "Save model"))
        self.outModel.setPlaceholderText(_translate("DockWidget", "To use with another image"))
        self.label_11.setToolTip(_translate("DockWidget", "<html><head/><body><p>If you want to save the model for a further use and with another image</p></body></html>"))
        self.checkOutMatrix.setText(_translate("DockWidget", "Save matrix"))
        self.outMatrix.setPlaceholderText(_translate("DockWidget", "Save confusion matrix"))
        self.inSplit.setSuffix(_translate("DockWidget", "%"))
        self.label_9.setText(_translate("DockWidget", "Split"))
        self.label_10.setToolTip(_translate("DockWidget", "<html><head/><body><p>In percent, number of polygons used for classification and number used for stats (confusion matrix, overall accuracy and Kappa)</p></body></html>"))
        self.label_10.setText(_translate("DockWidget", "(?)"))
class Ui_apisSearchDialog(object):
    def setupUi(self, apisSearchDialog):
        apisSearchDialog.setObjectName(_fromUtf8("apisSearchDialog"))
        apisSearchDialog.resize(314, 557)
        icon = QtGui.QIcon()
        icon.addPixmap(QtGui.QPixmap(_fromUtf8(":/plugins/APIS/icons/apis.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        apisSearchDialog.setWindowIcon(icon)
        self.dockWidgetContents = QtGui.QWidget()
        self.dockWidgetContents.setObjectName(_fromUtf8("dockWidgetContents"))
        self.verticalLayout = QtGui.QVBoxLayout(self.dockWidgetContents)
        self.verticalLayout.setObjectName(_fromUtf8("verticalLayout"))
        self.uiSearchTab = QtGui.QTabWidget(self.dockWidgetContents)
        self.uiSearchTab.setEnabled(True)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.uiSearchTab.sizePolicy().hasHeightForWidth())
        self.uiSearchTab.setSizePolicy(sizePolicy)
        self.uiSearchTab.setObjectName(_fromUtf8("uiSearchTab"))
        self.tab_9 = QtGui.QWidget()
        self.tab_9.setObjectName(_fromUtf8("tab_9"))
        self.verticalLayout_8 = QtGui.QVBoxLayout(self.tab_9)
        self.verticalLayout_8.setObjectName(_fromUtf8("verticalLayout_8"))
        self.uiSearchImageRBtn = QtGui.QRadioButton(self.tab_9)
        self.uiSearchImageRBtn.setChecked(True)
        self.uiSearchImageRBtn.setObjectName(_fromUtf8("uiSearchImageRBtn"))
        self.verticalLayout_8.addWidget(self.uiSearchImageRBtn)
        self.uiSearchSiteRBtn = QtGui.QRadioButton(self.tab_9)
        self.uiSearchSiteRBtn.setObjectName(_fromUtf8("uiSearchSiteRBtn"))
        self.verticalLayout_8.addWidget(self.uiSearchSiteRBtn)
        self.uiSearchFindspotRBtn = QtGui.QRadioButton(self.tab_9)
        self.uiSearchFindspotRBtn.setObjectName(_fromUtf8("uiSearchFindspotRBtn"))
        self.verticalLayout_8.addWidget(self.uiSearchFindspotRBtn)
        self.line_8 = QtGui.QFrame(self.tab_9)
        self.line_8.setFrameShape(QtGui.QFrame.HLine)
        self.line_8.setFrameShadow(QtGui.QFrame.Sunken)
        self.line_8.setObjectName(_fromUtf8("line_8"))
        self.verticalLayout_8.addWidget(self.line_8)
        self.horizontalLayout_8 = QtGui.QHBoxLayout()
        self.horizontalLayout_8.setObjectName(_fromUtf8("horizontalLayout_8"))
        self.uiSpatialSearchBtn = QtGui.QPushButton(self.tab_9)
        self.uiSpatialSearchBtn.setText(_fromUtf8(""))
        icon1 = QtGui.QIcon()
        icon1.addPixmap(QtGui.QPixmap(_fromUtf8(":/plugins/APIS/icons/search.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.uiSpatialSearchBtn.setIcon(icon1)
        self.uiSpatialSearchBtn.setIconSize(QtCore.QSize(24, 24))
        self.uiSpatialSearchBtn.setObjectName(_fromUtf8("uiSpatialSearchBtn"))
        self.horizontalLayout_8.addWidget(self.uiSpatialSearchBtn)
        self.label_13 = QtGui.QLabel(self.tab_9)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_13.sizePolicy().hasHeightForWidth())
        self.label_13.setSizePolicy(sizePolicy)
        self.label_13.setObjectName(_fromUtf8("label_13"))
        self.horizontalLayout_8.addWidget(self.label_13)
        self.verticalLayout_8.addLayout(self.horizontalLayout_8)
        self.line_9 = QtGui.QFrame(self.tab_9)
        self.line_9.setFrameShape(QtGui.QFrame.HLine)
        self.line_9.setFrameShadow(QtGui.QFrame.Sunken)
        self.line_9.setObjectName(_fromUtf8("line_9"))
        self.verticalLayout_8.addWidget(self.line_9)
        self.label = QtGui.QLabel(self.tab_9)
        self.label.setObjectName(_fromUtf8("label"))
        self.verticalLayout_8.addWidget(self.label)
        self.horizontalLayout = QtGui.QHBoxLayout()
        self.horizontalLayout.setObjectName(_fromUtf8("horizontalLayout"))
        self.uiSearchByMapLayerCombo = QgsMapLayerComboBox(self.tab_9)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.uiSearchByMapLayerCombo.sizePolicy().hasHeightForWidth())
        self.uiSearchByMapLayerCombo.setSizePolicy(sizePolicy)
        self.uiSearchByMapLayerCombo.setObjectName(_fromUtf8("uiSearchByMapLayerCombo"))
        self.horizontalLayout.addWidget(self.uiSearchByMapLayerCombo)
        self.uiSearchByMapLayerBtn = QtGui.QPushButton(self.tab_9)
        self.uiSearchByMapLayerBtn.setEnabled(True)
        self.uiSearchByMapLayerBtn.setText(_fromUtf8(""))
        self.uiSearchByMapLayerBtn.setIcon(icon1)
        self.uiSearchByMapLayerBtn.setObjectName(_fromUtf8("uiSearchByMapLayerBtn"))
        self.horizontalLayout.addWidget(self.uiSearchByMapLayerBtn)
        self.verticalLayout_8.addLayout(self.horizontalLayout)
        self.line_10 = QtGui.QFrame(self.tab_9)
        self.line_10.setFrameShape(QtGui.QFrame.HLine)
        self.line_10.setFrameShadow(QtGui.QFrame.Sunken)
        self.line_10.setObjectName(_fromUtf8("line_10"))
        self.verticalLayout_8.addWidget(self.line_10)
        self.label_7 = QtGui.QLabel(self.tab_9)
        self.label_7.setObjectName(_fromUtf8("label_7"))
        self.verticalLayout_8.addWidget(self.label_7)
        self.horizontalLayout_10 = QtGui.QHBoxLayout()
        self.horizontalLayout_10.setObjectName(_fromUtf8("horizontalLayout_10"))
        self.uiSearchByCadastralCommunityCombo = QtGui.QComboBox(self.tab_9)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.uiSearchByCadastralCommunityCombo.sizePolicy().hasHeightForWidth())
        self.uiSearchByCadastralCommunityCombo.setSizePolicy(sizePolicy)
        self.uiSearchByCadastralCommunityCombo.setEditable(True)
        self.uiSearchByCadastralCommunityCombo.setObjectName(_fromUtf8("uiSearchByCadastralCommunityCombo"))
        self.horizontalLayout_10.addWidget(self.uiSearchByCadastralCommunityCombo)
        self.uiSearchByCadastralCommunityBtn = QtGui.QPushButton(self.tab_9)
        self.uiSearchByCadastralCommunityBtn.setText(_fromUtf8(""))
        self.uiSearchByCadastralCommunityBtn.setIcon(icon1)
        self.uiSearchByCadastralCommunityBtn.setObjectName(_fromUtf8("uiSearchByCadastralCommunityBtn"))
        self.horizontalLayout_10.addWidget(self.uiSearchByCadastralCommunityBtn)
        self.verticalLayout_8.addLayout(self.horizontalLayout_10)
        self.line_7 = QtGui.QFrame(self.tab_9)
        self.line_7.setFrameShape(QtGui.QFrame.HLine)
        self.line_7.setFrameShadow(QtGui.QFrame.Sunken)
        self.line_7.setObjectName(_fromUtf8("line_7"))
        self.verticalLayout_8.addWidget(self.line_7)
        self.label_8 = QtGui.QLabel(self.tab_9)
        self.label_8.setEnabled(False)
        self.label_8.setObjectName(_fromUtf8("label_8"))
        self.verticalLayout_8.addWidget(self.label_8)
        self.horizontalLayout_11 = QtGui.QHBoxLayout()
        self.horizontalLayout_11.setObjectName(_fromUtf8("horizontalLayout_11"))
        self.uiSearchByCountryCombo = QtGui.QComboBox(self.tab_9)
        self.uiSearchByCountryCombo.setEnabled(False)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.uiSearchByCountryCombo.sizePolicy().hasHeightForWidth())
        self.uiSearchByCountryCombo.setSizePolicy(sizePolicy)
        self.uiSearchByCountryCombo.setEditable(True)
        self.uiSearchByCountryCombo.setObjectName(_fromUtf8("uiSearchByCountryCombo"))
        self.horizontalLayout_11.addWidget(self.uiSearchByCountryCombo)
        self.uiSearchByCountryBtn = QtGui.QPushButton(self.tab_9)
        self.uiSearchByCountryBtn.setEnabled(False)
        self.uiSearchByCountryBtn.setText(_fromUtf8(""))
        self.uiSearchByCountryBtn.setIcon(icon1)
        self.uiSearchByCountryBtn.setObjectName(_fromUtf8("uiSearchByCountryBtn"))
        self.horizontalLayout_11.addWidget(self.uiSearchByCountryBtn)
        self.verticalLayout_8.addLayout(self.horizontalLayout_11)
        spacerItem = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding)
        self.verticalLayout_8.addItem(spacerItem)
        self.uiSearchTab.addTab(self.tab_9, _fromUtf8(""))
        self.tab_10 = QtGui.QWidget()
        self.tab_10.setObjectName(_fromUtf8("tab_10"))
        self.verticalLayout_3 = QtGui.QVBoxLayout(self.tab_10)
        self.verticalLayout_3.setObjectName(_fromUtf8("verticalLayout_3"))
        self.tabWidget = QtGui.QTabWidget(self.tab_10)
        self.tabWidget.setEnabled(True)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.tabWidget.sizePolicy().hasHeightForWidth())
        self.tabWidget.setSizePolicy(sizePolicy)
        self.tabWidget.setObjectName(_fromUtf8("tabWidget"))
        self.uiSiteTab = QtGui.QWidget()
        self.uiSiteTab.setObjectName(_fromUtf8("uiSiteTab"))
        self.verticalLayout_4 = QtGui.QVBoxLayout(self.uiSiteTab)
        self.verticalLayout_4.setObjectName(_fromUtf8("verticalLayout_4"))
        self.label_4 = QtGui.QLabel(self.uiSiteTab)
        self.label_4.setObjectName(_fromUtf8("label_4"))
        self.verticalLayout_4.addWidget(self.label_4)
        self.horizontalLayout_6 = QtGui.QHBoxLayout()
        self.horizontalLayout_6.setObjectName(_fromUtf8("horizontalLayout_6"))
        self.uiSearchSiteNumberCombo = QtGui.QComboBox(self.uiSiteTab)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.uiSearchSiteNumberCombo.sizePolicy().hasHeightForWidth())
        self.uiSearchSiteNumberCombo.setSizePolicy(sizePolicy)
        self.uiSearchSiteNumberCombo.setEditable(True)
        self.uiSearchSiteNumberCombo.setObjectName(_fromUtf8("uiSearchSiteNumberCombo"))
        self.horizontalLayout_6.addWidget(self.uiSearchSiteNumberCombo)
        self.uiSearchSiteNumberBtn = QtGui.QPushButton(self.uiSiteTab)
        self.uiSearchSiteNumberBtn.setText(_fromUtf8(""))
        self.uiSearchSiteNumberBtn.setIcon(icon1)
        self.uiSearchSiteNumberBtn.setObjectName(_fromUtf8("uiSearchSiteNumberBtn"))
        self.horizontalLayout_6.addWidget(self.uiSearchSiteNumberBtn)
        self.verticalLayout_4.addLayout(self.horizontalLayout_6)
        self.line_4 = QtGui.QFrame(self.uiSiteTab)
        self.line_4.setFrameShape(QtGui.QFrame.HLine)
        self.line_4.setFrameShadow(QtGui.QFrame.Sunken)
        self.line_4.setObjectName(_fromUtf8("line_4"))
        self.verticalLayout_4.addWidget(self.line_4)
        self.label_5 = QtGui.QLabel(self.uiSiteTab)
        self.label_5.setObjectName(_fromUtf8("label_5"))
        self.verticalLayout_4.addWidget(self.label_5)
        self.horizontalLayout_7 = QtGui.QHBoxLayout()
        self.horizontalLayout_7.setObjectName(_fromUtf8("horizontalLayout_7"))
        self.uiSearchFilmNumberCombo = QtGui.QComboBox(self.uiSiteTab)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.uiSearchFilmNumberCombo.sizePolicy().hasHeightForWidth())
        self.uiSearchFilmNumberCombo.setSizePolicy(sizePolicy)
        self.uiSearchFilmNumberCombo.setEditable(True)
        self.uiSearchFilmNumberCombo.setObjectName(_fromUtf8("uiSearchFilmNumberCombo"))
        self.horizontalLayout_7.addWidget(self.uiSearchFilmNumberCombo)
        self.uiSearchFilmNumberBtn = QtGui.QPushButton(self.uiSiteTab)
        self.uiSearchFilmNumberBtn.setText(_fromUtf8(""))
        self.uiSearchFilmNumberBtn.setIcon(icon1)
        self.uiSearchFilmNumberBtn.setObjectName(_fromUtf8("uiSearchFilmNumberBtn"))
        self.horizontalLayout_7.addWidget(self.uiSearchFilmNumberBtn)
        self.verticalLayout_4.addLayout(self.horizontalLayout_7)
        self.line_5 = QtGui.QFrame(self.uiSiteTab)
        self.line_5.setFrameShape(QtGui.QFrame.HLine)
        self.line_5.setFrameShadow(QtGui.QFrame.Sunken)
        self.line_5.setObjectName(_fromUtf8("line_5"))
        self.verticalLayout_4.addWidget(self.line_5)
        self.label_2 = QtGui.QLabel(self.uiSiteTab)
        self.label_2.setObjectName(_fromUtf8("label_2"))
        self.verticalLayout_4.addWidget(self.label_2)
        self.horizontalLayout_2 = QtGui.QHBoxLayout()
        self.horizontalLayout_2.setObjectName(_fromUtf8("horizontalLayout_2"))
        self.uiSearchYearDate = QtGui.QDateEdit(self.uiSiteTab)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.uiSearchYearDate.sizePolicy().hasHeightForWidth())
        self.uiSearchYearDate.setSizePolicy(sizePolicy)
        self.uiSearchYearDate.setDate(QtCore.QDate(2016, 1, 1))
        self.uiSearchYearDate.setObjectName(_fromUtf8("uiSearchYearDate"))
        self.horizontalLayout_2.addWidget(self.uiSearchYearDate)
        self.uiSearchYearBtn = QtGui.QPushButton(self.uiSiteTab)
        self.uiSearchYearBtn.setText(_fromUtf8(""))
        self.uiSearchYearBtn.setIcon(icon1)
        self.uiSearchYearBtn.setObjectName(_fromUtf8("uiSearchYearBtn"))
        self.horizontalLayout_2.addWidget(self.uiSearchYearBtn)
        self.verticalLayout_4.addLayout(self.horizontalLayout_2)
        self.line = QtGui.QFrame(self.uiSiteTab)
        self.line.setFrameShape(QtGui.QFrame.HLine)
        self.line.setFrameShadow(QtGui.QFrame.Sunken)
        self.line.setObjectName(_fromUtf8("line"))
        self.verticalLayout_4.addWidget(self.line)
        self.label_6 = QtGui.QLabel(self.uiSiteTab)
        self.label_6.setObjectName(_fromUtf8("label_6"))
        self.verticalLayout_4.addWidget(self.label_6)
        self.horizontalLayout_9 = QtGui.QHBoxLayout()
        self.horizontalLayout_9.setObjectName(_fromUtf8("horizontalLayout_9"))
        self.uiSearchProjectNameCombo = QtGui.QComboBox(self.uiSiteTab)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.uiSearchProjectNameCombo.sizePolicy().hasHeightForWidth())
        self.uiSearchProjectNameCombo.setSizePolicy(sizePolicy)
        self.uiSearchProjectNameCombo.setEditable(True)
        self.uiSearchProjectNameCombo.setObjectName(_fromUtf8("uiSearchProjectNameCombo"))
        self.horizontalLayout_9.addWidget(self.uiSearchProjectNameCombo)
        self.uiSearchProjectNameBtn = QtGui.QPushButton(self.uiSiteTab)
        self.uiSearchProjectNameBtn.setText(_fromUtf8(""))
        self.uiSearchProjectNameBtn.setIcon(icon1)
        self.uiSearchProjectNameBtn.setObjectName(_fromUtf8("uiSearchProjectNameBtn"))
        self.horizontalLayout_9.addWidget(self.uiSearchProjectNameBtn)
        self.verticalLayout_4.addLayout(self.horizontalLayout_9)
        spacerItem1 = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding)
        self.verticalLayout_4.addItem(spacerItem1)
        self.tabWidget.addTab(self.uiSiteTab, _fromUtf8(""))
        self.uiFindspotTab = QtGui.QWidget()
        self.uiFindspotTab.setObjectName(_fromUtf8("uiFindspotTab"))
        self.verticalLayout_5 = QtGui.QVBoxLayout(self.uiFindspotTab)
        self.verticalLayout_5.setObjectName(_fromUtf8("verticalLayout_5"))
        self.uiDatingGrp = QtGui.QGroupBox(self.uiFindspotTab)
        self.uiDatingGrp.setEnabled(True)
        self.uiDatingGrp.setCheckable(True)
        self.uiDatingGrp.setChecked(False)
        self.uiDatingGrp.setObjectName(_fromUtf8("uiDatingGrp"))
        self.gridLayout_3 = QtGui.QGridLayout(self.uiDatingGrp)
        self.gridLayout_3.setObjectName(_fromUtf8("gridLayout_3"))
        self.uiPeriodDetailsChk = QtGui.QCheckBox(self.uiDatingGrp)
        self.uiPeriodDetailsChk.setObjectName(_fromUtf8("uiPeriodDetailsChk"))
        self.gridLayout_3.addWidget(self.uiPeriodDetailsChk, 2, 0, 1, 1)
        self.uiPeriodChk = QtGui.QCheckBox(self.uiDatingGrp)
        self.uiPeriodChk.setObjectName(_fromUtf8("uiPeriodChk"))
        self.gridLayout_3.addWidget(self.uiPeriodChk, 1, 0, 1, 1)
        self.uiTimeCombo = QtGui.QComboBox(self.uiDatingGrp)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.uiTimeCombo.sizePolicy().hasHeightForWidth())
        self.uiTimeCombo.setSizePolicy(sizePolicy)
        self.uiTimeCombo.setObjectName(_fromUtf8("uiTimeCombo"))
        self.gridLayout_3.addWidget(self.uiTimeCombo, 0, 1, 1, 1)
        self.uiPeriodCombo = QtGui.QComboBox(self.uiDatingGrp)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.uiPeriodCombo.sizePolicy().hasHeightForWidth())
        self.uiPeriodCombo.setSizePolicy(sizePolicy)
        self.uiPeriodCombo.setObjectName(_fromUtf8("uiPeriodCombo"))
        self.gridLayout_3.addWidget(self.uiPeriodCombo, 1, 1, 1, 1)
        self.uiPeriodDetailsCombo = QtGui.QComboBox(self.uiDatingGrp)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.uiPeriodDetailsCombo.sizePolicy().hasHeightForWidth())
        self.uiPeriodDetailsCombo.setSizePolicy(sizePolicy)
        self.uiPeriodDetailsCombo.setObjectName(_fromUtf8("uiPeriodDetailsCombo"))
        self.gridLayout_3.addWidget(self.uiPeriodDetailsCombo, 2, 1, 1, 1)
        self.label_3 = QtGui.QLabel(self.uiDatingGrp)
        self.label_3.setObjectName(_fromUtf8("label_3"))
        self.gridLayout_3.addWidget(self.label_3, 0, 0, 1, 1)
        self.verticalLayout_5.addWidget(self.uiDatingGrp)
        self.uiCultureGrp = QtGui.QGroupBox(self.uiFindspotTab)
        self.uiCultureGrp.setEnabled(True)
        self.uiCultureGrp.setCheckable(True)
        self.uiCultureGrp.setChecked(False)
        self.uiCultureGrp.setObjectName(_fromUtf8("uiCultureGrp"))
        self.gridLayout_4 = QtGui.QGridLayout(self.uiCultureGrp)
        self.gridLayout_4.setObjectName(_fromUtf8("gridLayout_4"))
        self.uiCultureCombo = QtGui.QComboBox(self.uiCultureGrp)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.uiCultureCombo.sizePolicy().hasHeightForWidth())
        self.uiCultureCombo.setSizePolicy(sizePolicy)
        self.uiCultureCombo.setObjectName(_fromUtf8("uiCultureCombo"))
        self.gridLayout_4.addWidget(self.uiCultureCombo, 0, 1, 1, 1)
        self.label_9 = QtGui.QLabel(self.uiCultureGrp)
        self.label_9.setObjectName(_fromUtf8("label_9"))
        self.gridLayout_4.addWidget(self.label_9, 0, 0, 1, 1)
        self.verticalLayout_5.addWidget(self.uiCultureGrp)
        self.uiFindTypeGrp = QtGui.QGroupBox(self.uiFindspotTab)
        self.uiFindTypeGrp.setEnabled(True)
        self.uiFindTypeGrp.setCheckable(True)
        self.uiFindTypeGrp.setChecked(False)
        self.uiFindTypeGrp.setObjectName(_fromUtf8("uiFindTypeGrp"))
        self.gridLayout_5 = QtGui.QGridLayout(self.uiFindTypeGrp)
        self.gridLayout_5.setObjectName(_fromUtf8("gridLayout_5"))
        self.label_11 = QtGui.QLabel(self.uiFindTypeGrp)
        self.label_11.setObjectName(_fromUtf8("label_11"))
        self.gridLayout_5.addWidget(self.label_11, 0, 0, 1, 1)
        self.uiFindTypeCombo = QtGui.QComboBox(self.uiFindTypeGrp)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.uiFindTypeCombo.sizePolicy().hasHeightForWidth())
        self.uiFindTypeCombo.setSizePolicy(sizePolicy)
        self.uiFindTypeCombo.setObjectName(_fromUtf8("uiFindTypeCombo"))
        self.gridLayout_5.addWidget(self.uiFindTypeCombo, 0, 1, 1, 1)
        self.uiFindTypeDetailsCombo = QtGui.QComboBox(self.uiFindTypeGrp)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.uiFindTypeDetailsCombo.sizePolicy().hasHeightForWidth())
        self.uiFindTypeDetailsCombo.setSizePolicy(sizePolicy)
        self.uiFindTypeDetailsCombo.setObjectName(_fromUtf8("uiFindTypeDetailsCombo"))
        self.gridLayout_5.addWidget(self.uiFindTypeDetailsCombo, 1, 1, 1, 1)
        self.uiFindTypeDetailsChk = QtGui.QCheckBox(self.uiFindTypeGrp)
        self.uiFindTypeDetailsChk.setObjectName(_fromUtf8("uiFindTypeDetailsChk"))
        self.gridLayout_5.addWidget(self.uiFindTypeDetailsChk, 1, 0, 1, 1)
        self.verticalLayout_5.addWidget(self.uiFindTypeGrp)
        self.uiSpatialFilterGrp = QtGui.QGroupBox(self.uiFindspotTab)
        self.uiSpatialFilterGrp.setEnabled(True)
        self.uiSpatialFilterGrp.setFlat(False)
        self.uiSpatialFilterGrp.setCheckable(True)
        self.uiSpatialFilterGrp.setChecked(False)
        self.uiSpatialFilterGrp.setObjectName(_fromUtf8("uiSpatialFilterGrp"))
        self.verticalLayout_14 = QtGui.QVBoxLayout(self.uiSpatialFilterGrp)
        self.verticalLayout_14.setObjectName(_fromUtf8("verticalLayout_14"))
        self.label_12 = QtGui.QLabel(self.uiSpatialFilterGrp)
        self.label_12.setObjectName(_fromUtf8("label_12"))
        self.verticalLayout_14.addWidget(self.label_12)
        self.uiFilterByMapLayerCombo = QgsMapLayerComboBox(self.uiSpatialFilterGrp)
        self.uiFilterByMapLayerCombo.setObjectName(_fromUtf8("uiFilterByMapLayerCombo"))
        self.verticalLayout_14.addWidget(self.uiFilterByMapLayerCombo)
        self.verticalLayout_5.addWidget(self.uiSpatialFilterGrp)
        self.horizontalLayout_12 = QtGui.QHBoxLayout()
        self.horizontalLayout_12.setObjectName(_fromUtf8("horizontalLayout_12"))
        spacerItem2 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
        self.horizontalLayout_12.addItem(spacerItem2)
        self.uiSearchFindSpotBtn = QtGui.QPushButton(self.uiFindspotTab)
        self.uiSearchFindSpotBtn.setEnabled(False)
        self.uiSearchFindSpotBtn.setIcon(icon1)
        self.uiSearchFindSpotBtn.setObjectName(_fromUtf8("uiSearchFindSpotBtn"))
        self.horizontalLayout_12.addWidget(self.uiSearchFindSpotBtn)
        self.verticalLayout_5.addLayout(self.horizontalLayout_12)
        self.tabWidget.addTab(self.uiFindspotTab, _fromUtf8(""))
        self.verticalLayout_3.addWidget(self.tabWidget)
        self.uiSearchTab.addTab(self.tab_10, _fromUtf8(""))
        self.verticalLayout.addWidget(self.uiSearchTab)
        spacerItem3 = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding)
        self.verticalLayout.addItem(spacerItem3)
        apisSearchDialog.setWidget(self.dockWidgetContents)

        self.retranslateUi(apisSearchDialog)
        self.uiSearchTab.setCurrentIndex(0)
        self.tabWidget.setCurrentIndex(0)
        QtCore.QMetaObject.connectSlotsByName(apisSearchDialog)

    def retranslateUi(self, apisSearchDialog):
        apisSearchDialog.setWindowTitle(_translate("apisSearchDialog", "APIS Suche", None))
        self.uiSearchImageRBtn.setText(_translate("apisSearchDialog", "Luftbilder", None))
        self.uiSearchSiteRBtn.setText(_translate("apisSearchDialog", "Fundorte", None))
        self.uiSearchFindspotRBtn.setText(_translate("apisSearchDialog", "Fundstellen", None))
        self.label_13.setText(_translate("apisSearchDialog", "Suche (Rechteck oder Punkt)", None))
        self.label.setText(_translate("apisSearchDialog", "Suche mit Vektor Feature (Selektion) aus Layer:", None))
        self.label_7.setText(_translate("apisSearchDialog", "KG-Name oder KG-Nummer (Österreich):", None))
        self.label_8.setText(_translate("apisSearchDialog", "Land (englisch):", None))
        self.uiSearchTab.setTabText(self.uiSearchTab.indexOf(self.tab_9), _translate("apisSearchDialog", "Räumliche Suche", None))
        self.label_4.setText(_translate("apisSearchDialog", "Fundort Nummer:", None))
        self.label_5.setText(_translate("apisSearchDialog", "Film Nummer:", None))
        self.label_2.setText(_translate("apisSearchDialog", "Jahr (Fundorte in Filmen eines Jahres):", None))
        self.uiSearchYearDate.setDisplayFormat(_translate("apisSearchDialog", "yyyy", None))
        self.label_6.setText(_translate("apisSearchDialog", "Projekt Bezeichnung:", None))
        self.tabWidget.setTabText(self.tabWidget.indexOf(self.uiSiteTab), _translate("apisSearchDialog", "Fundort", None))
        self.uiDatingGrp.setTitle(_translate("apisSearchDialog", "Datierung", None))
        self.uiPeriodDetailsChk.setText(_translate("apisSearchDialog", "Detail:", None))
        self.uiPeriodChk.setText(_translate("apisSearchDialog", "Periode:", None))
        self.label_3.setText(_translate("apisSearchDialog", "Zeit:", None))
        self.uiCultureGrp.setTitle(_translate("apisSearchDialog", "Kultur", None))
        self.label_9.setText(_translate("apisSearchDialog", "Kultur:", None))
        self.uiFindTypeGrp.setTitle(_translate("apisSearchDialog", "Fundart", None))
        self.label_11.setText(_translate("apisSearchDialog", "Fundart:", None))
        self.uiFindTypeDetailsChk.setText(_translate("apisSearchDialog", "Detail:", None))
        self.uiSpatialFilterGrp.setTitle(_translate("apisSearchDialog", "Räumlicher Filter", None))
        self.label_12.setText(_translate("apisSearchDialog", "Suche mit Vektor Feature (Selektion) aus Layer:", None))
        self.uiSearchFindSpotBtn.setText(_translate("apisSearchDialog", "Suche", None))
        self.tabWidget.setTabText(self.tabWidget.indexOf(self.uiFindspotTab), _translate("apisSearchDialog", "Fundstelle", None))
        self.uiSearchTab.setTabText(self.uiSearchTab.indexOf(self.tab_10), _translate("apisSearchDialog", "Attribut Suche", None))
    def setupUi(self, apisSearchDialog):
        apisSearchDialog.setObjectName(_fromUtf8("apisSearchDialog"))
        apisSearchDialog.resize(314, 557)
        icon = QtGui.QIcon()
        icon.addPixmap(QtGui.QPixmap(_fromUtf8(":/plugins/APIS/icons/apis.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        apisSearchDialog.setWindowIcon(icon)
        self.dockWidgetContents = QtGui.QWidget()
        self.dockWidgetContents.setObjectName(_fromUtf8("dockWidgetContents"))
        self.verticalLayout = QtGui.QVBoxLayout(self.dockWidgetContents)
        self.verticalLayout.setObjectName(_fromUtf8("verticalLayout"))
        self.uiSearchTab = QtGui.QTabWidget(self.dockWidgetContents)
        self.uiSearchTab.setEnabled(True)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.uiSearchTab.sizePolicy().hasHeightForWidth())
        self.uiSearchTab.setSizePolicy(sizePolicy)
        self.uiSearchTab.setObjectName(_fromUtf8("uiSearchTab"))
        self.tab_9 = QtGui.QWidget()
        self.tab_9.setObjectName(_fromUtf8("tab_9"))
        self.verticalLayout_8 = QtGui.QVBoxLayout(self.tab_9)
        self.verticalLayout_8.setObjectName(_fromUtf8("verticalLayout_8"))
        self.uiSearchImageRBtn = QtGui.QRadioButton(self.tab_9)
        self.uiSearchImageRBtn.setChecked(True)
        self.uiSearchImageRBtn.setObjectName(_fromUtf8("uiSearchImageRBtn"))
        self.verticalLayout_8.addWidget(self.uiSearchImageRBtn)
        self.uiSearchSiteRBtn = QtGui.QRadioButton(self.tab_9)
        self.uiSearchSiteRBtn.setObjectName(_fromUtf8("uiSearchSiteRBtn"))
        self.verticalLayout_8.addWidget(self.uiSearchSiteRBtn)
        self.uiSearchFindspotRBtn = QtGui.QRadioButton(self.tab_9)
        self.uiSearchFindspotRBtn.setObjectName(_fromUtf8("uiSearchFindspotRBtn"))
        self.verticalLayout_8.addWidget(self.uiSearchFindspotRBtn)
        self.line_8 = QtGui.QFrame(self.tab_9)
        self.line_8.setFrameShape(QtGui.QFrame.HLine)
        self.line_8.setFrameShadow(QtGui.QFrame.Sunken)
        self.line_8.setObjectName(_fromUtf8("line_8"))
        self.verticalLayout_8.addWidget(self.line_8)
        self.horizontalLayout_8 = QtGui.QHBoxLayout()
        self.horizontalLayout_8.setObjectName(_fromUtf8("horizontalLayout_8"))
        self.uiSpatialSearchBtn = QtGui.QPushButton(self.tab_9)
        self.uiSpatialSearchBtn.setText(_fromUtf8(""))
        icon1 = QtGui.QIcon()
        icon1.addPixmap(QtGui.QPixmap(_fromUtf8(":/plugins/APIS/icons/search.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.uiSpatialSearchBtn.setIcon(icon1)
        self.uiSpatialSearchBtn.setIconSize(QtCore.QSize(24, 24))
        self.uiSpatialSearchBtn.setObjectName(_fromUtf8("uiSpatialSearchBtn"))
        self.horizontalLayout_8.addWidget(self.uiSpatialSearchBtn)
        self.label_13 = QtGui.QLabel(self.tab_9)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_13.sizePolicy().hasHeightForWidth())
        self.label_13.setSizePolicy(sizePolicy)
        self.label_13.setObjectName(_fromUtf8("label_13"))
        self.horizontalLayout_8.addWidget(self.label_13)
        self.verticalLayout_8.addLayout(self.horizontalLayout_8)
        self.line_9 = QtGui.QFrame(self.tab_9)
        self.line_9.setFrameShape(QtGui.QFrame.HLine)
        self.line_9.setFrameShadow(QtGui.QFrame.Sunken)
        self.line_9.setObjectName(_fromUtf8("line_9"))
        self.verticalLayout_8.addWidget(self.line_9)
        self.label = QtGui.QLabel(self.tab_9)
        self.label.setObjectName(_fromUtf8("label"))
        self.verticalLayout_8.addWidget(self.label)
        self.horizontalLayout = QtGui.QHBoxLayout()
        self.horizontalLayout.setObjectName(_fromUtf8("horizontalLayout"))
        self.uiSearchByMapLayerCombo = QgsMapLayerComboBox(self.tab_9)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.uiSearchByMapLayerCombo.sizePolicy().hasHeightForWidth())
        self.uiSearchByMapLayerCombo.setSizePolicy(sizePolicy)
        self.uiSearchByMapLayerCombo.setObjectName(_fromUtf8("uiSearchByMapLayerCombo"))
        self.horizontalLayout.addWidget(self.uiSearchByMapLayerCombo)
        self.uiSearchByMapLayerBtn = QtGui.QPushButton(self.tab_9)
        self.uiSearchByMapLayerBtn.setEnabled(True)
        self.uiSearchByMapLayerBtn.setText(_fromUtf8(""))
        self.uiSearchByMapLayerBtn.setIcon(icon1)
        self.uiSearchByMapLayerBtn.setObjectName(_fromUtf8("uiSearchByMapLayerBtn"))
        self.horizontalLayout.addWidget(self.uiSearchByMapLayerBtn)
        self.verticalLayout_8.addLayout(self.horizontalLayout)
        self.line_10 = QtGui.QFrame(self.tab_9)
        self.line_10.setFrameShape(QtGui.QFrame.HLine)
        self.line_10.setFrameShadow(QtGui.QFrame.Sunken)
        self.line_10.setObjectName(_fromUtf8("line_10"))
        self.verticalLayout_8.addWidget(self.line_10)
        self.label_7 = QtGui.QLabel(self.tab_9)
        self.label_7.setObjectName(_fromUtf8("label_7"))
        self.verticalLayout_8.addWidget(self.label_7)
        self.horizontalLayout_10 = QtGui.QHBoxLayout()
        self.horizontalLayout_10.setObjectName(_fromUtf8("horizontalLayout_10"))
        self.uiSearchByCadastralCommunityCombo = QtGui.QComboBox(self.tab_9)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.uiSearchByCadastralCommunityCombo.sizePolicy().hasHeightForWidth())
        self.uiSearchByCadastralCommunityCombo.setSizePolicy(sizePolicy)
        self.uiSearchByCadastralCommunityCombo.setEditable(True)
        self.uiSearchByCadastralCommunityCombo.setObjectName(_fromUtf8("uiSearchByCadastralCommunityCombo"))
        self.horizontalLayout_10.addWidget(self.uiSearchByCadastralCommunityCombo)
        self.uiSearchByCadastralCommunityBtn = QtGui.QPushButton(self.tab_9)
        self.uiSearchByCadastralCommunityBtn.setText(_fromUtf8(""))
        self.uiSearchByCadastralCommunityBtn.setIcon(icon1)
        self.uiSearchByCadastralCommunityBtn.setObjectName(_fromUtf8("uiSearchByCadastralCommunityBtn"))
        self.horizontalLayout_10.addWidget(self.uiSearchByCadastralCommunityBtn)
        self.verticalLayout_8.addLayout(self.horizontalLayout_10)
        self.line_7 = QtGui.QFrame(self.tab_9)
        self.line_7.setFrameShape(QtGui.QFrame.HLine)
        self.line_7.setFrameShadow(QtGui.QFrame.Sunken)
        self.line_7.setObjectName(_fromUtf8("line_7"))
        self.verticalLayout_8.addWidget(self.line_7)
        self.label_8 = QtGui.QLabel(self.tab_9)
        self.label_8.setEnabled(False)
        self.label_8.setObjectName(_fromUtf8("label_8"))
        self.verticalLayout_8.addWidget(self.label_8)
        self.horizontalLayout_11 = QtGui.QHBoxLayout()
        self.horizontalLayout_11.setObjectName(_fromUtf8("horizontalLayout_11"))
        self.uiSearchByCountryCombo = QtGui.QComboBox(self.tab_9)
        self.uiSearchByCountryCombo.setEnabled(False)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.uiSearchByCountryCombo.sizePolicy().hasHeightForWidth())
        self.uiSearchByCountryCombo.setSizePolicy(sizePolicy)
        self.uiSearchByCountryCombo.setEditable(True)
        self.uiSearchByCountryCombo.setObjectName(_fromUtf8("uiSearchByCountryCombo"))
        self.horizontalLayout_11.addWidget(self.uiSearchByCountryCombo)
        self.uiSearchByCountryBtn = QtGui.QPushButton(self.tab_9)
        self.uiSearchByCountryBtn.setEnabled(False)
        self.uiSearchByCountryBtn.setText(_fromUtf8(""))
        self.uiSearchByCountryBtn.setIcon(icon1)
        self.uiSearchByCountryBtn.setObjectName(_fromUtf8("uiSearchByCountryBtn"))
        self.horizontalLayout_11.addWidget(self.uiSearchByCountryBtn)
        self.verticalLayout_8.addLayout(self.horizontalLayout_11)
        spacerItem = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding)
        self.verticalLayout_8.addItem(spacerItem)
        self.uiSearchTab.addTab(self.tab_9, _fromUtf8(""))
        self.tab_10 = QtGui.QWidget()
        self.tab_10.setObjectName(_fromUtf8("tab_10"))
        self.verticalLayout_3 = QtGui.QVBoxLayout(self.tab_10)
        self.verticalLayout_3.setObjectName(_fromUtf8("verticalLayout_3"))
        self.tabWidget = QtGui.QTabWidget(self.tab_10)
        self.tabWidget.setEnabled(True)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.tabWidget.sizePolicy().hasHeightForWidth())
        self.tabWidget.setSizePolicy(sizePolicy)
        self.tabWidget.setObjectName(_fromUtf8("tabWidget"))
        self.uiSiteTab = QtGui.QWidget()
        self.uiSiteTab.setObjectName(_fromUtf8("uiSiteTab"))
        self.verticalLayout_4 = QtGui.QVBoxLayout(self.uiSiteTab)
        self.verticalLayout_4.setObjectName(_fromUtf8("verticalLayout_4"))
        self.label_4 = QtGui.QLabel(self.uiSiteTab)
        self.label_4.setObjectName(_fromUtf8("label_4"))
        self.verticalLayout_4.addWidget(self.label_4)
        self.horizontalLayout_6 = QtGui.QHBoxLayout()
        self.horizontalLayout_6.setObjectName(_fromUtf8("horizontalLayout_6"))
        self.uiSearchSiteNumberCombo = QtGui.QComboBox(self.uiSiteTab)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.uiSearchSiteNumberCombo.sizePolicy().hasHeightForWidth())
        self.uiSearchSiteNumberCombo.setSizePolicy(sizePolicy)
        self.uiSearchSiteNumberCombo.setEditable(True)
        self.uiSearchSiteNumberCombo.setObjectName(_fromUtf8("uiSearchSiteNumberCombo"))
        self.horizontalLayout_6.addWidget(self.uiSearchSiteNumberCombo)
        self.uiSearchSiteNumberBtn = QtGui.QPushButton(self.uiSiteTab)
        self.uiSearchSiteNumberBtn.setText(_fromUtf8(""))
        self.uiSearchSiteNumberBtn.setIcon(icon1)
        self.uiSearchSiteNumberBtn.setObjectName(_fromUtf8("uiSearchSiteNumberBtn"))
        self.horizontalLayout_6.addWidget(self.uiSearchSiteNumberBtn)
        self.verticalLayout_4.addLayout(self.horizontalLayout_6)
        self.line_4 = QtGui.QFrame(self.uiSiteTab)
        self.line_4.setFrameShape(QtGui.QFrame.HLine)
        self.line_4.setFrameShadow(QtGui.QFrame.Sunken)
        self.line_4.setObjectName(_fromUtf8("line_4"))
        self.verticalLayout_4.addWidget(self.line_4)
        self.label_5 = QtGui.QLabel(self.uiSiteTab)
        self.label_5.setObjectName(_fromUtf8("label_5"))
        self.verticalLayout_4.addWidget(self.label_5)
        self.horizontalLayout_7 = QtGui.QHBoxLayout()
        self.horizontalLayout_7.setObjectName(_fromUtf8("horizontalLayout_7"))
        self.uiSearchFilmNumberCombo = QtGui.QComboBox(self.uiSiteTab)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.uiSearchFilmNumberCombo.sizePolicy().hasHeightForWidth())
        self.uiSearchFilmNumberCombo.setSizePolicy(sizePolicy)
        self.uiSearchFilmNumberCombo.setEditable(True)
        self.uiSearchFilmNumberCombo.setObjectName(_fromUtf8("uiSearchFilmNumberCombo"))
        self.horizontalLayout_7.addWidget(self.uiSearchFilmNumberCombo)
        self.uiSearchFilmNumberBtn = QtGui.QPushButton(self.uiSiteTab)
        self.uiSearchFilmNumberBtn.setText(_fromUtf8(""))
        self.uiSearchFilmNumberBtn.setIcon(icon1)
        self.uiSearchFilmNumberBtn.setObjectName(_fromUtf8("uiSearchFilmNumberBtn"))
        self.horizontalLayout_7.addWidget(self.uiSearchFilmNumberBtn)
        self.verticalLayout_4.addLayout(self.horizontalLayout_7)
        self.line_5 = QtGui.QFrame(self.uiSiteTab)
        self.line_5.setFrameShape(QtGui.QFrame.HLine)
        self.line_5.setFrameShadow(QtGui.QFrame.Sunken)
        self.line_5.setObjectName(_fromUtf8("line_5"))
        self.verticalLayout_4.addWidget(self.line_5)
        self.label_2 = QtGui.QLabel(self.uiSiteTab)
        self.label_2.setObjectName(_fromUtf8("label_2"))
        self.verticalLayout_4.addWidget(self.label_2)
        self.horizontalLayout_2 = QtGui.QHBoxLayout()
        self.horizontalLayout_2.setObjectName(_fromUtf8("horizontalLayout_2"))
        self.uiSearchYearDate = QtGui.QDateEdit(self.uiSiteTab)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.uiSearchYearDate.sizePolicy().hasHeightForWidth())
        self.uiSearchYearDate.setSizePolicy(sizePolicy)
        self.uiSearchYearDate.setDate(QtCore.QDate(2016, 1, 1))
        self.uiSearchYearDate.setObjectName(_fromUtf8("uiSearchYearDate"))
        self.horizontalLayout_2.addWidget(self.uiSearchYearDate)
        self.uiSearchYearBtn = QtGui.QPushButton(self.uiSiteTab)
        self.uiSearchYearBtn.setText(_fromUtf8(""))
        self.uiSearchYearBtn.setIcon(icon1)
        self.uiSearchYearBtn.setObjectName(_fromUtf8("uiSearchYearBtn"))
        self.horizontalLayout_2.addWidget(self.uiSearchYearBtn)
        self.verticalLayout_4.addLayout(self.horizontalLayout_2)
        self.line = QtGui.QFrame(self.uiSiteTab)
        self.line.setFrameShape(QtGui.QFrame.HLine)
        self.line.setFrameShadow(QtGui.QFrame.Sunken)
        self.line.setObjectName(_fromUtf8("line"))
        self.verticalLayout_4.addWidget(self.line)
        self.label_6 = QtGui.QLabel(self.uiSiteTab)
        self.label_6.setObjectName(_fromUtf8("label_6"))
        self.verticalLayout_4.addWidget(self.label_6)
        self.horizontalLayout_9 = QtGui.QHBoxLayout()
        self.horizontalLayout_9.setObjectName(_fromUtf8("horizontalLayout_9"))
        self.uiSearchProjectNameCombo = QtGui.QComboBox(self.uiSiteTab)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.uiSearchProjectNameCombo.sizePolicy().hasHeightForWidth())
        self.uiSearchProjectNameCombo.setSizePolicy(sizePolicy)
        self.uiSearchProjectNameCombo.setEditable(True)
        self.uiSearchProjectNameCombo.setObjectName(_fromUtf8("uiSearchProjectNameCombo"))
        self.horizontalLayout_9.addWidget(self.uiSearchProjectNameCombo)
        self.uiSearchProjectNameBtn = QtGui.QPushButton(self.uiSiteTab)
        self.uiSearchProjectNameBtn.setText(_fromUtf8(""))
        self.uiSearchProjectNameBtn.setIcon(icon1)
        self.uiSearchProjectNameBtn.setObjectName(_fromUtf8("uiSearchProjectNameBtn"))
        self.horizontalLayout_9.addWidget(self.uiSearchProjectNameBtn)
        self.verticalLayout_4.addLayout(self.horizontalLayout_9)
        spacerItem1 = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding)
        self.verticalLayout_4.addItem(spacerItem1)
        self.tabWidget.addTab(self.uiSiteTab, _fromUtf8(""))
        self.uiFindspotTab = QtGui.QWidget()
        self.uiFindspotTab.setObjectName(_fromUtf8("uiFindspotTab"))
        self.verticalLayout_5 = QtGui.QVBoxLayout(self.uiFindspotTab)
        self.verticalLayout_5.setObjectName(_fromUtf8("verticalLayout_5"))
        self.uiDatingGrp = QtGui.QGroupBox(self.uiFindspotTab)
        self.uiDatingGrp.setEnabled(True)
        self.uiDatingGrp.setCheckable(True)
        self.uiDatingGrp.setChecked(False)
        self.uiDatingGrp.setObjectName(_fromUtf8("uiDatingGrp"))
        self.gridLayout_3 = QtGui.QGridLayout(self.uiDatingGrp)
        self.gridLayout_3.setObjectName(_fromUtf8("gridLayout_3"))
        self.uiPeriodDetailsChk = QtGui.QCheckBox(self.uiDatingGrp)
        self.uiPeriodDetailsChk.setObjectName(_fromUtf8("uiPeriodDetailsChk"))
        self.gridLayout_3.addWidget(self.uiPeriodDetailsChk, 2, 0, 1, 1)
        self.uiPeriodChk = QtGui.QCheckBox(self.uiDatingGrp)
        self.uiPeriodChk.setObjectName(_fromUtf8("uiPeriodChk"))
        self.gridLayout_3.addWidget(self.uiPeriodChk, 1, 0, 1, 1)
        self.uiTimeCombo = QtGui.QComboBox(self.uiDatingGrp)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.uiTimeCombo.sizePolicy().hasHeightForWidth())
        self.uiTimeCombo.setSizePolicy(sizePolicy)
        self.uiTimeCombo.setObjectName(_fromUtf8("uiTimeCombo"))
        self.gridLayout_3.addWidget(self.uiTimeCombo, 0, 1, 1, 1)
        self.uiPeriodCombo = QtGui.QComboBox(self.uiDatingGrp)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.uiPeriodCombo.sizePolicy().hasHeightForWidth())
        self.uiPeriodCombo.setSizePolicy(sizePolicy)
        self.uiPeriodCombo.setObjectName(_fromUtf8("uiPeriodCombo"))
        self.gridLayout_3.addWidget(self.uiPeriodCombo, 1, 1, 1, 1)
        self.uiPeriodDetailsCombo = QtGui.QComboBox(self.uiDatingGrp)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.uiPeriodDetailsCombo.sizePolicy().hasHeightForWidth())
        self.uiPeriodDetailsCombo.setSizePolicy(sizePolicy)
        self.uiPeriodDetailsCombo.setObjectName(_fromUtf8("uiPeriodDetailsCombo"))
        self.gridLayout_3.addWidget(self.uiPeriodDetailsCombo, 2, 1, 1, 1)
        self.label_3 = QtGui.QLabel(self.uiDatingGrp)
        self.label_3.setObjectName(_fromUtf8("label_3"))
        self.gridLayout_3.addWidget(self.label_3, 0, 0, 1, 1)
        self.verticalLayout_5.addWidget(self.uiDatingGrp)
        self.uiCultureGrp = QtGui.QGroupBox(self.uiFindspotTab)
        self.uiCultureGrp.setEnabled(True)
        self.uiCultureGrp.setCheckable(True)
        self.uiCultureGrp.setChecked(False)
        self.uiCultureGrp.setObjectName(_fromUtf8("uiCultureGrp"))
        self.gridLayout_4 = QtGui.QGridLayout(self.uiCultureGrp)
        self.gridLayout_4.setObjectName(_fromUtf8("gridLayout_4"))
        self.uiCultureCombo = QtGui.QComboBox(self.uiCultureGrp)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.uiCultureCombo.sizePolicy().hasHeightForWidth())
        self.uiCultureCombo.setSizePolicy(sizePolicy)
        self.uiCultureCombo.setObjectName(_fromUtf8("uiCultureCombo"))
        self.gridLayout_4.addWidget(self.uiCultureCombo, 0, 1, 1, 1)
        self.label_9 = QtGui.QLabel(self.uiCultureGrp)
        self.label_9.setObjectName(_fromUtf8("label_9"))
        self.gridLayout_4.addWidget(self.label_9, 0, 0, 1, 1)
        self.verticalLayout_5.addWidget(self.uiCultureGrp)
        self.uiFindTypeGrp = QtGui.QGroupBox(self.uiFindspotTab)
        self.uiFindTypeGrp.setEnabled(True)
        self.uiFindTypeGrp.setCheckable(True)
        self.uiFindTypeGrp.setChecked(False)
        self.uiFindTypeGrp.setObjectName(_fromUtf8("uiFindTypeGrp"))
        self.gridLayout_5 = QtGui.QGridLayout(self.uiFindTypeGrp)
        self.gridLayout_5.setObjectName(_fromUtf8("gridLayout_5"))
        self.label_11 = QtGui.QLabel(self.uiFindTypeGrp)
        self.label_11.setObjectName(_fromUtf8("label_11"))
        self.gridLayout_5.addWidget(self.label_11, 0, 0, 1, 1)
        self.uiFindTypeCombo = QtGui.QComboBox(self.uiFindTypeGrp)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.uiFindTypeCombo.sizePolicy().hasHeightForWidth())
        self.uiFindTypeCombo.setSizePolicy(sizePolicy)
        self.uiFindTypeCombo.setObjectName(_fromUtf8("uiFindTypeCombo"))
        self.gridLayout_5.addWidget(self.uiFindTypeCombo, 0, 1, 1, 1)
        self.uiFindTypeDetailsCombo = QtGui.QComboBox(self.uiFindTypeGrp)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.uiFindTypeDetailsCombo.sizePolicy().hasHeightForWidth())
        self.uiFindTypeDetailsCombo.setSizePolicy(sizePolicy)
        self.uiFindTypeDetailsCombo.setObjectName(_fromUtf8("uiFindTypeDetailsCombo"))
        self.gridLayout_5.addWidget(self.uiFindTypeDetailsCombo, 1, 1, 1, 1)
        self.uiFindTypeDetailsChk = QtGui.QCheckBox(self.uiFindTypeGrp)
        self.uiFindTypeDetailsChk.setObjectName(_fromUtf8("uiFindTypeDetailsChk"))
        self.gridLayout_5.addWidget(self.uiFindTypeDetailsChk, 1, 0, 1, 1)
        self.verticalLayout_5.addWidget(self.uiFindTypeGrp)
        self.uiSpatialFilterGrp = QtGui.QGroupBox(self.uiFindspotTab)
        self.uiSpatialFilterGrp.setEnabled(True)
        self.uiSpatialFilterGrp.setFlat(False)
        self.uiSpatialFilterGrp.setCheckable(True)
        self.uiSpatialFilterGrp.setChecked(False)
        self.uiSpatialFilterGrp.setObjectName(_fromUtf8("uiSpatialFilterGrp"))
        self.verticalLayout_14 = QtGui.QVBoxLayout(self.uiSpatialFilterGrp)
        self.verticalLayout_14.setObjectName(_fromUtf8("verticalLayout_14"))
        self.label_12 = QtGui.QLabel(self.uiSpatialFilterGrp)
        self.label_12.setObjectName(_fromUtf8("label_12"))
        self.verticalLayout_14.addWidget(self.label_12)
        self.uiFilterByMapLayerCombo = QgsMapLayerComboBox(self.uiSpatialFilterGrp)
        self.uiFilterByMapLayerCombo.setObjectName(_fromUtf8("uiFilterByMapLayerCombo"))
        self.verticalLayout_14.addWidget(self.uiFilterByMapLayerCombo)
        self.verticalLayout_5.addWidget(self.uiSpatialFilterGrp)
        self.horizontalLayout_12 = QtGui.QHBoxLayout()
        self.horizontalLayout_12.setObjectName(_fromUtf8("horizontalLayout_12"))
        spacerItem2 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
        self.horizontalLayout_12.addItem(spacerItem2)
        self.uiSearchFindSpotBtn = QtGui.QPushButton(self.uiFindspotTab)
        self.uiSearchFindSpotBtn.setEnabled(False)
        self.uiSearchFindSpotBtn.setIcon(icon1)
        self.uiSearchFindSpotBtn.setObjectName(_fromUtf8("uiSearchFindSpotBtn"))
        self.horizontalLayout_12.addWidget(self.uiSearchFindSpotBtn)
        self.verticalLayout_5.addLayout(self.horizontalLayout_12)
        self.tabWidget.addTab(self.uiFindspotTab, _fromUtf8(""))
        self.verticalLayout_3.addWidget(self.tabWidget)
        self.uiSearchTab.addTab(self.tab_10, _fromUtf8(""))
        self.verticalLayout.addWidget(self.uiSearchTab)
        spacerItem3 = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding)
        self.verticalLayout.addItem(spacerItem3)
        apisSearchDialog.setWidget(self.dockWidgetContents)

        self.retranslateUi(apisSearchDialog)
        self.uiSearchTab.setCurrentIndex(0)
        self.tabWidget.setCurrentIndex(0)
        QtCore.QMetaObject.connectSlotsByName(apisSearchDialog)
# coding: utf-8
from PyQt4.QtGui import QDialog, QFormLayout
from qgis.gui import QgsFieldComboBox, QgsMapLayerComboBox

# Create dialog
new_dialog = QDialog()

# Add combobox for layer and field
map_layer_combo_box = QgsMapLayerComboBox()
map_layer_combo_box.setCurrentIndex(-1)
field_combo_box = QgsFieldComboBox()

# Create a form layout and add the two combobox
layout = QFormLayout()
layout.addWidget(map_layer_combo_box)
layout.addWidget(field_combo_box)

# Add signal event
map_layer_combo_box.layerChanged.connect(field_combo_box.setLayer)  # setLayer is a native slot function


def on_field_changed(fieldName):
    print(fieldName)
    print("Layer field changed")

field_combo_box.fieldChanged.connect(on_field_changed)

new_dialog.setLayout(layout)
new_dialog.show()  # To see possibility of this component, you need at least a layer opened
Example #47
0
    def setupUi(self, ui_my_queries):
        ui_my_queries.setObjectName(_fromUtf8("ui_my_queries"))
        ui_my_queries.resize(727, 794)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Preferred, QtGui.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(ui_my_queries.sizePolicy().hasHeightForWidth())
        ui_my_queries.setSizePolicy(sizePolicy)
        ui_my_queries.setMinimumSize(QtCore.QSize(225, 262))
        self.verticalLayout_3 = QtGui.QVBoxLayout(ui_my_queries)
        self.verticalLayout_3.setObjectName(_fromUtf8("verticalLayout_3"))
        self.scrollArea = QtGui.QScrollArea(ui_my_queries)
        self.scrollArea.setFrameShape(QtGui.QFrame.NoFrame)
        self.scrollArea.setFrameShadow(QtGui.QFrame.Plain)
        self.scrollArea.setWidgetResizable(True)
        self.scrollArea.setObjectName(_fromUtf8("scrollArea"))
        self.scrollAreaWidgetContents = QtGui.QWidget()
        self.scrollAreaWidgetContents.setGeometry(QtCore.QRect(0, 0, 719, 786))
        self.scrollAreaWidgetContents.setObjectName(_fromUtf8("scrollAreaWidgetContents"))
        self.verticalLayout = QtGui.QVBoxLayout(self.scrollAreaWidgetContents)
        self.verticalLayout.setObjectName(_fromUtf8("verticalLayout"))
        self.lineEdit_search = QtGui.QLineEdit(self.scrollAreaWidgetContents)
        self.lineEdit_search.setObjectName(_fromUtf8("lineEdit_search"))
        self.verticalLayout.addWidget(self.lineEdit_search)
        self.treeQueries = QtGui.QTreeWidget(self.scrollAreaWidgetContents)
        self.treeQueries.setContextMenuPolicy(QtCore.Qt.CustomContextMenu)
        self.treeQueries.setColumnCount(1)
        self.treeQueries.setObjectName(_fromUtf8("treeQueries"))
        self.treeQueries.header().setVisible(False)
        self.verticalLayout.addWidget(self.treeQueries)
        self.formLayout = QtGui.QFormLayout()
        self.formLayout.setObjectName(_fromUtf8("formLayout"))
        self.label_2 = QtGui.QLabel(self.scrollAreaWidgetContents)
        self.label_2.setText(_fromUtf8("{{geocodeArea:}}"))
        self.label_2.setObjectName(_fromUtf8("label_2"))
        self.formLayout.setWidget(0, QtGui.QFormLayout.LabelRole, self.label_2)
        self.lineEdit_nominatim = QtGui.QLineEdit(self.scrollAreaWidgetContents)
        self.lineEdit_nominatim.setObjectName(_fromUtf8("lineEdit_nominatim"))
        self.formLayout.setWidget(0, QtGui.QFormLayout.FieldRole, self.lineEdit_nominatim)
        self.label_5 = QtGui.QLabel(self.scrollAreaWidgetContents)
        self.label_5.setText(_fromUtf8("{{bbox}}"))
        self.label_5.setObjectName(_fromUtf8("label_5"))
        self.formLayout.setWidget(1, QtGui.QFormLayout.LabelRole, self.label_5)
        self.radioButton_extentMapCanvas = QtGui.QRadioButton(self.scrollAreaWidgetContents)
        self.radioButton_extentMapCanvas.setChecked(True)
        self.radioButton_extentMapCanvas.setObjectName(_fromUtf8("radioButton_extentMapCanvas"))
        self.formLayout.setWidget(1, QtGui.QFormLayout.FieldRole, self.radioButton_extentMapCanvas)
        self.horizontalLayout_5 = QtGui.QHBoxLayout()
        self.horizontalLayout_5.setObjectName(_fromUtf8("horizontalLayout_5"))
        self.radioButton_extentLayer = QtGui.QRadioButton(self.scrollAreaWidgetContents)
        self.radioButton_extentLayer.setObjectName(_fromUtf8("radioButton_extentLayer"))
        self.horizontalLayout_5.addWidget(self.radioButton_extentLayer)
        self.comboBox_extentLayer = QgsMapLayerComboBox(self.scrollAreaWidgetContents)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.comboBox_extentLayer.sizePolicy().hasHeightForWidth())
        self.comboBox_extentLayer.setSizePolicy(sizePolicy)
        self.comboBox_extentLayer.setObjectName(_fromUtf8("comboBox_extentLayer"))
        self.horizontalLayout_5.addWidget(self.comboBox_extentLayer)
        self.formLayout.setLayout(2, QtGui.QFormLayout.FieldRole, self.horizontalLayout_5)
        self.verticalLayout.addLayout(self.formLayout)
        self.groupBox = QgsCollapsibleGroupBox(self.scrollAreaWidgetContents)
        self.groupBox.setChecked(False)
        self.groupBox.setObjectName(_fromUtf8("groupBox"))
        self.verticalLayout_2 = QtGui.QVBoxLayout(self.groupBox)
        self.verticalLayout_2.setObjectName(_fromUtf8("verticalLayout_2"))
        self.formLayout_4 = QtGui.QFormLayout()
        self.formLayout_4.setFieldGrowthPolicy(QtGui.QFormLayout.ExpandingFieldsGrow)
        self.formLayout_4.setObjectName(_fromUtf8("formLayout_4"))
        self.label_7 = QtGui.QLabel(self.groupBox)
        self.label_7.setText(_fromUtf8(""))
        self.label_7.setObjectName(_fromUtf8("label_7"))
        self.formLayout_4.setWidget(6, QtGui.QFormLayout.FieldRole, self.label_7)
        self.label_3 = QtGui.QLabel(self.groupBox)
        self.label_3.setObjectName(_fromUtf8("label_3"))
        self.formLayout_4.setWidget(1, QtGui.QFormLayout.LabelRole, self.label_3)
        self.label_10 = QtGui.QLabel(self.groupBox)
        self.label_10.setText(_fromUtf8("Points"))
        self.label_10.setObjectName(_fromUtf8("label_10"))
        self.formLayout_4.setWidget(2, QtGui.QFormLayout.LabelRole, self.label_10)
        self.horizontalLayout_4 = QtGui.QHBoxLayout()
        self.horizontalLayout_4.setObjectName(_fromUtf8("horizontalLayout_4"))
        self.checkBox_points = QtGui.QCheckBox(self.groupBox)
        self.checkBox_points.setText(_fromUtf8(""))
        self.checkBox_points.setChecked(True)
        self.checkBox_points.setObjectName(_fromUtf8("checkBox_points"))
        self.horizontalLayout_4.addWidget(self.checkBox_points)
        self.lineEdit_csv_points = QtGui.QLineEdit(self.groupBox)
        self.lineEdit_csv_points.setInputMask(_fromUtf8(""))
        self.lineEdit_csv_points.setText(_fromUtf8(""))
        self.lineEdit_csv_points.setPlaceholderText(_fromUtf8("col1,col2,col3"))
        self.lineEdit_csv_points.setObjectName(_fromUtf8("lineEdit_csv_points"))
        self.horizontalLayout_4.addWidget(self.lineEdit_csv_points)
        self.formLayout_4.setLayout(2, QtGui.QFormLayout.FieldRole, self.horizontalLayout_4)
        self.horizontalLayout_6 = QtGui.QHBoxLayout()
        self.horizontalLayout_6.setObjectName(_fromUtf8("horizontalLayout_6"))
        self.checkBox_lines = QtGui.QCheckBox(self.groupBox)
        self.checkBox_lines.setText(_fromUtf8(""))
        self.checkBox_lines.setChecked(True)
        self.checkBox_lines.setObjectName(_fromUtf8("checkBox_lines"))
        self.horizontalLayout_6.addWidget(self.checkBox_lines)
        self.lineEdit_csv_lines = QtGui.QLineEdit(self.groupBox)
        self.lineEdit_csv_lines.setObjectName(_fromUtf8("lineEdit_csv_lines"))
        self.horizontalLayout_6.addWidget(self.lineEdit_csv_lines)
        self.formLayout_4.setLayout(3, QtGui.QFormLayout.FieldRole, self.horizontalLayout_6)
        self.label_11 = QtGui.QLabel(self.groupBox)
        self.label_11.setText(_fromUtf8("Lines"))
        self.label_11.setObjectName(_fromUtf8("label_11"))
        self.formLayout_4.setWidget(3, QtGui.QFormLayout.LabelRole, self.label_11)
        self.horizontalLayout_7 = QtGui.QHBoxLayout()
        self.horizontalLayout_7.setObjectName(_fromUtf8("horizontalLayout_7"))
        self.checkBox_multilinestrings = QtGui.QCheckBox(self.groupBox)
        self.checkBox_multilinestrings.setText(_fromUtf8(""))
        self.checkBox_multilinestrings.setChecked(True)
        self.checkBox_multilinestrings.setObjectName(_fromUtf8("checkBox_multilinestrings"))
        self.horizontalLayout_7.addWidget(self.checkBox_multilinestrings)
        self.lineEdit_csv_multilinestrings = QtGui.QLineEdit(self.groupBox)
        self.lineEdit_csv_multilinestrings.setPlaceholderText(_fromUtf8(""))
        self.lineEdit_csv_multilinestrings.setObjectName(_fromUtf8("lineEdit_csv_multilinestrings"))
        self.horizontalLayout_7.addWidget(self.lineEdit_csv_multilinestrings)
        self.formLayout_4.setLayout(4, QtGui.QFormLayout.FieldRole, self.horizontalLayout_7)
        self.label_14 = QtGui.QLabel(self.groupBox)
        self.label_14.setText(_fromUtf8("Multilinestrings"))
        self.label_14.setObjectName(_fromUtf8("label_14"))
        self.formLayout_4.setWidget(4, QtGui.QFormLayout.LabelRole, self.label_14)
        self.horizontalLayout_8 = QtGui.QHBoxLayout()
        self.horizontalLayout_8.setObjectName(_fromUtf8("horizontalLayout_8"))
        self.checkBox_multipolygons = QtGui.QCheckBox(self.groupBox)
        self.checkBox_multipolygons.setText(_fromUtf8(""))
        self.checkBox_multipolygons.setChecked(True)
        self.checkBox_multipolygons.setObjectName(_fromUtf8("checkBox_multipolygons"))
        self.horizontalLayout_8.addWidget(self.checkBox_multipolygons)
        self.lineEdit_csv_multipolygons = QtGui.QLineEdit(self.groupBox)
        self.lineEdit_csv_multipolygons.setPlaceholderText(_fromUtf8(""))
        self.lineEdit_csv_multipolygons.setObjectName(_fromUtf8("lineEdit_csv_multipolygons"))
        self.horizontalLayout_8.addWidget(self.lineEdit_csv_multipolygons)
        self.formLayout_4.setLayout(5, QtGui.QFormLayout.FieldRole, self.horizontalLayout_8)
        self.label_12 = QtGui.QLabel(self.groupBox)
        self.label_12.setText(_fromUtf8("Multipolygons"))
        self.label_12.setObjectName(_fromUtf8("label_12"))
        self.formLayout_4.setWidget(5, QtGui.QFormLayout.LabelRole, self.label_12)
        self.verticalLayout_2.addLayout(self.formLayout_4)
        self.formLayout_2 = QtGui.QFormLayout()
        self.formLayout_2.setFieldGrowthPolicy(QtGui.QFormLayout.ExpandingFieldsGrow)
        self.formLayout_2.setObjectName(_fromUtf8("formLayout_2"))
        self.label_4 = QtGui.QLabel(self.groupBox)
        self.label_4.setObjectName(_fromUtf8("label_4"))
        self.formLayout_2.setWidget(0, QtGui.QFormLayout.LabelRole, self.label_4)
        self.horizontalLayout = QtGui.QHBoxLayout()
        self.horizontalLayout.setObjectName(_fromUtf8("horizontalLayout"))
        self.lineEdit_browseDir = QtGui.QLineEdit(self.groupBox)
        self.lineEdit_browseDir.setObjectName(_fromUtf8("lineEdit_browseDir"))
        self.horizontalLayout.addWidget(self.lineEdit_browseDir)
        self.pushButton_browse_output_file = QtGui.QPushButton(self.groupBox)
        self.pushButton_browse_output_file.setObjectName(_fromUtf8("pushButton_browse_output_file"))
        self.horizontalLayout.addWidget(self.pushButton_browse_output_file)
        self.formLayout_2.setLayout(0, QtGui.QFormLayout.FieldRole, self.horizontalLayout)
        self.label_6 = QtGui.QLabel(self.groupBox)
        self.label_6.setObjectName(_fromUtf8("label_6"))
        self.formLayout_2.setWidget(1, QtGui.QFormLayout.LabelRole, self.label_6)
        self.lineEdit_filePrefix = QtGui.QLineEdit(self.groupBox)
        self.lineEdit_filePrefix.setObjectName(_fromUtf8("lineEdit_filePrefix"))
        self.formLayout_2.setWidget(1, QtGui.QFormLayout.FieldRole, self.lineEdit_filePrefix)
        self.verticalLayout_2.addLayout(self.formLayout_2)
        self.verticalLayout.addWidget(self.groupBox)
        self.horizontalLayout_3 = QtGui.QHBoxLayout()
        self.horizontalLayout_3.setSizeConstraint(QtGui.QLayout.SetMinimumSize)
        self.horizontalLayout_3.setObjectName(_fromUtf8("horizontalLayout_3"))
        self.pushButton_showQuery = QtGui.QPushButton(self.scrollAreaWidgetContents)
        self.pushButton_showQuery.setObjectName(_fromUtf8("pushButton_showQuery"))
        self.horizontalLayout_3.addWidget(self.pushButton_showQuery)
        self.pushButton_runQuery = QtGui.QPushButton(self.scrollAreaWidgetContents)
        self.pushButton_runQuery.setDefault(True)
        self.pushButton_runQuery.setObjectName(_fromUtf8("pushButton_runQuery"))
        self.horizontalLayout_3.addWidget(self.pushButton_runQuery)
        self.verticalLayout.addLayout(self.horizontalLayout_3)
        self.label_progress = QtGui.QLabel(self.scrollAreaWidgetContents)
        self.label_progress.setText(_fromUtf8("text progress"))
        self.label_progress.setObjectName(_fromUtf8("label_progress"))
        self.verticalLayout.addWidget(self.label_progress)
        self.progressBar_execution = QtGui.QProgressBar(self.scrollAreaWidgetContents)
        self.progressBar_execution.setProperty("value", 0)
        self.progressBar_execution.setObjectName(_fromUtf8("progressBar_execution"))
        self.verticalLayout.addWidget(self.progressBar_execution)
        spacerItem = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding)
        self.verticalLayout.addItem(spacerItem)
        self.scrollArea.setWidget(self.scrollAreaWidgetContents)
        self.verticalLayout_3.addWidget(self.scrollArea)

        self.retranslateUi(ui_my_queries)
        QtCore.QObject.connect(self.checkBox_points, QtCore.SIGNAL(_fromUtf8("toggled(bool)")), self.lineEdit_csv_points.setEnabled)
        QtCore.QObject.connect(self.checkBox_lines, QtCore.SIGNAL(_fromUtf8("toggled(bool)")), self.lineEdit_csv_lines.setEnabled)
        QtCore.QObject.connect(self.checkBox_multilinestrings, QtCore.SIGNAL(_fromUtf8("toggled(bool)")), self.lineEdit_csv_multilinestrings.setEnabled)
        QtCore.QObject.connect(self.checkBox_multipolygons, QtCore.SIGNAL(_fromUtf8("toggled(bool)")), self.lineEdit_csv_multipolygons.setEnabled)
        QtCore.QMetaObject.connectSlotsByName(ui_my_queries)
Example #48
0
class LatticeData:
    """QGIS Plugin Implementation."""

    def __init__(self, iface):
        """Constructor.

        :param iface: An interface instance that will be passed to this class
            which provides the hook by which you can manipulate the QGIS
            application at run time.
        :type iface: QgsInterface
        """
        # Save reference to the QGIS interface
        self.iface = iface
        # initialize plugin directory
        self.plugin_dir = os.path.dirname(__file__)
        # initialize locale
        locale = QSettings().value('locale/userLocale')[0:2]
        locale_path = os.path.join(
            self.plugin_dir,
            'i18n',
            'LatticeData_{}.qm'.format(locale))

        if os.path.exists(locale_path):
            self.translator = QTranslator()
            self.translator.load(locale_path)

            if qVersion() > '4.3.3':
                QCoreApplication.installTranslator(self.translator)

        # Create the dialog (after translation) and keep reference
        self.dlg = LatticeDataDialog()

        # Declare instance attributes
        self.actions = []
        self.menu = self.tr(u'&Lattice Data')
        # TODO: We are going to let the user set this up in a future iteration
        self.toolbar = self.iface.addToolBar(u'LatticeData')
        self.toolbar.setObjectName(u'LatticeData')

        """buttons connected with methods"""
        """comboBoxLayer"""

        self.cmbBoxSelectLayer = QgsMapLayerComboBox(self.dlg)
        self.cmbBoxSelectLayer.setFixedWidth(200)
        self.cmbBoxSelectLayer.move(140,20)
        self.cmbBoxSelectLayer.setFilters(QgsMapLayerProxyModel.PolygonLayer)
        self.cmbBoxSelectLayer.enabledChange(False)
        self.cmbBoxSelectLayer.currentIndexChanged[str].connect(self.changeCurrentIndex)

        """radioButtonSelectMatrix"""

        self.dlg.rdButton_nm.clicked.connect(self.activateNewMatrix)
        self.dlg.rdButton_sm.clicked.connect(self.activateSelectMatrix)

        """radioButtonSelectMatrixWeight"""

        self.dlg.rdButtonContW.clicked.connect(self.radioContW)
        self.dlg.rdButtonDisW.clicked.connect(self.radioDisW)
        self.dlg.rdButtonKNW.clicked.connect(self.radioKNW)

        """sliderdistance"""

        self.dlg.horizontalSlider.setMinimum(0)
        self.dlg.horizontalSlider.setMaximum(100)
        self.dlg.horizontalSlider.setSingleStep(1)
        self.dlg.horizontalSlider.valueChanged[int].connect(self.changeValueSlider)

        """Buttons and connects"""

        self.dlg.btnSave.clicked.connect(self.generate_matrix)

        self.dlg.checkBox.stateChanged.connect(self.activatemoranI)

        self.dlg.cmbBoxSelectField.currentIndexChanged[str].connect(self.moranI)

        self.dlg.btnMoranI.clicked.connect(self.grafico)

    # noinspection PyMethodMayBeStatic
    def tr(self, message):
        """Get the translation for a string using Qt translation API.

        We implement this ourselves since we do not inherit QObject.

        :param message: String for translation.
        :type message: str, QString

        :returns: Translated version of message.
        :rtype: QString
        """
        # noinspection PyTypeChecker,PyArgumentList,PyCallByClass
        return QCoreApplication.translate('LatticeData', message)


    def add_action(
        self,
        icon_path,
        text,
        callback,
        enabled_flag=True,
        add_to_menu=True,
        add_to_toolbar=True,
        status_tip=None,
        whats_this=None,
        parent=None):
        """Add a toolbar icon to the toolbar.

        :param icon_path: Path to the icon for this action. Can be a resource
            path (e.g. ':/plugins/foo/bar.png') or a normal file system path.
        :type icon_path: str

        :param text: Text that should be shown in menu items for this action.
        :type text: str

        :param callback: Function to be called when the action is triggered.
        :type callback: function

        :param enabled_flag: A flag indicating if the action should be enabled
            by default. Defaults to True.
        :type enabled_flag: bool

        :param add_to_menu: Flag indicating whether the action should also
            be added to the menu. Defaults to True.
        :type add_to_menu: bool

        :param add_to_toolbar: Flag indicating whether the action should also
            be added to the toolbar. Defaults to True.
        :type add_to_toolbar: bool

        :param status_tip: Optional text to show in a popup when mouse pointer
            hovers over the action.
        :type status_tip: str

        :param parent: Parent widget for the new action. Defaults None.
        :type parent: QWidget

        :param whats_this: Optional text to show in the status bar when the
            mouse pointer hovers over the action.

        :returns: The action that was created. Note that the action is also
            added to self.actions list.
        :rtype: QAction
        """

        icon = QIcon(icon_path)
        action = QAction(icon, text, parent)
        action.triggered.connect(callback)
        action.setEnabled(enabled_flag)

        if status_tip is not None:
            action.setStatusTip(status_tip)

        if whats_this is not None:
            action.setWhatsThis(whats_this)

        if add_to_toolbar:
            self.toolbar.addAction(action)

        if add_to_menu:
            self.iface.addPluginToMenu(
                self.menu,
                action)

        self.actions.append(action)

        return action

    def initGui(self):
        """Create the menu entries and toolbar icons inside the QGIS GUI."""

        icon_path = ':/plugins/LatticeData/icon.png'
        self.add_action(
            icon_path,
            text=self.tr(u'Lattice Data'),
            callback=self.run,
            parent=self.iface.mainWindow())

    """Enable GroupBox and Widgets for select type"""

    def activateNewMatrix(self,enable):
        if enable:
            self.dlg.groupBox_wm.setEnabled(True)
            self.dlg.groupBox_mi.setEnabled(False)
            self.dlg.widget_sm.setEnabled(False)

    """Enable GroupBox and Widgets for select type"""

    def activateSelectMatrix(self,enable):
        if enable:
            self.dlg.groupBox_wm.setEnabled(False)
            self.dlg.groupBox_mi.setEnabled(True)
            self.dlg.widget_sm.setEnabled(True)

    """Enable GroupBox and Widgets for Contiguity Matrix"""

    def radioContW(self,enable):
        if enable:
            self.dlg.widget_cw.setEnabled(True)
            self.dlg.widget_dw.setEnabled(False)
            self.dlg.widget_knn.setEnabled(False)

    """Enable GroupBox and Widgets for distance Matrix"""

    def radioDisW(self,enable):
        if enable:
            self.dlg.widget_cw.setEnabled(False)
            self.dlg.widget_dw.setEnabled(True)
            self.dlg.widget_knn.setEnabled(False)

    """Enable GroupBox and Widgets for k Neighbors Matrix"""

    def radioKNW(self,enable):
        if enable:
            self.dlg.widget_cw.setEnabled(False)
            self.dlg.widget_dw.setEnabled(False)
            self.dlg.widget_knn.setEnabled(True)

    """Generate Matrix for select type and file extension"""

    def generate_matrix(self):

        if self.dlg.txtOutput.text()=='':
            QtGui.QMessageBox.warning(None,"Error","Oops!  Generate weight matrix.  Try again...")

        else:
            filenamein=self.myfile
            filename = self.dlg.txtOutput.text()
            self.filename=filename
            ext=filename[-3:]

            """matrix"""
            if self.dlg.rdButtonContW.isChecked()==True:

                if self.dlg.rdButtonContWQ.isChecked()==True:
                    w = pysal.queen_from_shapefile(filenamein,idVariable=None)
                    if ext=='gal':
                        output_file = pysal.open(filename,'w')
                        output_file.write(w)
                    else:
                        output_file = pysal.open(filename,'w','arcgis_dbf')
                        output_file.write(w, useIdIndex=True)
                    output_file.close()

                if self.dlg.rdButtonContWR.isChecked()==True:
                    w = pysal.rook_from_shapefile(filenamein,idVariable=None)
                    if ext=='gal':
                        output_file = pysal.open(filename,'w')
                        output_file.write(w)
                    else:
                        output_file = pysal.open(filename,'w','arcgis_dbf')
                        output_file.write(w, useIdIndex=True)
                    output_file.close()

                if self.dlg.rdButtonContWB.isChecked()==True:
                    wr = pysal.rook_from_shapefile(filenamein,idVariable=None)
                    wq = pysal.queen_from_shapefile(filenamein,idVariable=None)
                    wb = pysal.w_difference(wq, wr,constrained = False)
                    if ext=='gal':
                        output_file = pysal.open(filename,'w')
                        output_file.write(wb)
                    else:
                        output_file = pysal.open(filename,'w','arcgis_dbf')
                        output_file.write(wb, useIdIndex=True)
                    output_file.close()

            if self.dlg.rdButtonDisW.isChecked()==True:

                w = pysal.threshold_binaryW_from_shapefile(filenamein, float(self.dlg.txtThresh.text()))
                if ext=='gal':
                    output_file = pysal.open(filename,'w')
                    output_file.write(w)
                else:
                    output_file = pysal.open(filename,'w','arcgis_dbf')
                    output_file.write(w, useIdIndex=True)
                output_file.close()

            if self.dlg.rdButtonKNW.isChecked()==True:

                w = pysal.knnW_from_shapefile(filenamein, k=self.dlg.spinBox.value())
                if ext=='gal':
                    output_file = pysal.open(filename,'w')
                    output_file.write(w)
                else:
                    output_file = pysal.open(filename,'w','arcgis_dbf')
                    output_file.write(w, useIdIndex=True)
                output_file.close()

            """end matrix"""

            QtGui.QMessageBox.warning(None,"Complete","Weight matrix is generated")

    """Enable GroupBox and Widgets for calculate MoransI"""

    def activatemoranI(self, enable):

        if enable==2 and self.dlg.txtOutput.text()=='':
            QtGui.QMessageBox.warning(None,"Error","Oops!  Generate weight matrix.  Try again...")
            self.dlg.checkBox.setCheckState(0)
            enable=0
        if enable==2 and self.dlg.txtOutput.text()!='':
            self.dlg.txtSelect.setText(self.dlg.txtOutput.text())
            self.dlg.groupBox_mi.setEnabled(True)
            self.dlg.groupBox_wm.setEnabled(False)
        if enable==0:
            self.dlg.txtMoranI.clear()
            self.dlg.txtMoranIp.clear()
            self.dlg.txtMoranIint.clear()
            self.dlg.groupBox_mi.setEnabled(False)
            self.dlg.groupBox_wm.setEnabled(True)

    """Calculate MoransI for index in comboBox"""

    def moranI(self):

        if (self.dlg.checkBox.checkState()==2 and self.dlg.rdButton_nm.isChecked()==True)or self.dlg.rdButton_sm.isChecked()==True:

            self.w=pysal.open(os.path.join(os.path.dirname(__file__), 'default.gal')).read()
            try:
                self.w = pysal.open(self.dlg.txtSelect.text()).read()

            except IOError, e:
                print e.errno
                print e

            selectedFieldIndex = self.dlg.cmbBoxSelectField.currentIndex()
            field= self.fieldsnumeric[selectedFieldIndex]
            self.fieldName = field.name()

            dbasefile=self.myfile[:-3]+'dbf'
            dbase = pysal.open(dbasefile)
            self.y = np.array(dbase.by_col[self.fieldName], dtype=('<f8'))

            """self.dlg.txtSelectSystemC.setPlainText("")
            for i in self.y:
                self.dlg.txtSelectSystemC.appendPlainText(str(i))"""

            if self.w.n == self.y.size:
                self.mi = pysal.Moran(self.y, self.w, two_tailed=False)

                self.dlg.txtMoranI.setText(str(round(self.mi.I,5)))
                self.dlg.txtMoranIp.setText(str(round(self.mi.p_norm,5)))

                if self.mi.I >0.75 and self.mi.p_norm <0.05:
                    self.dlg.txtMoranIint.setText("I de Moran cercano a 1 y p value significativo (confianza 95%): posible autocorrelacion espacial")
                elif self.mi.I <-0.75 and self.mi.p_norm <0.05:
                    self.dlg.txtMoranIint.setText("I de Moran cercano a -1 y p value significativo (confianza 95%): posible autocorrelacion espacial")
                elif self.mi.I >-0.05 and  self.mi.I <0.05:
                    self.dlg.txtMoranIint.setText("I de Moran cercano a 0: no existe autocorrelacion espacial")
                elif self.mi.p_norm <0.05:
                    self.dlg.txtMoranIint.setText("p value significativo (confianza 95%): posible autocorrelacion espacial debil")
                else:
                    self.dlg.txtMoranIint.setText("p value no significativo (confianza 95%): no existe autocorrelacion espacial")

                """lm = pysal.Moran_Local(y,w)"""
                """self.dlg.txtSelectSystemC2.appendPlainText(str(lm.p_sim))"""
                """self.dlg.txtOutput_2.setText(str(self.w.n)+' - '+str(self.y.size))"""
            else:
                QtGui.QMessageBox.warning(None,"Error","Oops!  matrix has not been generated or not exists.  Generate and try again...")
                self.dlg.checkBox.setCheckState(0)
                self.dlg.txtMoranI.clear()
                self.dlg.txtMoranIp.clear()
                self.dlg.txtMoranIint.clear()
                """self.dlg.txtSelectSystemC.setPlainText("")"""
                self.dlg.groupBox_wm.setEnabled(True)
                self.dlg.groupBox_mi.setEnabled(False)
                self.dlg.widget_sm.setEnabled(False)
                self.dlg.rdButton_sm.setChecked(0)
                self.dlg.rdButton_nm.setChecked(1)
Example #49
0
class Ui_form1(object):
    def setupUi(self, form1):
        form1.setObjectName(_fromUtf8("form1"))
        form1.resize(400, 253)
        form1.setFocusPolicy(QtCore.Qt.TabFocus)
        form1.setWindowTitle(_fromUtf8("Kuwahara filter"))
        icon = QtGui.QIcon()
        icon.addPixmap(QtGui.QPixmap(_fromUtf8(":/qgis.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        form1.setWindowIcon(icon)
        self.label = QLabel(form1)
        self.label.setGeometry(QtCore.QRect(21, 10, 111, 20))
        font = QtGui.QFont()
        font.setPointSize(10)
        self.label.setFont(font)
        self.label.setToolTip(_fromUtf8(""))
        self.label.setObjectName(_fromUtf8("label"))
        self.outputb = QPushButton(form1)
        self.outputb.setGeometry(QtCore.QRect(320, 47, 31, 23))
        self.outputb.setObjectName(_fromUtf8("outputb"))
        self.label_2 = QLabel(form1)
        self.label_2.setGeometry(QtCore.QRect(22, 49, 101, 20))
        font = QtGui.QFont()
        font.setPointSize(10)
        self.label_2.setFont(font)
        self.label_2.setToolTip(_fromUtf8(""))
        self.label_2.setObjectName(_fromUtf8("label_2"))
        self.progressBar = QProgressBar(form1)
        self.progressBar.setGeometry(QtCore.QRect(19, 220, 361, 23))
        self.progressBar.setProperty(_fromUtf8("value"), 24)
        self.progressBar.setObjectName(_fromUtf8("progressBar"))
        self.label_3 = QLabel(form1)
        self.label_3.setGeometry(QtCore.QRect(22, 88, 131, 20))
        font = QtGui.QFont()
        font.setPointSize(10)
        self.label_3.setFont(font)
        self.label_3.setObjectName(_fromUtf8("label_3"))
        self.label_4 = QLabel(form1)
        self.label_4.setGeometry(QtCore.QRect(21, 125, 181, 20))
        font = QtGui.QFont()
        font.setPointSize(10)
        self.label_4.setFont(font)
        self.label_4.setObjectName(_fromUtf8("label_4"))
        self.run = QPushButton(form1)
        self.run.setGeometry(QtCore.QRect(139, 185, 101, 23))
        self.run.setObjectName(_fromUtf8("run"))
        self.inputbox = QgsMapLayerComboBox(form1)
        self.inputbox.setGeometry(QtCore.QRect(141, 10, 170, 22))
        self.inputbox.setObjectName(_fromUtf8("input"))
        self.output = QLineEdit(form1)
        self.output.setGeometry(QtCore.QRect(149, 45, 160, 28))
        self.output.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignVCenter)
        self.output.setObjectName(_fromUtf8("output"))
        self.refb = QLineEdit(form1)
        self.refb.setGeometry(QtCore.QRect(149, 82, 160, 28))
        self.refb.setObjectName(_fromUtf8("refb"))
        self.mem = QLineEdit(form1)
        self.mem.setGeometry(QtCore.QRect(208, 120, 101, 28))
        self.mem.setObjectName(_fromUtf8("mem"))
        self.addout = QCheckBox(form1)
        self.addout.setGeometry(QtCore.QRect(100, 158, 171, 17))
        self.addout.setChecked(True)
        self.addout.setObjectName(_fromUtf8("checkBox"))
        self.inputb = QPushButton(form1)
        self.inputb.setGeometry(QtCore.QRect(320, 10, 31, 23))
        self.inputb.setObjectName(_fromUtf8("inputb"))
        self.retranslateUi(form1)
        self.setWindowFlags(QtCore.Qt.WindowFlags(QtCore.Qt.WindowMinimizeButtonHint | QtCore.Qt.WindowMaximizeButtonHint | QtCore.Qt.WindowCloseButtonHint))
        QtCore.QMetaObject.connectSlotsByName(form1)
    def retranslateUi(self, form1):
        self.label.setText(QtCore.QCoreApplication.translate("form1", "Input raster"))
        self.outputb.setText("...")
        self.label_2.setText(QApplication.translate("form1", "Output raster"))
        self.label_3.setToolTip(QApplication.translate("form1", "Reference band from which variances will be calculated to choose subwindow mean."))
        self.label_3.setText(QApplication.translate("form1", "Reference band"))
        self.label_4.setToolTip(QApplication.translate("form1", "Maximum memory usage in megabytes (it is an approximated value, since algorithm will only choose how many lines will be read at once)."))
        self.label_4.setText(QApplication.translate("form1", "Max memory usage (MB)"))
        self.run.setText(QApplication.translate("form1", "Run"))
        self.output.setPlaceholderText(QApplication.translate("form1", "<temporary file>"))
        self.refb.setToolTip(QApplication.translate("form1", "Reference band from which variances will be calculated to choose subwindow mean."))
        self.refb.setText("1")
        self.mem.setToolTip(QApplication.translate("form1", "Maximum memory usage in MeB (it is an approximated value, since algorithm will only choose how many lines will be read at once)."))
        self.mem.setText("100")
        self.addout.setText(QApplication.translate("form1", "Add results to project"))
        self.inputb.setText("...")
    def setupUi(self, Composite_Index):
        Composite_Index.setObjectName(_fromUtf8("Composite_Index"))
        Composite_Index.resize(814, 754)
        self.verticalLayout = QtGui.QVBoxLayout(Composite_Index)
        self.verticalLayout.setObjectName(_fromUtf8("verticalLayout"))
        self.formLayout = QtGui.QFormLayout()
        self.formLayout.setFieldGrowthPolicy(QtGui.QFormLayout.ExpandingFieldsGrow)
        self.formLayout.setObjectName(_fromUtf8("formLayout"))
        self.label = QtGui.QLabel(Composite_Index)
        self.label.setObjectName(_fromUtf8("label"))
        self.formLayout.setWidget(2, QtGui.QFormLayout.LabelRole, self.label)
        self.cbx_aggregation_layer = QgsMapLayerComboBox(Composite_Index)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.cbx_aggregation_layer.sizePolicy().hasHeightForWidth())
        self.cbx_aggregation_layer.setSizePolicy(sizePolicy)
        self.cbx_aggregation_layer.setObjectName(_fromUtf8("cbx_aggregation_layer"))
        self.formLayout.setWidget(2, QtGui.QFormLayout.FieldRole, self.cbx_aggregation_layer)
        self.label_4 = QtGui.QLabel(Composite_Index)
        self.label_4.setObjectName(_fromUtf8("label_4"))
        self.formLayout.setWidget(3, QtGui.QFormLayout.LabelRole, self.label_4)
        self.cbx_indicator_field = QgsFieldComboBox(Composite_Index)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.cbx_indicator_field.sizePolicy().hasHeightForWidth())
        self.cbx_indicator_field.setSizePolicy(sizePolicy)
        self.cbx_indicator_field.setObjectName(_fromUtf8("cbx_indicator_field"))
        self.formLayout.setWidget(3, QtGui.QFormLayout.FieldRole, self.cbx_indicator_field)
        self.label_3 = QtGui.QLabel(Composite_Index)
        self.label_3.setObjectName(_fromUtf8("label_3"))
        self.formLayout.setWidget(11, QtGui.QFormLayout.LabelRole, self.label_3)
        self.label_8 = QtGui.QLabel(Composite_Index)
        self.label_8.setObjectName(_fromUtf8("label_8"))
        self.formLayout.setWidget(12, QtGui.QFormLayout.LabelRole, self.label_8)
        self.horizontalLayout_6 = QtGui.QHBoxLayout()
        self.horizontalLayout_6.setObjectName(_fromUtf8("horizontalLayout_6"))
        self.le_output_filepath = QtGui.QLineEdit(Composite_Index)
        self.le_output_filepath.setObjectName(_fromUtf8("le_output_filepath"))
        self.horizontalLayout_6.addWidget(self.le_output_filepath)
        self.button_browse = QtGui.QPushButton(Composite_Index)
        self.button_browse.setObjectName(_fromUtf8("button_browse"))
        self.horizontalLayout_6.addWidget(self.button_browse)
        self.formLayout.setLayout(12, QtGui.QFormLayout.FieldRole, self.horizontalLayout_6)
        self.horizontalLayout = QtGui.QHBoxLayout()
        self.horizontalLayout.setObjectName(_fromUtf8("horizontalLayout"))
        self.formLayout.setLayout(13, QtGui.QFormLayout.FieldRole, self.horizontalLayout)
        self.radioButton_vector_positive = QtGui.QRadioButton(Composite_Index)
        self.radioButton_vector_positive.setChecked(True)
        self.radioButton_vector_positive.setObjectName(_fromUtf8("radioButton_vector_positive"))
        self.buttonGroup_2 = QtGui.QButtonGroup(Composite_Index)
        self.buttonGroup_2.setObjectName(_fromUtf8("buttonGroup_2"))
        self.buttonGroup_2.addButton(self.radioButton_vector_positive)
        self.formLayout.setWidget(5, QtGui.QFormLayout.FieldRole, self.radioButton_vector_positive)
        self.radioButton_vector_negative = QtGui.QRadioButton(Composite_Index)
        self.radioButton_vector_negative.setObjectName(_fromUtf8("radioButton_vector_negative"))
        self.buttonGroup_2.addButton(self.radioButton_vector_negative)
        self.formLayout.setWidget(6, QtGui.QFormLayout.FieldRole, self.radioButton_vector_negative)
        self.le_new_column = QtGui.QLineEdit(Composite_Index)
        self.le_new_column.setMaxLength(10)
        self.le_new_column.setObjectName(_fromUtf8("le_new_column"))
        self.formLayout.setWidget(11, QtGui.QFormLayout.FieldRole, self.le_new_column)
        self.cbx_list_indicators = QtGui.QListWidget(Composite_Index)
        self.cbx_list_indicators.setObjectName(_fromUtf8("cbx_list_indicators"))
        self.formLayout.setWidget(10, QtGui.QFormLayout.FieldRole, self.cbx_list_indicators)
        self.command_link_button = QtGui.QCommandLinkButton(Composite_Index)
        self.command_link_button.setObjectName(_fromUtf8("command_link_button"))
        self.formLayout.setWidget(8, QtGui.QFormLayout.FieldRole, self.command_link_button)
        self.label_2 = QtGui.QLabel(Composite_Index)
        self.label_2.setObjectName(_fromUtf8("label_2"))
        self.formLayout.setWidget(9, QtGui.QFormLayout.FieldRole, self.label_2)
        self.verticalLayout.addLayout(self.formLayout)
        self.symbology = QgsCollapsibleGroupBox(Composite_Index)
        self.symbology.setCheckable(True)
        self.symbology.setProperty("collapsed", False)
        self.symbology.setObjectName(_fromUtf8("symbology"))
        self.verticalLayout_3 = QtGui.QVBoxLayout(self.symbology)
        self.verticalLayout_3.setObjectName(_fromUtf8("verticalLayout_3"))
        self.horizontalLayout_3 = QtGui.QHBoxLayout()
        self.horizontalLayout_3.setObjectName(_fromUtf8("horizontalLayout_3"))
        self.label_9 = QtGui.QLabel(self.symbology)
        self.label_9.setObjectName(_fromUtf8("label_9"))
        self.horizontalLayout_3.addWidget(self.label_9)
        self.color_low_value = QgsColorButtonV2(self.symbology)
        self.color_low_value.setProperty("color", QtGui.QColor(50, 164, 46))
        self.color_low_value.setObjectName(_fromUtf8("color_low_value"))
        self.horizontalLayout_3.addWidget(self.color_low_value)
        spacerItem = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
        self.horizontalLayout_3.addItem(spacerItem)
        self.label_10 = QtGui.QLabel(self.symbology)
        self.label_10.setObjectName(_fromUtf8("label_10"))
        self.horizontalLayout_3.addWidget(self.label_10)
        self.color_high_value = QgsColorButtonV2(self.symbology)
        self.color_high_value.setProperty("color", QtGui.QColor(202, 33, 36))
        self.color_high_value.setObjectName(_fromUtf8("color_high_value"))
        self.horizontalLayout_3.addWidget(self.color_high_value)
        self.verticalLayout_3.addLayout(self.horizontalLayout_3)
        self.horizontalLayout_4 = QtGui.QHBoxLayout()
        self.horizontalLayout_4.setObjectName(_fromUtf8("horizontalLayout_4"))
        self.label_11 = QtGui.QLabel(self.symbology)
        self.label_11.setObjectName(_fromUtf8("label_11"))
        self.horizontalLayout_4.addWidget(self.label_11)
        self.spinBox_classes = QtGui.QSpinBox(self.symbology)
        self.spinBox_classes.setMinimum(1)
        self.spinBox_classes.setProperty("value", 5)
        self.spinBox_classes.setObjectName(_fromUtf8("spinBox_classes"))
        self.horizontalLayout_4.addWidget(self.spinBox_classes)
        spacerItem1 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
        self.horizontalLayout_4.addItem(spacerItem1)
        self.label_12 = QtGui.QLabel(self.symbology)
        self.label_12.setObjectName(_fromUtf8("label_12"))
        self.horizontalLayout_4.addWidget(self.label_12)
        self.cbx_mode = QtGui.QComboBox(self.symbology)
        self.cbx_mode.setObjectName(_fromUtf8("cbx_mode"))
        self.horizontalLayout_4.addWidget(self.cbx_mode)
        self.verticalLayout_3.addLayout(self.horizontalLayout_4)
        self.verticalLayout.addWidget(self.symbology)
        self.button_box_ok = QtGui.QDialogButtonBox(Composite_Index)
        self.button_box_ok.setOrientation(QtCore.Qt.Horizontal)
        self.button_box_ok.setStandardButtons(QtGui.QDialogButtonBox.Cancel|QtGui.QDialogButtonBox.Ok)
        self.button_box_ok.setObjectName(_fromUtf8("button_box_ok"))
        self.verticalLayout.addWidget(self.button_box_ok)

        self.retranslateUi(Composite_Index)
        QtCore.QObject.connect(self.cbx_aggregation_layer, QtCore.SIGNAL(_fromUtf8("layerChanged(QgsMapLayer*)")), self.cbx_indicator_field.setLayer)
        QtCore.QMetaObject.connectSlotsByName(Composite_Index)
Example #51
0
    def setupUi(self, DockWidget):
        DockWidget.setObjectName("DockWidget")
        DockWidget.resize(350, 300)
        DockWidget.setMinimumSize(QtCore.QSize(366, 353))
        DockWidget.setMaximumSize(QtCore.QSize(600, 600))
        self.dockWidgetContents = QtWidgets.QWidget()
        self.dockWidgetContents.setObjectName("dockWidgetContents")
        self.gridLayout_2 = QtWidgets.QGridLayout(self.dockWidgetContents)
        self.gridLayout_2.setObjectName("gridLayout_2")
        self.label_8 = QtWidgets.QLabel(self.dockWidgetContents)
        self.label_8.setMinimumSize(QtCore.QSize(250, 0))
        self.label_8.setText("")
        self.label_8.setPixmap(QtGui.QPixmap(":/plugins/dzetsaka/img/parcguyane.jpg"))
        self.label_8.setObjectName("label_8")
        self.gridLayout_2.addWidget(self.label_8, 0, 0, 1, 1)
        self.gridLayout = QtWidgets.QGridLayout()
        self.gridLayout.setObjectName("gridLayout")
        self.label_2 = QtWidgets.QLabel(self.dockWidgetContents)
        self.label_2.setMinimumSize(QtCore.QSize(15, 15))
        self.label_2.setMaximumSize(QtCore.QSize(15, 15))
        self.label_2.setText("")
        self.label_2.setPixmap(QtGui.QPixmap(":/plugins/dzetsaka/img/raster.svg"))
        self.label_2.setScaledContents(True)
        self.label_2.setObjectName("label_2")
        self.gridLayout.addWidget(self.label_2, 0, 0, 1, 1)
        self.inRaster = QgsMapLayerComboBox(self.dockWidgetContents)
        self.inRaster.setMinimumSize(QtCore.QSize(200, 0))
        self.inRaster.setMaximumSize(QtCore.QSize(16777215, 30))
        self.inRaster.setShowCrs(True)
        self.inRaster.setObjectName("inRaster")
        self.gridLayout.addWidget(self.inRaster, 0, 1, 1, 3)
        self.label_3 = QtWidgets.QLabel(self.dockWidgetContents)
        self.label_3.setMaximumSize(QtCore.QSize(15, 15))
        self.label_3.setText("")
        self.label_3.setPixmap(QtGui.QPixmap(":/plugins/dzetsaka/img/vector.svg"))
        self.label_3.setScaledContents(True)
        self.label_3.setObjectName("label_3")
        self.gridLayout.addWidget(self.label_3, 1, 0, 1, 1)
        self.inShape = QgsMapLayerComboBox(self.dockWidgetContents)
        self.inShape.setMinimumSize(QtCore.QSize(90, 0))
        self.inShape.setMaximumSize(QtCore.QSize(16777215, 30))
        self.inShape.setShowCrs(True)
        self.inShape.setObjectName("inShape")
        self.gridLayout.addWidget(self.inShape, 1, 1, 1, 1)
        self.label = QtWidgets.QLabel(self.dockWidgetContents)
        self.label.setMaximumSize(QtCore.QSize(20, 25))
        self.label.setObjectName("label")
        self.gridLayout.addWidget(self.label, 1, 2, 1, 1)
        self.checkInModel = QtWidgets.QCheckBox(self.dockWidgetContents)
        self.checkInModel.setMinimumSize(QtCore.QSize(110, 0))
        self.checkInModel.setMaximumSize(QtCore.QSize(110, 16777215))
        self.checkInModel.setObjectName("checkInModel")
        self.gridLayout.addWidget(self.checkInModel, 1, 3, 1, 1)
        self.label_4 = QtWidgets.QLabel(self.dockWidgetContents)
        self.label_4.setMaximumSize(QtCore.QSize(15, 15))
        self.label_4.setText("")
        self.label_4.setPixmap(QtGui.QPixmap(":/plugins/dzetsaka/img/column.svg"))
        self.label_4.setScaledContents(True)
        self.label_4.setObjectName("label_4")
        self.gridLayout.addWidget(self.label_4, 2, 0, 1, 1)
        self.inField = QtWidgets.QComboBox(self.dockWidgetContents)
        self.inField.setMinimumSize(QtCore.QSize(90, 0))
        self.inField.setMaximumSize(QtCore.QSize(16777215, 30))
        self.inField.setObjectName("inField")
        self.gridLayout.addWidget(self.inField, 2, 1, 1, 1)
        self.inModel = QtWidgets.QLineEdit(self.dockWidgetContents)
        self.inModel.setEnabled(False)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.inModel.sizePolicy().hasHeightForWidth())
        self.inModel.setSizePolicy(sizePolicy)
        self.inModel.setMinimumSize(QtCore.QSize(110, 0))
        self.inModel.setMaximumSize(QtCore.QSize(160, 16777215))
        self.inModel.setInputMask("")
        self.inModel.setText("")
        self.inModel.setObjectName("inModel")
        self.gridLayout.addWidget(self.inModel, 2, 2, 1, 2)
        self.gridLayout_5 = QtWidgets.QGridLayout()
        self.gridLayout_5.setObjectName("gridLayout_5")
        self.outRaster = QtWidgets.QLineEdit(self.dockWidgetContents)
        self.outRaster.setMaximumSize(QtCore.QSize(16777215, 30))
        self.outRaster.setObjectName("outRaster")
        self.gridLayout_5.addWidget(self.outRaster, 0, 0, 1, 3)
        spacerItem = QtWidgets.QSpacerItem(15, 17, QtWidgets.QSizePolicy.MinimumExpanding, QtWidgets.QSizePolicy.Minimum)
        self.gridLayout_5.addItem(spacerItem, 1, 0, 1, 1)
        self.performMagic = QtWidgets.QToolButton(self.dockWidgetContents)
        self.performMagic.setMinimumSize(QtCore.QSize(175, 0))
        self.performMagic.setObjectName("performMagic")
        self.gridLayout_5.addWidget(self.performMagic, 1, 1, 1, 1)
        spacerItem1 = QtWidgets.QSpacerItem(15, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
        self.gridLayout_5.addItem(spacerItem1, 1, 2, 1, 1)
        self.settingsButton = QtWidgets.QToolButton(self.dockWidgetContents)
        icon = QtGui.QIcon()
        icon.addPixmap(QtGui.QPixmap(":/plugins/dzetsaka/img/settings.png"), QtGui.QIcon.Normal, QtGui.QIcon.On)
        self.settingsButton.setIcon(icon)
        self.settingsButton.setObjectName("settingsButton")
        self.gridLayout_5.addWidget(self.settingsButton, 1, 3, 1, 1)
        self.outRasterButton = QtWidgets.QToolButton(self.dockWidgetContents)
        self.outRasterButton.setObjectName("outRasterButton")
        self.gridLayout_5.addWidget(self.outRasterButton, 0, 3, 1, 1)
        self.gridLayout.addLayout(self.gridLayout_5, 3, 1, 1, 3)
        self.gridLayout_2.addLayout(self.gridLayout, 1, 0, 1, 1)
        spacerItem2 = QtWidgets.QSpacerItem(100, 1, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding)
        self.gridLayout_2.addItem(spacerItem2, 3, 0, 1, 1)
        self.mGroupBox = QgsCollapsibleGroupBox(self.dockWidgetContents)
        self.mGroupBox.setEnabled(True)
        self.mGroupBox.setMaximumSize(QtCore.QSize(16777215, 23))
        self.mGroupBox.setFlat(True)
        self.mGroupBox.setCollapsed(True)
        self.mGroupBox.setScrollOnExpand(False)
        self.mGroupBox.setSaveCollapsedState(True)
        self.mGroupBox.setSaveCheckedState(False)
        self.mGroupBox.setObjectName("mGroupBox")
        self.gridLayout_3 = QtWidgets.QGridLayout(self.mGroupBox)
        self.gridLayout_3.setContentsMargins(0, -1, 0, -1)
        self.gridLayout_3.setObjectName("gridLayout_3")
        self.label_7 = QtWidgets.QLabel(self.mGroupBox)
        self.label_7.setMaximumSize(QtCore.QSize(20, 20))
        self.label_7.setText("")
        self.label_7.setPixmap(QtGui.QPixmap(":/plugins/dzetsaka/img/mask.svg"))
        self.label_7.setScaledContents(True)
        self.label_7.setObjectName("label_7")
        self.gridLayout_3.addWidget(self.label_7, 0, 0, 1, 1)
        self.checkInMask = QtWidgets.QCheckBox(self.mGroupBox)
        self.checkInMask.setMinimumSize(QtCore.QSize(40, 0))
        self.checkInMask.setMaximumSize(QtCore.QSize(140, 16777215))
        self.checkInMask.setObjectName("checkInMask")
        self.gridLayout_3.addWidget(self.checkInMask, 0, 1, 1, 2)
        self.inMask = QtWidgets.QLineEdit(self.mGroupBox)
        self.inMask.setEnabled(False)
        self.inMask.setMinimumSize(QtCore.QSize(70, 20))
        self.inMask.setObjectName("inMask")
        self.gridLayout_3.addWidget(self.inMask, 0, 4, 1, 2)
        self.label_5 = QtWidgets.QLabel(self.mGroupBox)
        self.label_5.setMaximumSize(QtCore.QSize(20, 20))
        self.label_5.setText("")
        self.label_5.setPixmap(QtGui.QPixmap(":/plugins/dzetsaka/img/confidence.png"))
        self.label_5.setScaledContents(True)
        self.label_5.setObjectName("label_5")
        self.gridLayout_3.addWidget(self.label_5, 1, 0, 1, 1)
        self.checkInConfidence = QtWidgets.QCheckBox(self.mGroupBox)
        self.checkInConfidence.setMinimumSize(QtCore.QSize(140, 0))
        self.checkInConfidence.setMaximumSize(QtCore.QSize(140, 16777215))
        self.checkInConfidence.setObjectName("checkInConfidence")
        self.gridLayout_3.addWidget(self.checkInConfidence, 1, 1, 1, 3)
        self.outConfidenceMap = QtWidgets.QLineEdit(self.mGroupBox)
        self.outConfidenceMap.setEnabled(False)
        self.outConfidenceMap.setMinimumSize(QtCore.QSize(70, 20))
        self.outConfidenceMap.setObjectName("outConfidenceMap")
        self.gridLayout_3.addWidget(self.outConfidenceMap, 1, 4, 1, 2)
        self.label_6 = QtWidgets.QLabel(self.mGroupBox)
        self.label_6.setMaximumSize(QtCore.QSize(20, 20))
        self.label_6.setText("")
        self.label_6.setPixmap(QtGui.QPixmap(":/plugins/dzetsaka/img/model.svg"))
        self.label_6.setScaledContents(True)
        self.label_6.setObjectName("label_6")
        self.gridLayout_3.addWidget(self.label_6, 2, 0, 1, 1)
        self.checkOutModel = QtWidgets.QCheckBox(self.mGroupBox)
        self.checkOutModel.setMaximumSize(QtCore.QSize(140, 16777215))
        self.checkOutModel.setObjectName("checkOutModel")
        self.gridLayout_3.addWidget(self.checkOutModel, 2, 1, 1, 3)
        self.outModel = QtWidgets.QLineEdit(self.mGroupBox)
        self.outModel.setEnabled(False)
        self.outModel.setMinimumSize(QtCore.QSize(70, 20))
        self.outModel.setObjectName("outModel")
        self.gridLayout_3.addWidget(self.outModel, 2, 4, 1, 2)
        self.label_11 = QtWidgets.QLabel(self.mGroupBox)
        self.label_11.setMaximumSize(QtCore.QSize(20, 20))
        self.label_11.setText("")
        self.label_11.setPixmap(QtGui.QPixmap(":/plugins/dzetsaka/img/table.png"))
        self.label_11.setScaledContents(True)
        self.label_11.setObjectName("label_11")
        self.gridLayout_3.addWidget(self.label_11, 3, 0, 1, 1)
        self.checkOutMatrix = QtWidgets.QCheckBox(self.mGroupBox)
        self.checkOutMatrix.setMaximumSize(QtCore.QSize(140, 16777215))
        self.checkOutMatrix.setObjectName("checkOutMatrix")
        self.gridLayout_3.addWidget(self.checkOutMatrix, 3, 1, 1, 3)
        self.outMatrix = QtWidgets.QLineEdit(self.mGroupBox)
        self.outMatrix.setEnabled(False)
        self.outMatrix.setMinimumSize(QtCore.QSize(70, 20))
        self.outMatrix.setObjectName("outMatrix")
        self.gridLayout_3.addWidget(self.outMatrix, 3, 4, 1, 2)
        self.inSplit = QtWidgets.QSpinBox(self.mGroupBox)
        self.inSplit.setEnabled(False)
        self.inSplit.setMinimumSize(QtCore.QSize(65, 20))
        self.inSplit.setMaximum(100)
        self.inSplit.setProperty("value", 100)
        self.inSplit.setObjectName("inSplit")
        self.gridLayout_3.addWidget(self.inSplit, 4, 4, 1, 1)
        spacerItem3 = QtWidgets.QSpacerItem(36, 20, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Minimum)
        self.gridLayout_3.addItem(spacerItem3, 4, 5, 1, 1)
        spacerItem4 = QtWidgets.QSpacerItem(15, 20, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Minimum)
        self.gridLayout_3.addItem(spacerItem4, 4, 0, 1, 1)
        self.label_9 = QtWidgets.QLabel(self.mGroupBox)
        self.label_9.setObjectName("label_9")
        self.gridLayout_3.addWidget(self.label_9, 4, 1, 1, 1)
        self.label_10 = QtWidgets.QLabel(self.mGroupBox)
        font = QtGui.QFont()
        font.setPointSize(8)
        self.label_10.setFont(font)
        self.label_10.setObjectName("label_10")
        self.gridLayout_3.addWidget(self.label_10, 4, 2, 1, 1)
        self.gridLayout_2.addWidget(self.mGroupBox, 2, 0, 1, 1)
        DockWidget.setWidget(self.dockWidgetContents)

        self.retranslateUi(DockWidget)
        QtCore.QMetaObject.connectSlotsByName(DockWidget)
        DockWidget.setTabOrder(self.inRaster, self.inShape)
        DockWidget.setTabOrder(self.inShape, self.inField)
        DockWidget.setTabOrder(self.inField, self.checkInModel)
        DockWidget.setTabOrder(self.checkInModel, self.inModel)
        DockWidget.setTabOrder(self.inModel, self.outRaster)
        DockWidget.setTabOrder(self.outRaster, self.performMagic)
        DockWidget.setTabOrder(self.performMagic, self.mGroupBox)
        DockWidget.setTabOrder(self.mGroupBox, self.checkInConfidence)
        DockWidget.setTabOrder(self.checkInConfidence, self.outConfidenceMap)
        DockWidget.setTabOrder(self.outConfidenceMap, self.checkOutModel)
        DockWidget.setTabOrder(self.checkOutModel, self.outModel)
        DockWidget.setTabOrder(self.outModel, self.checkOutMatrix)
        DockWidget.setTabOrder(self.checkOutMatrix, self.outMatrix)
        DockWidget.setTabOrder(self.outMatrix, self.inSplit)
Example #52
0
    def __init__(self, parent=None, iface=None, setting=None):
        """Constructor."""
        QDialog.__init__(self, parent)
        self.setupUi(self)

        self.setWindowTitle(self.tr('InaSAFE Field Mapping Tool'))
        icon = resources_path('img', 'icons', 'show-mapping-tool.svg')
        self.setWindowIcon(QIcon(icon))
        self.parent = parent
        self.iface = iface
        if setting is None:
            setting = QSettings()
        self.setting = setting

        self.keyword_io = KeywordIO()

        self.layer = None
        self.metadata = {}

        self.layer_input_layout = QHBoxLayout()
        self.layer_label = QLabel(tr('Layer'))
        self.layer_combo_box = QgsMapLayerComboBox()
        # Filter only for Polygon and Point
        self.layer_combo_box.setFilters(
            QgsMapLayerProxyModel.PolygonLayer
            | QgsMapLayerProxyModel.PointLayer)
        # Filter out a layer that don't have layer groups
        excepted_layers = []
        for i in range(self.layer_combo_box.count()):
            layer = self.layer_combo_box.layer(i)
            try:
                keywords = self.keyword_io.read_keywords(layer)
            except (KeywordNotFoundError, NoKeywordsFoundError):
                excepted_layers.append(layer)
                continue
            layer_purpose = keywords.get('layer_purpose')
            if not layer_purpose:
                excepted_layers.append(layer)
                continue
            if layer_purpose == layer_purpose_exposure['key']:
                layer_subcategory = keywords.get('exposure')
            elif layer_purpose == layer_purpose_hazard['key']:
                layer_subcategory = keywords.get('hazard')
            else:
                layer_subcategory = None

            field_groups = get_field_groups(layer_purpose, layer_subcategory)
            if len(field_groups) == 0:
                excepted_layers.append(layer)
                continue
        self.layer_combo_box.setExceptedLayerList(excepted_layers)

        # Select the active layer.
        if self.iface.activeLayer():
            found = self.layer_combo_box.findText(
                self.iface.activeLayer().name())
            if found > -1:
                self.layer_combo_box.setLayer(self.iface.activeLayer())

        self.field_mapping_widget = None
        self.main_stacked_widget.setCurrentIndex(1)

        # Input
        self.layer_input_layout.addWidget(self.layer_label)
        self.layer_input_layout.addWidget(self.layer_combo_box)

        self.header_label = QLabel()
        self.header_label.setWordWrap(True)
        self.main_layout.addWidget(self.header_label)
        self.main_layout.addLayout(self.layer_input_layout)

        # Signal
        self.layer_combo_box.layerChanged.connect(self.set_layer)

        if self.layer_combo_box.currentLayer():
            self.set_layer(self.layer_combo_box.currentLayer())

        # Set up things for context help
        self.help_button = self.button_box.button(QDialogButtonBox.Help)
        # Allow toggling the help button
        self.help_button.setCheckable(True)
        self.help_button.toggled.connect(self.help_toggled)

        # Set up things for ok button
        self.ok_button = self.button_box.button(QDialogButtonBox.Ok)
        self.ok_button.clicked.connect(self.accept)

        # Set up things for cancel button
        self.cancel_button = self.button_box.button(QDialogButtonBox.Cancel)
        self.cancel_button.clicked.connect(self.reject)
    def setupUi(self, Autocorrelation):
        Autocorrelation.setObjectName(_fromUtf8("Autocorrelation"))
        Autocorrelation.setWindowModality(QtCore.Qt.NonModal)
        Autocorrelation.resize(674, 462)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(Autocorrelation.sizePolicy().hasHeightForWidth())
        Autocorrelation.setSizePolicy(sizePolicy)
        Autocorrelation.setContextMenuPolicy(QtCore.Qt.DefaultContextMenu)
        self.verticalLayout = QtGui.QVBoxLayout(Autocorrelation)
        self.verticalLayout.setSizeConstraint(QtGui.QLayout.SetDefaultConstraint)
        self.verticalLayout.setObjectName(_fromUtf8("verticalLayout"))
        self.formLayout = QtGui.QFormLayout()
        self.formLayout.setFieldGrowthPolicy(QtGui.QFormLayout.AllNonFixedFieldsGrow)
        self.formLayout.setObjectName(_fromUtf8("formLayout"))
        self.label = QtGui.QLabel(Autocorrelation)
        self.label.setObjectName(_fromUtf8("label"))
        self.formLayout.setWidget(2, QtGui.QFormLayout.LabelRole, self.label)
        self.cbx_aggregation_layer = QgsMapLayerComboBox(Autocorrelation)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.cbx_aggregation_layer.sizePolicy().hasHeightForWidth())
        self.cbx_aggregation_layer.setSizePolicy(sizePolicy)
        self.cbx_aggregation_layer.setObjectName(_fromUtf8("cbx_aggregation_layer"))
        self.formLayout.setWidget(2, QtGui.QFormLayout.FieldRole, self.cbx_aggregation_layer)
        self.label_4 = QtGui.QLabel(Autocorrelation)
        self.label_4.setObjectName(_fromUtf8("label_4"))
        self.formLayout.setWidget(3, QtGui.QFormLayout.LabelRole, self.label_4)
        self.cbx_indicator_field = QgsFieldComboBox(Autocorrelation)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.cbx_indicator_field.sizePolicy().hasHeightForWidth())
        self.cbx_indicator_field.setSizePolicy(sizePolicy)
        self.cbx_indicator_field.setObjectName(_fromUtf8("cbx_indicator_field"))
        self.formLayout.setWidget(3, QtGui.QFormLayout.FieldRole, self.cbx_indicator_field)
        self.horizontalLayout_6 = QtGui.QHBoxLayout()
        self.horizontalLayout_6.setObjectName(_fromUtf8("horizontalLayout_6"))
        self.le_output_filepath = QtGui.QLineEdit(Autocorrelation)
        self.le_output_filepath.setObjectName(_fromUtf8("le_output_filepath"))
        self.horizontalLayout_6.addWidget(self.le_output_filepath)
        self.button_browse = QtGui.QPushButton(Autocorrelation)
        self.button_browse.setObjectName(_fromUtf8("button_browse"))
        self.horizontalLayout_6.addWidget(self.button_browse)
        self.formLayout.setLayout(12, QtGui.QFormLayout.FieldRole, self.horizontalLayout_6)
        self.label_3 = QtGui.QLabel(Autocorrelation)
        self.label_3.setObjectName(_fromUtf8("label_3"))
        self.formLayout.setWidget(8, QtGui.QFormLayout.LabelRole, self.label_3)
        self.cbx_contiguity = QtGui.QComboBox(Autocorrelation)
        self.cbx_contiguity.setEnabled(True)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.cbx_contiguity.sizePolicy().hasHeightForWidth())
        self.cbx_contiguity.setSizePolicy(sizePolicy)
        self.cbx_contiguity.setMinimumSize(QtCore.QSize(104, 0))
        self.cbx_contiguity.setObjectName(_fromUtf8("cbx_contiguity"))
        self.cbx_contiguity.addItem(_fromUtf8(""))
        self.cbx_contiguity.addItem(_fromUtf8(""))
        self.formLayout.setWidget(8, QtGui.QFormLayout.FieldRole, self.cbx_contiguity)
        self.label_8 = QtGui.QLabel(Autocorrelation)
        self.label_8.setObjectName(_fromUtf8("label_8"))
        self.formLayout.setWidget(12, QtGui.QFormLayout.LabelRole, self.label_8)
        self.verticalLayout.addLayout(self.formLayout)
        self.button_box_ok = QtGui.QDialogButtonBox(Autocorrelation)
        self.button_box_ok.setOrientation(QtCore.Qt.Horizontal)
        self.button_box_ok.setStandardButtons(QtGui.QDialogButtonBox.Cancel|QtGui.QDialogButtonBox.Ok)
        self.button_box_ok.setObjectName(_fromUtf8("button_box_ok"))
        self.verticalLayout.addWidget(self.button_box_ok)

        self.retranslateUi(Autocorrelation)
        QtCore.QObject.connect(self.cbx_aggregation_layer, QtCore.SIGNAL(_fromUtf8("layerChanged(QgsMapLayer*)")), self.cbx_indicator_field.setLayer)
        QtCore.QMetaObject.connectSlotsByName(Autocorrelation)
Example #54
0
class Viewer(ViewerBase, ViewerClass):
    trackingChanged = pyqtSignal(bool)
    setLocationTriggered = pyqtSignal()
    updateFeatures = pyqtSignal(bool)
    layerChanged = pyqtSignal(QgsMapLayer)
    clearLine = pyqtSignal()
    closed = pyqtSignal()

    def __init__(self, callbackobject, parent=None):
        """Constructor."""
        super(Viewer, self).__init__(parent)
        self.setupUi(self)
        self.callbackobject = callbackobject
        self.frame = self.webview.page().mainFrame()
        self.actiongroup = QActionGroup(self)
        self.actiongroup.setExclusive(True)
        self.actiongroup.triggered.connect(self.action_triggered)

        self.measuredialog = MeasureDialog(self)

        self.toolbar = QToolBar()
        self.qgisTrackButton = self.toolbar.addAction("QGIS Track")
        self.qgisTrackButton.setIcon(QIcon(":/icons/track"))
        self.qgisTrackButton.setCheckable(True)
        self.qgisTrackButton.setChecked(True)
        self.qgisTrackButton.toggled.connect(self.trackingChanged.emit)

        self.setlocationaction = self.toolbar.addAction("Set location")
        self.setlocationaction.setIcon(QIcon(":/icons/location"))
        self.setlocationaction.triggered.connect(self.setLocationTriggered.emit)
        self.setlocationaction.setCheckable(True)

        self.viewfeatures = self.toolbar.addAction("Load QGIS Features")
        self.viewfeatures.setIcon(QIcon(":/icons/features"))
        self.viewfeatures.setCheckable(True)
        self.viewfeatures.setChecked(True)
        self.viewfeatures.toggled.connect(self.updateFeatures.emit)

        spacer = QWidget()
        spacer.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Expanding)
        self.toolbar.addWidget(spacer)

        self.measureaction = self.toolbar.addAction("measure")
        self.measureaction.setObjectName("Measure")
        self.measureaction.setIcon(QIcon(":/icons/measure"))
        self.measureaction.setCheckable(True)

        self.infoaction = self.toolbar.addAction("Info")
        self.infoaction.setObjectName("Info")
        self.infoaction.setIcon(QIcon(":/icons/info"))
        self.infoaction.setCheckable(True)

        self.selectaction = self.toolbar.addAction("Select")
        self.selectaction.setObjectName("Select")
        self.selectaction.setIcon(QIcon(":/icons/select"))
        self.selectaction.setCheckable(True)

        self.toolbar.addSeparator()

        self.deleteaction = self.toolbar.addAction("Delete")
        self.deleteaction.setIcon(QIcon(":/icons/delete"))
        self.deleteaction.triggered.connect(self.delete_selected)
        self.deleteaction.setEnabled(False)

        self.addaction = self.toolbar.addAction("Add")
        self.addaction.setObjectName("Add")
        self.addaction.setIcon(QIcon(":/icons/add"))
        self.addaction.setCheckable(True)

        self.moveaction = self.toolbar.addAction("Move")
        self.moveaction.setObjectName("Move")
        self.moveaction.setIcon(QIcon(":/icons/move"))
        self.moveaction.setCheckable(True)

        self.actiongroup.addAction(self.moveaction)
        self.actiongroup.addAction(self.addaction)
        self.actiongroup.addAction(self.infoaction)
        self.actiongroup.addAction(self.measureaction)
        self.actiongroup.addAction(self.selectaction)

        self.activelayercombo = QgsMapLayerComboBox()
        self.activelayercombo.layerChanged.connect(self.layer_changed)
        self.activelayeraction = self.toolbar.addWidget(self.activelayercombo)
        self.activelayercombo.setSizeAdjustPolicy(QComboBox.AdjustToContents)
        self.activelayercombo.currentIndexChanged.connect(self.index_changed)

        self.zvaluecheck = QCheckBox()
        self.zvaluecheck.setChecked(True)
        self.zvaluecheck.setText("Copy Z value")
        self.zvaluecheck.setToolTip("Copy Z value from viewer to new features in QGIS. Must have a field named Z to enable")
        self.zvalueaction = self.toolbar.addWidget(self.zvaluecheck)

        self.dockWidgetContents.layout().insertWidget(0, self.toolbar)

        self.webview.settings().setAttribute(QWebSettings.PluginsEnabled, True)
        self.webview.settings().setAttribute(QWebSettings.JavascriptEnabled, True)
        self.webview.settings().setAttribute(QWebSettings.DeveloperExtrasEnabled, True)
        self.frame.setScrollBarPolicy(Qt.Horizontal, Qt.ScrollBarAlwaysOff)
        self.frame.setScrollBarPolicy(Qt.Vertical, Qt.ScrollBarAlwaysOff)
        self.frame.javaScriptWindowObjectCleared.connect(self.addcallbackobject)
        self.measuredialog.modeCombo.currentIndexChanged.connect(self.action_triggered)
        self.measuredialog.clearButton.clicked.connect(self.clear_line)

        self.earthmine = EarthmineAPI(self.frame)

    def closeEvent(self, event):
        self.closed.emit()
        super(Viewer, self).closeEvent(event)

    def index_changed(self, index):
        if index == -1:
            self.set_button_states(False, False, False, False)

    def clear_line(self):
        self.clearLine.emit()
        self.earthmine.clearLine()

    @property
    def copyZvalue(self):
        layer = self.active_layer
        if not layer:
            return False

        if layer.type() == QgsMapLayer.VectorLayer and layer.geometryType() == QGis.Point:
            return self.zvaluecheck.isChecked()
        else:
            return False

    @property
    def geom(self):
        return self.measuredialog.geom

    @geom.setter
    def geom(self, value):
        self.measuredialog.geom = value
        self.measuredialog.update_geom_labels()

    @property
    def tracking(self):
        return self.qgisTrackButton.isChecked()

    @property
    def mode(self):
        return self.measuredialog.mode

    @property
    def active_layer(self):
        return self.activelayercombo.currentLayer()

    def layer_changed(self, layer):
        if not layer:
            self.set_button_states(False, False, False, False)
            return

        if layer.type() == QgsMapLayer.VectorLayer:
            enabledselecttools = layer.geometryType() in [QGis.Line, QGis.Point]
            enableedittools = layer.isEditable()
            enabledelete = layer.isEditable() and layer.selectedFeatureCount()
            enablemove = layer.geometryType() == QGis.Point and layer.isEditable()
        else:
            enabledselecttools = False
            enableedittools = False
            enabledelete = False
            enablemove = False

        self.set_button_states(enabledselecttools, enableedittools, enabledelete, enablemove)
        self.action_triggered()
        self.layerChanged.emit(layer)

    def selection_changed(self, layer):
        if layer == self.active_layer:
            enabledelete = layer.isEditable() and layer.selectedFeatureCount()
            self.deleteaction.setEnabled(enabledelete)

    def set_button_states(self, selecttools, edittools, deleteenabled, moveenabled):
        actions = [self.selectaction, self.infoaction]

        for action in actions:
            action.setEnabled(selecttools)

        editactions = [self.deleteaction, self.moveaction, self.addaction]

        for action in editactions:
            action.setEnabled(edittools)

        if edittools:
            self.deleteaction.setEnabled(deleteenabled)
            self.moveaction.setEnabled(moveenabled)

        for action in editactions:
            if action is self.actiongroup.checkedAction() and not action.isEnabled():
                self.infoaction.toggle()
                break

        layer = self.active_layer
        if not layer:
            enablez = False
        else:
            enablez = layer.type() == QgsMapLayer.VectorLayer and layer.geometryType() == QGis.Point
        self.zvalueaction.setEnabled(enablez)

    @property
    def current_action_color(self):
        action = self.actiongroup.checkedAction()
        color = int("0x00ff00", 16)
        if action == self.measureaction:
            if self.mode == "Vertical":
                color = int("0x0000ff", 16)

        return color

    def action_triggered(self, *args):
        action = self.actiongroup.checkedAction()
        layer = self.activelayercombo.currentLayer()

        self.clear_line()
        if not action:
            return

        if not action == self.measureaction and (not layer or not layer.type() == QgsMapLayer.VectorLayer):
            return

        color = self.current_action_color
        actiondata = {}

        if action == self.measureaction:
            self.measuredialog.show()
            actiondata['mode'] = self.mode
            geomtype = None
            layerid = None
        else:
            self.measuredialog.hide()
            geomtype = QGis.vectorGeometryType(layer.geometryType())
            layerid = layer.id()

        data = dict(action=action.objectName(),
                    layer=layerid,
                    geom=geomtype,
                    actiondata=actiondata,
                    color=color)

        self.earthmine.updateAction(data)

    def active_tool(self):
        action = self.actiongroup.checkedAction()
        if not action:
            return None
        return action.objectName()

    def update_current_layer(self, layer):
        self.activelayercombo.setLayer(layer)

    def addcallbackobject(self):
        self.frame.addToJavaScriptWindowObject("qgis", self.callbackobject)

    def loadviewer(self, url):
        self.webview.load(url)
        self.frame.addToJavaScriptWindowObject("qgis", self.callbackobject)

    def startViewer(self, settings):
        self.earthmine.startViewer(settings)

    def set_location(self, point):
        # # NOTE Set location takes WGS84 make sure you have transformed it first before sending
        self.earthmine.setLocation(point.x(), point.y())

    def clear_features(self):
        self.earthmine.clearFeatures()

    def clear_layer_features(self, layerid):
        self.earthmine.clearLayerObjects(layerid)

    def remove_feature(self, layerid, featureid):
        """
        :param features: A dict of layerid, id, lat, lng
        :return:
        """
        self.earthmine.removeFeature(layerid, featureid)

    def load_features(self, layerdata, features):
        """
        :param features: A dict of layerid, id, lat, lng
        :return:
        """
        self.earthmine.loadFeatures(layerdata, features)

    def layer_loaded(self, layerid):
        return self.earthmine.layerLoaded(layerid)

    def clear_selection(self, layerid):
        self.earthmine.clearSelection(layerid)

    def set_selection(self, layerid, featureids, clearlast=True):
        self.earthmine.setSelection(layerid, featureids, clearlast)

    def edit_feature(self, layerid, featureid, nodes):
        self.earthmine.editFeature(layerid, featureid, nodes)

    def delete_selected(self):
        layer = self.active_layer
        layer.deleteSelectedFeatures()
class Ui_OSMDataDialogBase(object):
    def setupUi(self, OSMDataDialogBase):
        OSMDataDialogBase.setObjectName(_fromUtf8("OSMDataDialogBase"))
        OSMDataDialogBase.resize(659, 805)
        self.scrollArea = QtGui.QScrollArea(OSMDataDialogBase)
        self.scrollArea.setGeometry(QtCore.QRect(10, 10, 626, 787))
        self.scrollArea.setFrameShape(QtGui.QFrame.NoFrame)
        self.scrollArea.setFrameShadow(QtGui.QFrame.Plain)
        self.scrollArea.setWidgetResizable(True)
        self.scrollArea.setObjectName(_fromUtf8("scrollArea"))
        self.scrollAreaWidgetContents = QtGui.QWidget()
        self.scrollAreaWidgetContents.setGeometry(QtCore.QRect(0, 0, 626, 787))
        self.scrollAreaWidgetContents.setObjectName(_fromUtf8("scrollAreaWidgetContents"))
        self.verticalLayout = QtGui.QVBoxLayout(self.scrollAreaWidgetContents)
        self.verticalLayout.setObjectName(_fromUtf8("verticalLayout"))
        self.horizontalLayout_4 = QtGui.QHBoxLayout()
        self.horizontalLayout_4.setObjectName(_fromUtf8("horizontalLayout_4"))
        self.pushButton_mapFeatures = QtGui.QPushButton(self.scrollAreaWidgetContents)
        self.pushButton_mapFeatures.setObjectName(_fromUtf8("pushButton_mapFeatures"))
        self.horizontalLayout_4.addWidget(self.pushButton_mapFeatures)
        spacerItem = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
        self.horizontalLayout_4.addItem(spacerItem)
        self.buttonBox = QtGui.QDialogButtonBox(self.scrollAreaWidgetContents)
        self.buttonBox.setStandardButtons(QtGui.QDialogButtonBox.Reset)
        self.buttonBox.setObjectName(_fromUtf8("buttonBox"))
        self.horizontalLayout_4.addWidget(self.buttonBox)
        self.verticalLayout.addLayout(self.horizontalLayout_4)
        self.formLayout = QtGui.QFormLayout()
        self.formLayout.setFieldGrowthPolicy(QtGui.QFormLayout.ExpandingFieldsGrow)
        self.formLayout.setObjectName(_fromUtf8("formLayout"))
        self.label = QtGui.QLabel(self.scrollAreaWidgetContents)
        self.label.setObjectName(_fromUtf8("label"))
        self.formLayout.setWidget(0, QtGui.QFormLayout.LabelRole, self.label)
        self.comboBox_key = QtGui.QComboBox(self.scrollAreaWidgetContents)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.comboBox_key.sizePolicy().hasHeightForWidth())
        self.comboBox_key.setSizePolicy(sizePolicy)
        self.comboBox_key.setEditable(True)
        self.comboBox_key.setSizeAdjustPolicy(QtGui.QComboBox.AdjustToContents)
        self.comboBox_key.setObjectName(_fromUtf8("comboBox_key"))
        self.formLayout.setWidget(0, QtGui.QFormLayout.FieldRole, self.comboBox_key)
        self.comboBox_value = QtGui.QComboBox(self.scrollAreaWidgetContents)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.comboBox_value.sizePolicy().hasHeightForWidth())
        self.comboBox_value.setSizePolicy(sizePolicy)
        self.comboBox_value.setEditable(True)
        self.comboBox_value.setSizeAdjustPolicy(QtGui.QComboBox.AdjustToContents)
        self.comboBox_value.setObjectName(_fromUtf8("comboBox_value"))
        self.formLayout.setWidget(1, QtGui.QFormLayout.FieldRole, self.comboBox_value)
        self.radioButton_place = QtGui.QRadioButton(self.scrollAreaWidgetContents)
        self.radioButton_place.setText(_fromUtf8(""))
        self.radioButton_place.setChecked(True)
        self.radioButton_place.setObjectName(_fromUtf8("radioButton_place"))
        self.formLayout.setWidget(2, QtGui.QFormLayout.LabelRole, self.radioButton_place)
        self.horizontalLayout_8 = QtGui.QHBoxLayout()
        self.horizontalLayout_8.setObjectName(_fromUtf8("horizontalLayout_8"))
        self.comboBox_in_around = QtGui.QComboBox(self.scrollAreaWidgetContents)
        self.comboBox_in_around.setObjectName(_fromUtf8("comboBox_in_around"))
        self.horizontalLayout_8.addWidget(self.comboBox_in_around)
        self.lineEdit_nominatim = QtGui.QLineEdit(self.scrollAreaWidgetContents)
        self.lineEdit_nominatim.setText(_fromUtf8(""))
        self.lineEdit_nominatim.setObjectName(_fromUtf8("lineEdit_nominatim"))
        self.horizontalLayout_8.addWidget(self.lineEdit_nominatim)
        self.spinBox_distance_point = QtGui.QSpinBox(self.scrollAreaWidgetContents)
        self.spinBox_distance_point.setMinimum(1)
        self.spinBox_distance_point.setMaximum(999999999)
        self.spinBox_distance_point.setSingleStep(100)
        self.spinBox_distance_point.setProperty("value", 1000)
        self.spinBox_distance_point.setObjectName(_fromUtf8("spinBox_distance_point"))
        self.horizontalLayout_8.addWidget(self.spinBox_distance_point)
        self.label_distance_point = QtGui.QLabel(self.scrollAreaWidgetContents)
        self.label_distance_point.setText(_fromUtf8("m"))
        self.label_distance_point.setObjectName(_fromUtf8("label_distance_point"))
        self.horizontalLayout_8.addWidget(self.label_distance_point)
        self.formLayout.setLayout(2, QtGui.QFormLayout.FieldRole, self.horizontalLayout_8)
        self.radioButton_extentMapCanvas = QtGui.QRadioButton(self.scrollAreaWidgetContents)
        self.radioButton_extentMapCanvas.setText(_fromUtf8(""))
        self.radioButton_extentMapCanvas.setObjectName(_fromUtf8("radioButton_extentMapCanvas"))
        self.formLayout.setWidget(4, QtGui.QFormLayout.LabelRole, self.radioButton_extentMapCanvas)
        self.label_13 = QtGui.QLabel(self.scrollAreaWidgetContents)
        self.label_13.setObjectName(_fromUtf8("label_13"))
        self.formLayout.setWidget(4, QtGui.QFormLayout.FieldRole, self.label_13)
        self.radioButton_extentLayer = QtGui.QRadioButton(self.scrollAreaWidgetContents)
        self.radioButton_extentLayer.setText(_fromUtf8(""))
        self.radioButton_extentLayer.setObjectName(_fromUtf8("radioButton_extentLayer"))
        self.formLayout.setWidget(5, QtGui.QFormLayout.LabelRole, self.radioButton_extentLayer)
        self.horizontalLayout_5 = QtGui.QHBoxLayout()
        self.horizontalLayout_5.setObjectName(_fromUtf8("horizontalLayout_5"))
        self.label_15 = QtGui.QLabel(self.scrollAreaWidgetContents)
        self.label_15.setObjectName(_fromUtf8("label_15"))
        self.horizontalLayout_5.addWidget(self.label_15)
        self.comboBox_extentLayer = QgsMapLayerComboBox(self.scrollAreaWidgetContents)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Expanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.comboBox_extentLayer.sizePolicy().hasHeightForWidth())
        self.comboBox_extentLayer.setSizePolicy(sizePolicy)
        self.comboBox_extentLayer.setObjectName(_fromUtf8("comboBox_extentLayer"))
        self.horizontalLayout_5.addWidget(self.comboBox_extentLayer)
        self.formLayout.setLayout(5, QtGui.QFormLayout.FieldRole, self.horizontalLayout_5)
        self.label_2 = QtGui.QLabel(self.scrollAreaWidgetContents)
        self.label_2.setObjectName(_fromUtf8("label_2"))
        self.formLayout.setWidget(1, QtGui.QFormLayout.LabelRole, self.label_2)
        self.verticalLayout.addLayout(self.formLayout)
        self.groupBox = QgsCollapsibleGroupBox(self.scrollAreaWidgetContents)
        self.groupBox.setChecked(False)
        self.groupBox.setObjectName(_fromUtf8("groupBox"))
        self.verticalLayout_2 = QtGui.QVBoxLayout(self.groupBox)
        self.verticalLayout_2.setObjectName(_fromUtf8("verticalLayout_2"))
        self.horizontalLayout_3 = QtGui.QHBoxLayout()
        self.horizontalLayout_3.setObjectName(_fromUtf8("horizontalLayout_3"))
        self.formLayout_3 = QtGui.QFormLayout()
        self.formLayout_3.setObjectName(_fromUtf8("formLayout_3"))
        self.label_7 = QtGui.QLabel(self.groupBox)
        self.label_7.setText(_fromUtf8("Node"))
        self.label_7.setObjectName(_fromUtf8("label_7"))
        self.formLayout_3.setWidget(0, QtGui.QFormLayout.LabelRole, self.label_7)
        self.checkBox_node = QtGui.QCheckBox(self.groupBox)
        self.checkBox_node.setText(_fromUtf8(""))
        self.checkBox_node.setChecked(True)
        self.checkBox_node.setObjectName(_fromUtf8("checkBox_node"))
        self.formLayout_3.setWidget(0, QtGui.QFormLayout.FieldRole, self.checkBox_node)
        self.label_8 = QtGui.QLabel(self.groupBox)
        self.label_8.setText(_fromUtf8("Way"))
        self.label_8.setObjectName(_fromUtf8("label_8"))
        self.formLayout_3.setWidget(1, QtGui.QFormLayout.LabelRole, self.label_8)
        self.checkBox_way = QtGui.QCheckBox(self.groupBox)
        self.checkBox_way.setText(_fromUtf8(""))
        self.checkBox_way.setChecked(True)
        self.checkBox_way.setObjectName(_fromUtf8("checkBox_way"))
        self.formLayout_3.setWidget(1, QtGui.QFormLayout.FieldRole, self.checkBox_way)
        self.label_9 = QtGui.QLabel(self.groupBox)
        self.label_9.setText(_fromUtf8("Relation"))
        self.label_9.setObjectName(_fromUtf8("label_9"))
        self.formLayout_3.setWidget(2, QtGui.QFormLayout.LabelRole, self.label_9)
        self.checkBox_relation = QtGui.QCheckBox(self.groupBox)
        self.checkBox_relation.setText(_fromUtf8(""))
        self.checkBox_relation.setChecked(True)
        self.checkBox_relation.setObjectName(_fromUtf8("checkBox_relation"))
        self.formLayout_3.setWidget(2, QtGui.QFormLayout.FieldRole, self.checkBox_relation)
        self.horizontalLayout_3.addLayout(self.formLayout_3)
        self.formLayout_4 = QtGui.QFormLayout()
        self.formLayout_4.setObjectName(_fromUtf8("formLayout_4"))
        self.label_10 = QtGui.QLabel(self.groupBox)
        self.label_10.setText(_fromUtf8("Points"))
        self.label_10.setObjectName(_fromUtf8("label_10"))
        self.formLayout_4.setWidget(0, QtGui.QFormLayout.LabelRole, self.label_10)
        self.checkBox_points = QtGui.QCheckBox(self.groupBox)
        self.checkBox_points.setText(_fromUtf8(""))
        self.checkBox_points.setChecked(True)
        self.checkBox_points.setObjectName(_fromUtf8("checkBox_points"))
        self.formLayout_4.setWidget(0, QtGui.QFormLayout.FieldRole, self.checkBox_points)
        self.checkBox_lines = QtGui.QCheckBox(self.groupBox)
        self.checkBox_lines.setText(_fromUtf8(""))
        self.checkBox_lines.setChecked(True)
        self.checkBox_lines.setObjectName(_fromUtf8("checkBox_lines"))
        self.formLayout_4.setWidget(1, QtGui.QFormLayout.FieldRole, self.checkBox_lines)
        self.label_11 = QtGui.QLabel(self.groupBox)
        self.label_11.setText(_fromUtf8("Lines"))
        self.label_11.setObjectName(_fromUtf8("label_11"))
        self.formLayout_4.setWidget(1, QtGui.QFormLayout.LabelRole, self.label_11)
        self.label_12 = QtGui.QLabel(self.groupBox)
        self.label_12.setText(_fromUtf8("Multipolygons"))
        self.label_12.setObjectName(_fromUtf8("label_12"))
        self.formLayout_4.setWidget(3, QtGui.QFormLayout.LabelRole, self.label_12)
        self.checkBox_multipolygons = QtGui.QCheckBox(self.groupBox)
        self.checkBox_multipolygons.setText(_fromUtf8(""))
        self.checkBox_multipolygons.setChecked(True)
        self.checkBox_multipolygons.setObjectName(_fromUtf8("checkBox_multipolygons"))
        self.formLayout_4.setWidget(3, QtGui.QFormLayout.FieldRole, self.checkBox_multipolygons)
        self.label_14 = QtGui.QLabel(self.groupBox)
        self.label_14.setText(_fromUtf8("Multilinestrings"))
        self.label_14.setObjectName(_fromUtf8("label_14"))
        self.formLayout_4.setWidget(2, QtGui.QFormLayout.LabelRole, self.label_14)
        self.checkBox_multilinestrings = QtGui.QCheckBox(self.groupBox)
        self.checkBox_multilinestrings.setText(_fromUtf8(""))
        self.checkBox_multilinestrings.setChecked(True)
        self.checkBox_multilinestrings.setObjectName(_fromUtf8("checkBox_multilinestrings"))
        self.formLayout_4.setWidget(2, QtGui.QFormLayout.FieldRole, self.checkBox_multilinestrings)
        self.horizontalLayout_3.addLayout(self.formLayout_4)
        self.verticalLayout_2.addLayout(self.horizontalLayout_3)
        self.formLayout_2 = QtGui.QFormLayout()
        self.formLayout_2.setObjectName(_fromUtf8("formLayout_2"))
        self.spinBox_timeout = QtGui.QSpinBox(self.groupBox)
        self.spinBox_timeout.setButtonSymbols(QtGui.QAbstractSpinBox.UpDownArrows)
        self.spinBox_timeout.setMinimum(25)
        self.spinBox_timeout.setMaximum(2000)
        self.spinBox_timeout.setSingleStep(25)
        self.spinBox_timeout.setObjectName(_fromUtf8("spinBox_timeout"))
        self.formLayout_2.setWidget(0, QtGui.QFormLayout.FieldRole, self.spinBox_timeout)
        self.label_5 = QtGui.QLabel(self.groupBox)
        self.label_5.setObjectName(_fromUtf8("label_5"))
        self.formLayout_2.setWidget(0, QtGui.QFormLayout.LabelRole, self.label_5)
        self.label_4 = QtGui.QLabel(self.groupBox)
        self.label_4.setObjectName(_fromUtf8("label_4"))
        self.formLayout_2.setWidget(1, QtGui.QFormLayout.LabelRole, self.label_4)
        self.horizontalLayout = QtGui.QHBoxLayout()
        self.horizontalLayout.setObjectName(_fromUtf8("horizontalLayout"))
        self.lineEdit_browseDir = QtGui.QLineEdit(self.groupBox)
        self.lineEdit_browseDir.setObjectName(_fromUtf8("lineEdit_browseDir"))
        self.horizontalLayout.addWidget(self.lineEdit_browseDir)
        self.pushButton_browse_output_file = QtGui.QPushButton(self.groupBox)
        self.pushButton_browse_output_file.setObjectName(_fromUtf8("pushButton_browse_output_file"))
        self.horizontalLayout.addWidget(self.pushButton_browse_output_file)
        self.formLayout_2.setLayout(1, QtGui.QFormLayout.FieldRole, self.horizontalLayout)
        self.label_6 = QtGui.QLabel(self.groupBox)
        self.label_6.setObjectName(_fromUtf8("label_6"))
        self.formLayout_2.setWidget(2, QtGui.QFormLayout.LabelRole, self.label_6)
        self.lineEdit_filePrefix = QtGui.QLineEdit(self.groupBox)
        self.lineEdit_filePrefix.setObjectName(_fromUtf8("lineEdit_filePrefix"))
        self.formLayout_2.setWidget(2, QtGui.QFormLayout.FieldRole, self.lineEdit_filePrefix)
        self.verticalLayout_2.addLayout(self.formLayout_2)
        self.verticalLayout.addWidget(self.groupBox)
        self.horizontalLayout_2 = QtGui.QHBoxLayout()
        self.horizontalLayout_2.setSizeConstraint(QtGui.QLayout.SetMinimumSize)
        self.horizontalLayout_2.setObjectName(_fromUtf8("horizontalLayout_2"))
        self.pushButton_runQuery = QtGui.QPushButton(self.scrollAreaWidgetContents)
        self.pushButton_runQuery.setDefault(True)
        self.pushButton_runQuery.setObjectName(_fromUtf8("pushButton_runQuery"))
        self.horizontalLayout_2.addWidget(self.pushButton_runQuery)
        self.verticalLayout.addLayout(self.horizontalLayout_2)
        self.label_progress = QtGui.QLabel(self.scrollAreaWidgetContents)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Maximum, QtGui.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_progress.sizePolicy().hasHeightForWidth())
        self.label_progress.setSizePolicy(sizePolicy)
        self.label_progress.setText(_fromUtf8("progress text"))
        self.label_progress.setObjectName(_fromUtf8("label_progress"))
        self.verticalLayout.addWidget(self.label_progress)
        self.progressBar_execution = QtGui.QProgressBar(self.scrollAreaWidgetContents)
        self.progressBar_execution.setProperty("value", 0)
        self.progressBar_execution.setObjectName(_fromUtf8("progressBar_execution"))
        self.verticalLayout.addWidget(self.progressBar_execution)
        spacerItem1 = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding)
        self.verticalLayout.addItem(spacerItem1)
        self.scrollArea.setWidget(self.scrollAreaWidgetContents)

        self.retranslateUi(OSMDataDialogBase)
        QtCore.QMetaObject.connectSlotsByName(OSMDataDialogBase)

    def retranslateUi(self, OSMDataDialogBase):
        OSMDataDialogBase.setWindowTitle(_translate("OSMDataDialogBase", "OSM Data", None))
        self.pushButton_mapFeatures.setText(_translate("OSMDataDialogBase", "Aide avec clé/valeur", None))
        self.label.setText(_translate("OSMDataDialogBase", "clé", None))
        self.comboBox_in_around.setToolTip(_translate("OSMDataDialogBase", "\"In\" will search the first multipolygon relation, however \"Around\" will get the first OSM node.", None))
        self.lineEdit_nominatim.setPlaceholderText(_translate("OSMDataDialogBase", "Un village, une ville, ...", None))
        self.label_13.setText(_translate("OSMDataDialogBase", "Etendue du Maroc", None))
        self.label_15.setText(_translate("OSMDataDialogBase", "Emprise d\'une couche", None))
        self.label_2.setText(_translate("OSMDataDialogBase", "valeur", None))
        self.groupBox.setTitle(_translate("OSMDataDialogBase", "Avancé", None))
        self.label_5.setText(_translate("OSMDataDialogBase", "Temps max", None))
        self.label_4.setText(_translate("OSMDataDialogBase", "Répertoire", None))
        self.lineEdit_browseDir.setPlaceholderText(_translate("OSMDataDialogBase", "Enregistrer temporairement", None))
        self.pushButton_browse_output_file.setText(_translate("OSMDataDialogBase", "Parcourir", None))
        self.label_6.setText(_translate("OSMDataDialogBase", "Préfixe de fichier", None))
        self.pushButton_runQuery.setText(_translate("OSMDataDialogBase", "Exécuter", None))
class SettingsDialog(QDialog):
    def __init__(self, parent=None):
        QDialog.__init__(self, parent)

        self.resize(500, 100)
        self.setWindowTitle("Settings")

        layout = QGridLayout(self)

        csTargetLayerName = getCSLayerName()
        bufferTargetLayerName = getRZLayerName()

        csLable = QLabel("Compressor staitions layer:")
        csLable.setSizePolicy(QSizePolicy.Fixed, QSizePolicy.Fixed)
        layout.addWidget(csLable, 0, 0)
        self.__csLayerName = QgsMapLayerComboBox()
        self.__csLayerName.setEditable(True)
        self.__csLayerName.setFilters(QgsMapLayerProxyModel.PointLayer)
        self.__csLayerName.setEditText(csTargetLayerName)
        self.__csLayerName.layerChanged.connect(self.csLayerChooze)
        self.__csLayerName.editTextChanged.connect(self.csLayernameSave)
        self.__csLayerName.setSizePolicy(QSizePolicy.Preferred, QSizePolicy.Fixed)
        layout.addWidget(self.__csLayerName, 0, 1)

        self.__csIdField = QgsFieldComboBox()
        self.__csIdField.setEditable(True)
        self.__csIdField.fieldChanged.connect(self.csIdFiledChooze)
        self.__csIdField.editTextChanged.connect(self.csIdFieldSave)
        self.__csIdField.setSizePolicy(QSizePolicy.Fixed, QSizePolicy.Fixed)
        self.csIdFieldFill()
        layout.addWidget(self.__csIdField, 0, 2)

        bufferLable = QLabel("Buffer layer:")
        bufferLable.setSizePolicy(QSizePolicy.Fixed, QSizePolicy.Fixed)
        layout.addWidget(bufferLable, 1, 0)
        # self.__bufferLayerName = QLineEdit(bufferTargetLayerName, self)
        # self.__bufferLayerName.editingFinished.connect(self.bufferTargetLayernameSave)
        self.__bufferLayerName = QgsMapLayerComboBox()
        self.__bufferLayerName.setEditable(True)
        self.__bufferLayerName.setFilters(QgsMapLayerProxyModel.PolygonLayer)
        self.__bufferLayerName.setEditText(bufferTargetLayerName)
        self.__bufferLayerName.layerChanged.connect(self.bufferLayerChooze)
        self.__bufferLayerName.editTextChanged.connect(self.bufferLayernameSave)
        layout.addWidget(self.__bufferLayerName, 1, 1)

    def csLayerChooze(self, qgsMapLayer):
        self.__csLayerName.setEditText(qgsMapLayer.name())

    def csLayernameSave(self, csTargetLayerName):
        if csTargetLayerName == u"":
            return
        setCSLayerName(csTargetLayerName)
        self.csIdFieldFill()

    def csIdFieldFill(self):
        csIdField = getCSIdField()
        csTargetLayerName = getCSLayerName()
        layers = QgsMapLayerRegistry.instance().mapLayersByName(csTargetLayerName)
        if len(layers) > 0:
            self.__csIdField.setLayer(layers[0])
        else:
            self.__csIdField.setLayer(None)
        self.__csIdField.setEditText(csIdField)

    def csIdFiledChooze(self, fieldName):
        self.__csIdField.setEditText(fieldName)

    def csIdFieldSave(self, fieldName):
        settings = QSettings()
        if fieldName == u"":
            return
        setCSIdField(fieldName)

    def bufferLayerChooze(self, qgsMapLayer):
        self.__bufferLayerName.setEditText(qgsMapLayer.name())

    def bufferLayernameSave(self, bufferTargetLayerName):
        settings = QSettings()
        if bufferTargetLayerName == u"":
            return
        setRZLayerName(bufferTargetLayerName)
Example #57
0
    def __init__(
            self,
            curPointsLayerFrom,
            curPointsLayerTo,
            curFNIdFrom,
            curFNLink,
            curFNIdTo,
            curResultLayerName,
            parent=None):
        QtGui.QDialog.__init__(self, parent)

        self.resize(500, 200)

        self.setWindowTitle(QgisPlugin().pluginName)
        self.__mainLayout = QtGui.QVBoxLayout(self)
        self.__layout = QtGui.QGridLayout(self)

        l1 = QtGui.QLabel(self.tr(u"Point layer 'FROM'") + ":")
        l1.setSizePolicy(
            QtGui.QSizePolicy.Preferred,
            QtGui.QSizePolicy.Fixed
        )
        self.__layout.addWidget(l1, 0, 0)
        self.pointsLayerFrom = QgsMapLayerComboBox()
        self.pointsLayerFrom.setSizePolicy(
            QtGui.QSizePolicy.Expanding,
            QtGui.QSizePolicy.Fixed
        )
        self.pointsLayerFrom.setFilters(QgsMapLayerProxyModel.PointLayer)
        self.pointsLayerFrom.setEditable(True)
        # self.pointsLayerFrom.setEditText(curPointsLayerFrom)
        self.pointsLayerFrom.layerChanged.connect(self.choozeLayerFrom)
        self.__layout.addWidget(self.pointsLayerFrom, 0, 1)

        l2 = QtGui.QLabel(self.tr(u"Point layer 'TO'") + ":")
        l2.setSizePolicy(
            QtGui.QSizePolicy.Preferred,
            QtGui.QSizePolicy.Fixed
        )
        self.__layout.addWidget(l2, 1, 0)
        self.pointsLayerTo = QgsMapLayerComboBox()
        self.pointsLayerTo.setSizePolicy(
            QtGui.QSizePolicy.Expanding,
            QtGui.QSizePolicy.Fixed
        )
        self.pointsLayerTo.setFilters(QgsMapLayerProxyModel.PointLayer)
        self.pointsLayerTo.setEditable(True)
        # self.pointsLayerTo.setEditText(curPointsLayerTo)
        self.pointsLayerTo.layerChanged.connect(self.choozeLayerTo)
        self.__layout.addWidget(self.pointsLayerTo, 1, 1)

        self.__layout.addWidget(
            QtGui.QLabel(self.tr(u"Point 'FROM' id field") + ":"),
            2, 0
        )
        self.fnIdFrom = QgsFieldComboBox()
        self.fnIdFrom.setFilters(QgsFieldProxyModel.Int | QgsFieldProxyModel.LongLong)
        self.fnIdFrom.setEditable(True)
        # self.fnIdFrom.setEditText(curFNIdFrom)
        self.fnIdFrom.fieldChanged.connect(self.filedChooze)
        self.__layout.addWidget(self.fnIdFrom, 2, 1)

        self.__layout.addWidget(
            QtGui.QLabel(self.tr(u"Link field") + ":"),
            3, 0
        )
        self.fnLink = QgsFieldComboBox()
        self.fnLink.setFilters(QgsFieldProxyModel.Int | QgsFieldProxyModel.LongLong)
        self.fnLink.setEditable(True)
        # self.fnLink.setEditText(curFNLink)
        self.fnLink.fieldChanged.connect(self.filedChooze)
        self.__layout.addWidget(self.fnLink, 3, 1)

        self.__layout.addWidget(
            QtGui.QLabel(self.tr(u"Point 'TO' id field") + ":"), 4, 0)
        self.fnIdTo = QgsFieldComboBox()
        self.fnIdTo.setFilters(QgsFieldProxyModel.Int | QgsFieldProxyModel.LongLong)
        self.fnIdTo.setEditable(True)
        # self.fnIdTo.setEditText(curFNIdTo)
        self.fnIdTo.fieldChanged.connect(self.filedChooze)
        self.__layout.addWidget(self.fnIdTo, 4, 1)

        self.__layout.addWidget(
            QtGui.QLabel(self.tr(u"Save result in layer") + ":"),
            5, 0
        )
        self.linesLayer = QgsMapLayerComboBox()
        self.linesLayer.setSizePolicy(
            QtGui.QSizePolicy.Expanding,
            QtGui.QSizePolicy.Fixed
        )
        self.linesLayer.setFilters(QgsMapLayerProxyModel.LineLayer)
        self.linesLayer.setEditable(True)
        self.linesLayer.layerChanged.connect(self.choozeResultLayer)
        self.__layout.addWidget(self.linesLayer, 5, 1)

        # self.__layout4resultFileChoose = QtGui.QHBoxLayout()
        # self.leResultFilename = QtGui.QLineEdit(curResultFilename)
        # self.__layout4resultFileChoose.addWidget(self.leResultFilename)
        # self.pbChooseResultFilename = QtGui.QPushButton(u"Выбрать")
        # self.pbChooseResultFilename.released.connect(self.chooseResultFilename)
        # self.__layout4resultFileChoose.addWidget(self.pbChooseResultFilename)
        # self.__layout.addLayout(self.__layout4resultFileChoose, 6, 0, 2, 0)

        self.pointsLayerFrom.layerChanged.connect(self.fnIdFrom.setLayer)
        self.pointsLayerFrom.layerChanged.connect(self.fnLink.setLayer)

        self.pointsLayerTo.layerChanged.connect(self.fnIdTo.setLayer)

        self.__mainLayout.addLayout(self.__layout)

        self.__bbox = QtGui.QDialogButtonBox(QtGui.QDialogButtonBox.Ok)
        self.__bbox.setSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
        self.__bbox.accepted.connect(self.accept)
        self.__mainLayout.addWidget(self.__bbox)

        self.fillControls(
            curPointsLayerFrom,
            curPointsLayerTo,
            curFNIdFrom,
            curFNLink,
            curFNIdTo,
            curResultLayerName
        )
Example #58
0
    def __init__(self, iface):
        """Constructor.

        :param iface: An interface instance that will be passed to this class
            which provides the hook by which you can manipulate the QGIS
            application at run time.
        :type iface: QgsInterface
        """
        # Save reference to the QGIS interface
        self.iface = iface
        # initialize plugin directory
        self.plugin_dir = os.path.dirname(__file__)
        # initialize locale
        locale = QSettings().value('locale/userLocale')[0:2]
        locale_path = os.path.join(
            self.plugin_dir,
            'i18n',
            'LatticeData_{}.qm'.format(locale))

        if os.path.exists(locale_path):
            self.translator = QTranslator()
            self.translator.load(locale_path)

            if qVersion() > '4.3.3':
                QCoreApplication.installTranslator(self.translator)

        # Create the dialog (after translation) and keep reference
        self.dlg = LatticeDataDialog()

        # Declare instance attributes
        self.actions = []
        self.menu = self.tr(u'&Lattice Data')
        # TODO: We are going to let the user set this up in a future iteration
        self.toolbar = self.iface.addToolBar(u'LatticeData')
        self.toolbar.setObjectName(u'LatticeData')

        """buttons connected with methods"""
        """comboBoxLayer"""

        self.cmbBoxSelectLayer = QgsMapLayerComboBox(self.dlg)
        self.cmbBoxSelectLayer.setFixedWidth(200)
        self.cmbBoxSelectLayer.move(140,20)
        self.cmbBoxSelectLayer.setFilters(QgsMapLayerProxyModel.PolygonLayer)
        self.cmbBoxSelectLayer.enabledChange(False)
        self.cmbBoxSelectLayer.currentIndexChanged[str].connect(self.changeCurrentIndex)

        """radioButtonSelectMatrix"""

        self.dlg.rdButton_nm.clicked.connect(self.activateNewMatrix)
        self.dlg.rdButton_sm.clicked.connect(self.activateSelectMatrix)

        """radioButtonSelectMatrixWeight"""

        self.dlg.rdButtonContW.clicked.connect(self.radioContW)
        self.dlg.rdButtonDisW.clicked.connect(self.radioDisW)
        self.dlg.rdButtonKNW.clicked.connect(self.radioKNW)

        """sliderdistance"""

        self.dlg.horizontalSlider.setMinimum(0)
        self.dlg.horizontalSlider.setMaximum(100)
        self.dlg.horizontalSlider.setSingleStep(1)
        self.dlg.horizontalSlider.valueChanged[int].connect(self.changeValueSlider)

        """Buttons and connects"""

        self.dlg.btnSave.clicked.connect(self.generate_matrix)

        self.dlg.checkBox.stateChanged.connect(self.activatemoranI)

        self.dlg.cmbBoxSelectField.currentIndexChanged[str].connect(self.moranI)

        self.dlg.btnMoranI.clicked.connect(self.grafico)
Example #59
0
    def setupUi(self, ui_quick_query):
        ui_quick_query.setObjectName(_fromUtf8("ui_quick_query"))
        ui_quick_query.resize(644, 805)
        self.verticalLayout_3 = QtGui.QVBoxLayout(ui_quick_query)
        self.verticalLayout_3.setObjectName(_fromUtf8("verticalLayout_3"))
        self.scrollArea = QtGui.QScrollArea(ui_quick_query)
        self.scrollArea.setFrameShape(QtGui.QFrame.NoFrame)
        self.scrollArea.setFrameShadow(QtGui.QFrame.Plain)
        self.scrollArea.setWidgetResizable(True)
        self.scrollArea.setObjectName(_fromUtf8("scrollArea"))
        self.scrollAreaWidgetContents = QtGui.QWidget()
        self.scrollAreaWidgetContents.setGeometry(QtCore.QRect(0, 0, 636, 797))
        self.scrollAreaWidgetContents.setObjectName(_fromUtf8("scrollAreaWidgetContents"))
        self.verticalLayout = QtGui.QVBoxLayout(self.scrollAreaWidgetContents)
        self.verticalLayout.setObjectName(_fromUtf8("verticalLayout"))
        self.horizontalLayout_4 = QtGui.QHBoxLayout()
        self.horizontalLayout_4.setObjectName(_fromUtf8("horizontalLayout_4"))
        self.pushButton_mapFeatures = QtGui.QPushButton(self.scrollAreaWidgetContents)
        self.pushButton_mapFeatures.setObjectName(_fromUtf8("pushButton_mapFeatures"))
        self.horizontalLayout_4.addWidget(self.pushButton_mapFeatures)
        spacerItem = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
        self.horizontalLayout_4.addItem(spacerItem)
        self.buttonBox = QtGui.QDialogButtonBox(self.scrollAreaWidgetContents)
        self.buttonBox.setStandardButtons(QtGui.QDialogButtonBox.Reset)
        self.buttonBox.setObjectName(_fromUtf8("buttonBox"))
        self.horizontalLayout_4.addWidget(self.buttonBox)
        self.verticalLayout.addLayout(self.horizontalLayout_4)
        self.formLayout = QtGui.QFormLayout()
        self.formLayout.setFieldGrowthPolicy(QtGui.QFormLayout.ExpandingFieldsGrow)
        self.formLayout.setObjectName(_fromUtf8("formLayout"))
        self.label = QtGui.QLabel(self.scrollAreaWidgetContents)
        self.label.setObjectName(_fromUtf8("label"))
        self.formLayout.setWidget(0, QtGui.QFormLayout.LabelRole, self.label)
        self.comboBox_key = QtGui.QComboBox(self.scrollAreaWidgetContents)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.comboBox_key.sizePolicy().hasHeightForWidth())
        self.comboBox_key.setSizePolicy(sizePolicy)
        self.comboBox_key.setEditable(True)
        self.comboBox_key.setSizeAdjustPolicy(QtGui.QComboBox.AdjustToContents)
        self.comboBox_key.setObjectName(_fromUtf8("comboBox_key"))
        self.formLayout.setWidget(0, QtGui.QFormLayout.FieldRole, self.comboBox_key)
        self.label_2 = QtGui.QLabel(self.scrollAreaWidgetContents)
        self.label_2.setObjectName(_fromUtf8("label_2"))
        self.formLayout.setWidget(1, QtGui.QFormLayout.LabelRole, self.label_2)
        self.comboBox_value = QtGui.QComboBox(self.scrollAreaWidgetContents)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.comboBox_value.sizePolicy().hasHeightForWidth())
        self.comboBox_value.setSizePolicy(sizePolicy)
        self.comboBox_value.setEditable(True)
        self.comboBox_value.setSizeAdjustPolicy(QtGui.QComboBox.AdjustToContents)
        self.comboBox_value.setObjectName(_fromUtf8("comboBox_value"))
        self.formLayout.setWidget(1, QtGui.QFormLayout.FieldRole, self.comboBox_value)
        self.radioButton_place = QtGui.QRadioButton(self.scrollAreaWidgetContents)
        self.radioButton_place.setText(_fromUtf8(""))
        self.radioButton_place.setChecked(True)
        self.radioButton_place.setObjectName(_fromUtf8("radioButton_place"))
        self.formLayout.setWidget(2, QtGui.QFormLayout.LabelRole, self.radioButton_place)
        self.horizontalLayout_8 = QtGui.QHBoxLayout()
        self.horizontalLayout_8.setObjectName(_fromUtf8("horizontalLayout_8"))
        self.comboBox_in_around = QtGui.QComboBox(self.scrollAreaWidgetContents)
        self.comboBox_in_around.setObjectName(_fromUtf8("comboBox_in_around"))
        self.horizontalLayout_8.addWidget(self.comboBox_in_around)
        self.lineEdit_nominatim = QtGui.QLineEdit(self.scrollAreaWidgetContents)
        self.lineEdit_nominatim.setText(_fromUtf8(""))
        self.lineEdit_nominatim.setObjectName(_fromUtf8("lineEdit_nominatim"))
        self.horizontalLayout_8.addWidget(self.lineEdit_nominatim)
        self.spinBox_distance_point = QtGui.QSpinBox(self.scrollAreaWidgetContents)
        self.spinBox_distance_point.setMinimum(1)
        self.spinBox_distance_point.setMaximum(999999999)
        self.spinBox_distance_point.setSingleStep(100)
        self.spinBox_distance_point.setProperty("value", 1000)
        self.spinBox_distance_point.setObjectName(_fromUtf8("spinBox_distance_point"))
        self.horizontalLayout_8.addWidget(self.spinBox_distance_point)
        self.label_distance_point = QtGui.QLabel(self.scrollAreaWidgetContents)
        self.label_distance_point.setText(_fromUtf8("m"))
        self.label_distance_point.setObjectName(_fromUtf8("label_distance_point"))
        self.horizontalLayout_8.addWidget(self.label_distance_point)
        self.formLayout.setLayout(2, QtGui.QFormLayout.FieldRole, self.horizontalLayout_8)
        self.radioButton_extentMapCanvas = QtGui.QRadioButton(self.scrollAreaWidgetContents)
        self.radioButton_extentMapCanvas.setText(_fromUtf8(""))
        self.radioButton_extentMapCanvas.setObjectName(_fromUtf8("radioButton_extentMapCanvas"))
        self.formLayout.setWidget(4, QtGui.QFormLayout.LabelRole, self.radioButton_extentMapCanvas)
        self.label_13 = QtGui.QLabel(self.scrollAreaWidgetContents)
        self.label_13.setObjectName(_fromUtf8("label_13"))
        self.formLayout.setWidget(4, QtGui.QFormLayout.FieldRole, self.label_13)
        self.radioButton_extentLayer = QtGui.QRadioButton(self.scrollAreaWidgetContents)
        self.radioButton_extentLayer.setText(_fromUtf8(""))
        self.radioButton_extentLayer.setObjectName(_fromUtf8("radioButton_extentLayer"))
        self.formLayout.setWidget(5, QtGui.QFormLayout.LabelRole, self.radioButton_extentLayer)
        self.horizontalLayout_5 = QtGui.QHBoxLayout()
        self.horizontalLayout_5.setObjectName(_fromUtf8("horizontalLayout_5"))
        self.label_15 = QtGui.QLabel(self.scrollAreaWidgetContents)
        self.label_15.setObjectName(_fromUtf8("label_15"))
        self.horizontalLayout_5.addWidget(self.label_15)
        self.comboBox_extentLayer = QgsMapLayerComboBox(self.scrollAreaWidgetContents)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Expanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.comboBox_extentLayer.sizePolicy().hasHeightForWidth())
        self.comboBox_extentLayer.setSizePolicy(sizePolicy)
        self.comboBox_extentLayer.setObjectName(_fromUtf8("comboBox_extentLayer"))
        self.horizontalLayout_5.addWidget(self.comboBox_extentLayer)
        self.formLayout.setLayout(5, QtGui.QFormLayout.FieldRole, self.horizontalLayout_5)
        self.verticalLayout.addLayout(self.formLayout)
        self.groupBox = QgsCollapsibleGroupBox(self.scrollAreaWidgetContents)
        self.groupBox.setChecked(False)
        self.groupBox.setObjectName(_fromUtf8("groupBox"))
        self.verticalLayout_2 = QtGui.QVBoxLayout(self.groupBox)
        self.verticalLayout_2.setObjectName(_fromUtf8("verticalLayout_2"))
        self.horizontalLayout_3 = QtGui.QHBoxLayout()
        self.horizontalLayout_3.setObjectName(_fromUtf8("horizontalLayout_3"))
        self.formLayout_3 = QtGui.QFormLayout()
        self.formLayout_3.setObjectName(_fromUtf8("formLayout_3"))
        self.label_7 = QtGui.QLabel(self.groupBox)
        self.label_7.setText(_fromUtf8("Node"))
        self.label_7.setObjectName(_fromUtf8("label_7"))
        self.formLayout_3.setWidget(0, QtGui.QFormLayout.LabelRole, self.label_7)
        self.checkBox_node = QtGui.QCheckBox(self.groupBox)
        self.checkBox_node.setText(_fromUtf8(""))
        self.checkBox_node.setChecked(True)
        self.checkBox_node.setObjectName(_fromUtf8("checkBox_node"))
        self.formLayout_3.setWidget(0, QtGui.QFormLayout.FieldRole, self.checkBox_node)
        self.label_8 = QtGui.QLabel(self.groupBox)
        self.label_8.setText(_fromUtf8("Way"))
        self.label_8.setObjectName(_fromUtf8("label_8"))
        self.formLayout_3.setWidget(1, QtGui.QFormLayout.LabelRole, self.label_8)
        self.checkBox_way = QtGui.QCheckBox(self.groupBox)
        self.checkBox_way.setText(_fromUtf8(""))
        self.checkBox_way.setChecked(True)
        self.checkBox_way.setObjectName(_fromUtf8("checkBox_way"))
        self.formLayout_3.setWidget(1, QtGui.QFormLayout.FieldRole, self.checkBox_way)
        self.label_9 = QtGui.QLabel(self.groupBox)
        self.label_9.setText(_fromUtf8("Relation"))
        self.label_9.setObjectName(_fromUtf8("label_9"))
        self.formLayout_3.setWidget(2, QtGui.QFormLayout.LabelRole, self.label_9)
        self.checkBox_relation = QtGui.QCheckBox(self.groupBox)
        self.checkBox_relation.setText(_fromUtf8(""))
        self.checkBox_relation.setChecked(True)
        self.checkBox_relation.setObjectName(_fromUtf8("checkBox_relation"))
        self.formLayout_3.setWidget(2, QtGui.QFormLayout.FieldRole, self.checkBox_relation)
        self.horizontalLayout_3.addLayout(self.formLayout_3)
        self.formLayout_4 = QtGui.QFormLayout()
        self.formLayout_4.setObjectName(_fromUtf8("formLayout_4"))
        self.label_10 = QtGui.QLabel(self.groupBox)
        self.label_10.setText(_fromUtf8("Points"))
        self.label_10.setObjectName(_fromUtf8("label_10"))
        self.formLayout_4.setWidget(0, QtGui.QFormLayout.LabelRole, self.label_10)
        self.checkBox_points = QtGui.QCheckBox(self.groupBox)
        self.checkBox_points.setText(_fromUtf8(""))
        self.checkBox_points.setChecked(True)
        self.checkBox_points.setObjectName(_fromUtf8("checkBox_points"))
        self.formLayout_4.setWidget(0, QtGui.QFormLayout.FieldRole, self.checkBox_points)
        self.checkBox_lines = QtGui.QCheckBox(self.groupBox)
        self.checkBox_lines.setText(_fromUtf8(""))
        self.checkBox_lines.setChecked(True)
        self.checkBox_lines.setObjectName(_fromUtf8("checkBox_lines"))
        self.formLayout_4.setWidget(1, QtGui.QFormLayout.FieldRole, self.checkBox_lines)
        self.label_11 = QtGui.QLabel(self.groupBox)
        self.label_11.setText(_fromUtf8("Lines"))
        self.label_11.setObjectName(_fromUtf8("label_11"))
        self.formLayout_4.setWidget(1, QtGui.QFormLayout.LabelRole, self.label_11)
        self.label_12 = QtGui.QLabel(self.groupBox)
        self.label_12.setText(_fromUtf8("Multipolygons"))
        self.label_12.setObjectName(_fromUtf8("label_12"))
        self.formLayout_4.setWidget(3, QtGui.QFormLayout.LabelRole, self.label_12)
        self.checkBox_multipolygons = QtGui.QCheckBox(self.groupBox)
        self.checkBox_multipolygons.setText(_fromUtf8(""))
        self.checkBox_multipolygons.setChecked(True)
        self.checkBox_multipolygons.setObjectName(_fromUtf8("checkBox_multipolygons"))
        self.formLayout_4.setWidget(3, QtGui.QFormLayout.FieldRole, self.checkBox_multipolygons)
        self.label_14 = QtGui.QLabel(self.groupBox)
        self.label_14.setText(_fromUtf8("Multilinestrings"))
        self.label_14.setObjectName(_fromUtf8("label_14"))
        self.formLayout_4.setWidget(2, QtGui.QFormLayout.LabelRole, self.label_14)
        self.checkBox_multilinestrings = QtGui.QCheckBox(self.groupBox)
        self.checkBox_multilinestrings.setText(_fromUtf8(""))
        self.checkBox_multilinestrings.setChecked(True)
        self.checkBox_multilinestrings.setObjectName(_fromUtf8("checkBox_multilinestrings"))
        self.formLayout_4.setWidget(2, QtGui.QFormLayout.FieldRole, self.checkBox_multilinestrings)
        self.horizontalLayout_3.addLayout(self.formLayout_4)
        self.verticalLayout_2.addLayout(self.horizontalLayout_3)
        self.formLayout_2 = QtGui.QFormLayout()
        self.formLayout_2.setObjectName(_fromUtf8("formLayout_2"))
        self.spinBox_timeout = QtGui.QSpinBox(self.groupBox)
        self.spinBox_timeout.setButtonSymbols(QtGui.QAbstractSpinBox.UpDownArrows)
        self.spinBox_timeout.setMinimum(25)
        self.spinBox_timeout.setMaximum(2000)
        self.spinBox_timeout.setSingleStep(25)
        self.spinBox_timeout.setObjectName(_fromUtf8("spinBox_timeout"))
        self.formLayout_2.setWidget(0, QtGui.QFormLayout.FieldRole, self.spinBox_timeout)
        self.label_5 = QtGui.QLabel(self.groupBox)
        self.label_5.setObjectName(_fromUtf8("label_5"))
        self.formLayout_2.setWidget(0, QtGui.QFormLayout.LabelRole, self.label_5)
        self.label_4 = QtGui.QLabel(self.groupBox)
        self.label_4.setObjectName(_fromUtf8("label_4"))
        self.formLayout_2.setWidget(1, QtGui.QFormLayout.LabelRole, self.label_4)
        self.horizontalLayout = QtGui.QHBoxLayout()
        self.horizontalLayout.setObjectName(_fromUtf8("horizontalLayout"))
        self.lineEdit_browseDir = QtGui.QLineEdit(self.groupBox)
        self.lineEdit_browseDir.setObjectName(_fromUtf8("lineEdit_browseDir"))
        self.horizontalLayout.addWidget(self.lineEdit_browseDir)
        self.pushButton_browse_output_file = QtGui.QPushButton(self.groupBox)
        self.pushButton_browse_output_file.setObjectName(_fromUtf8("pushButton_browse_output_file"))
        self.horizontalLayout.addWidget(self.pushButton_browse_output_file)
        self.formLayout_2.setLayout(1, QtGui.QFormLayout.FieldRole, self.horizontalLayout)
        self.label_6 = QtGui.QLabel(self.groupBox)
        self.label_6.setObjectName(_fromUtf8("label_6"))
        self.formLayout_2.setWidget(2, QtGui.QFormLayout.LabelRole, self.label_6)
        self.lineEdit_filePrefix = QtGui.QLineEdit(self.groupBox)
        self.lineEdit_filePrefix.setObjectName(_fromUtf8("lineEdit_filePrefix"))
        self.formLayout_2.setWidget(2, QtGui.QFormLayout.FieldRole, self.lineEdit_filePrefix)
        self.verticalLayout_2.addLayout(self.formLayout_2)
        self.verticalLayout.addWidget(self.groupBox)
        self.horizontalLayout_2 = QtGui.QHBoxLayout()
        self.horizontalLayout_2.setSizeConstraint(QtGui.QLayout.SetMinimumSize)
        self.horizontalLayout_2.setObjectName(_fromUtf8("horizontalLayout_2"))
        self.pushButton_showQuery = QtGui.QPushButton(self.scrollAreaWidgetContents)
        self.pushButton_showQuery.setObjectName(_fromUtf8("pushButton_showQuery"))
        self.horizontalLayout_2.addWidget(self.pushButton_showQuery)
        self.pushButton_runQuery = QtGui.QPushButton(self.scrollAreaWidgetContents)
        self.pushButton_runQuery.setDefault(True)
        self.pushButton_runQuery.setObjectName(_fromUtf8("pushButton_runQuery"))
        self.horizontalLayout_2.addWidget(self.pushButton_runQuery)
        self.verticalLayout.addLayout(self.horizontalLayout_2)
        self.label_progress = QtGui.QLabel(self.scrollAreaWidgetContents)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Maximum, QtGui.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_progress.sizePolicy().hasHeightForWidth())
        self.label_progress.setSizePolicy(sizePolicy)
        self.label_progress.setText(_fromUtf8("progress text"))
        self.label_progress.setObjectName(_fromUtf8("label_progress"))
        self.verticalLayout.addWidget(self.label_progress)
        self.progressBar_execution = QtGui.QProgressBar(self.scrollAreaWidgetContents)
        self.progressBar_execution.setProperty("value", 0)
        self.progressBar_execution.setObjectName(_fromUtf8("progressBar_execution"))
        self.verticalLayout.addWidget(self.progressBar_execution)
        spacerItem1 = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding)
        self.verticalLayout.addItem(spacerItem1)
        self.scrollArea.setWidget(self.scrollAreaWidgetContents)
        self.verticalLayout_3.addWidget(self.scrollArea)

        self.retranslateUi(ui_quick_query)
        QtCore.QMetaObject.connectSlotsByName(ui_quick_query)
Example #60
0
class FieldMappingDialog(QDialog, FORM_CLASS):

    """Dialog implementation class for the InaSAFE field mapping tool."""

    def __init__(self, parent=None, iface=None, setting=None):
        """Constructor."""
        QDialog.__init__(self, parent)
        self.setupUi(self)

        self.setWindowTitle(self.tr('InaSAFE Field Mapping Tool'))
        icon = resources_path('img', 'icons', 'show-mapping-tool.svg')
        self.setWindowIcon(QIcon(icon))
        self.parent = parent
        self.iface = iface
        if setting is None:
            setting = QSettings()
        self.setting = setting

        self.keyword_io = KeywordIO()

        self.layer = None
        self.metadata = {}

        self.layer_input_layout = QHBoxLayout()
        self.layer_label = QLabel(tr('Layer'))
        self.layer_combo_box = QgsMapLayerComboBox()
        # Filter only for Polygon and Point
        self.layer_combo_box.setFilters(
            QgsMapLayerProxyModel.PolygonLayer
            | QgsMapLayerProxyModel.PointLayer)
        # Filter out a layer that don't have layer groups
        excepted_layers = []
        for i in range(self.layer_combo_box.count()):
            layer = self.layer_combo_box.layer(i)
            try:
                keywords = self.keyword_io.read_keywords(layer)
            except (KeywordNotFoundError, NoKeywordsFoundError):
                excepted_layers.append(layer)
                continue
            layer_purpose = keywords.get('layer_purpose')
            if not layer_purpose:
                excepted_layers.append(layer)
                continue
            if layer_purpose == layer_purpose_exposure['key']:
                layer_subcategory = keywords.get('exposure')
            elif layer_purpose == layer_purpose_hazard['key']:
                layer_subcategory = keywords.get('hazard')
            else:
                layer_subcategory = None

            field_groups = get_field_groups(layer_purpose, layer_subcategory)
            if len(field_groups) == 0:
                excepted_layers.append(layer)
                continue
        self.layer_combo_box.setExceptedLayerList(excepted_layers)

        # Select the active layer.
        if self.iface.activeLayer():
            found = self.layer_combo_box.findText(
                self.iface.activeLayer().name())
            if found > -1:
                self.layer_combo_box.setLayer(self.iface.activeLayer())

        self.field_mapping_widget = None
        self.main_stacked_widget.setCurrentIndex(1)

        # Input
        self.layer_input_layout.addWidget(self.layer_label)
        self.layer_input_layout.addWidget(self.layer_combo_box)

        self.header_label = QLabel()
        self.header_label.setWordWrap(True)
        self.main_layout.addWidget(self.header_label)
        self.main_layout.addLayout(self.layer_input_layout)

        # Signal
        self.layer_combo_box.layerChanged.connect(self.set_layer)

        if self.layer_combo_box.currentLayer():
            self.set_layer(self.layer_combo_box.currentLayer())

        # Set up things for context help
        self.help_button = self.button_box.button(QDialogButtonBox.Help)
        # Allow toggling the help button
        self.help_button.setCheckable(True)
        self.help_button.toggled.connect(self.help_toggled)

        # Set up things for ok button
        self.ok_button = self.button_box.button(QDialogButtonBox.Ok)
        self.ok_button.clicked.connect(self.accept)

        # Set up things for cancel button
        self.cancel_button = self.button_box.button(QDialogButtonBox.Cancel)
        self.cancel_button.clicked.connect(self.reject)

    def set_layer(self, layer=None, keywords=None):
        """Set layer and update UI accordingly.

        :param layer: A QgsVectorLayer.
        :type layer: QgsVectorLayer

        :param keywords: Keywords for the layer.
        :type keywords: dict, None
        """
        if self.field_mapping_widget is not None:
            self.field_mapping_widget.setParent(None)
            self.field_mapping_widget.close()
            self.field_mapping_widget.deleteLater()
            self.main_layout.removeWidget(self.field_mapping_widget)
            self.field_mapping_widget = None

        if layer:
            self.layer = layer
        else:
            self.layer = self.layer_combo_box.currentLayer()
        if not self.layer:
            return

        if keywords is not None:
            self.metadata = keywords
        else:
            # Always read from metadata file.
            try:
                self.metadata = self.keyword_io.read_keywords(self.layer)
            except (
                    NoKeywordsFoundError,
                    KeywordNotFoundError,
                    MetadataReadError) as e:
                raise e
        if 'inasafe_default_values' not in self.metadata:
            self.metadata['inasafe_default_values'] = {}
        if 'inasafe_fields' not in self.metadata:
            self.metadata['inasafe_fields'] = {}
        self.field_mapping_widget = FieldMappingWidget(
            parent=self, iface=self.iface)
        self.field_mapping_widget.set_layer(self.layer, self.metadata)
        self.field_mapping_widget.show()
        self.main_layout.addWidget(self.field_mapping_widget)

        # Set header label
        group_names = [
            self.field_mapping_widget.tabText(i) for i in range(
                self.field_mapping_widget.count())]
        if len(group_names) == 0:
            header_text = tr(
                'There is no field group for this layer. Please select '
                'another layer.')
            self.header_label.setText(header_text)
            return
        elif len(group_names) == 1:
            pretty_group_name = group_names[0]
        elif len(group_names) == 2:
            pretty_group_name = group_names[0] + tr(' and ') + group_names[1]
        else:
            pretty_group_name = ', '.join(group_names[:-1])
            pretty_group_name += tr(', and {0}').format(group_names[-1])
        header_text = tr(
            'Please fill the information for every tab to determine the '
            'attribute for {0} group.').format(pretty_group_name)
        self.header_label.setText(header_text)

    @pyqtSlot(bool)  # prevents actions being handled twice
    def help_toggled(self, flag):
        """Show or hide the help tab in the stacked widget.

        .. versionadded: 3.2.1

        :param flag: Flag indicating whether help should be shown or hidden.
        :type flag: bool
        """
        if flag:
            self.help_button.setText(self.tr('Hide Help'))
            self.show_help()
        else:
            self.help_button.setText(self.tr('Show Help'))
            self.hide_help()

    def hide_help(self):
        """Hide the usage info from the user.

        .. versionadded: 3.2.1
        """
        self.main_stacked_widget.setCurrentIndex(1)

    def show_help(self):
        """Show usage info to the user."""
        # Read the header and footer html snippets
        self.main_stacked_widget.setCurrentIndex(0)
        header = html_header()
        footer = html_footer()

        string = header

        message = field_mapping_help()

        string += message.to_html()
        string += footer

        self.help_web_view.setHtml(string)

    def save_metadata(self):
        """Save metadata based on the field mapping state."""
        metadata = self.field_mapping_widget.get_field_mapping()
        for key, value in list(metadata['fields'].items()):
            # Delete the key if it's set to None
            if key in self.metadata['inasafe_default_values']:
                self.metadata['inasafe_default_values'].pop(key)
            if value is None or value == []:
                if key in self.metadata['inasafe_fields']:
                    self.metadata['inasafe_fields'].pop(key)
            else:
                self.metadata['inasafe_fields'][key] = value

        for key, value in list(metadata['values'].items()):
            # Delete the key if it's set to None
            if key in self.metadata['inasafe_fields']:
                self.metadata['inasafe_fields'].pop(key)
            if value is None:
                if key in self.metadata['inasafe_default_values']:
                    self.metadata['inasafe_default_values'].pop(key)
            else:
                self.metadata['inasafe_default_values'][key] = value

        # Save metadata
        try:
            self.keyword_io.write_keywords(
                layer=self.layer, keywords=self.metadata)
        except InaSAFEError as e:
            error_message = get_error_message(e)
            # noinspection PyCallByClass,PyTypeChecker,PyArgumentList
            QMessageBox.warning(
                self, self.tr('InaSAFE'),
                ((self.tr(
                    'An error was encountered when saving the following '
                    'keywords:\n %s') % error_message.to_html())))

        # Update setting fir recent value
        if self.metadata.get('inasafe_default_values'):
            for key, value in \
                    list(self.metadata['inasafe_default_values'].items()):
                set_inasafe_default_value_qsetting(
                    self.setting, key, RECENT, value)

    def accept(self):
        """Method invoked when OK button is clicked."""
        try:
            self.save_metadata()
        except InvalidValidationException as e:
            display_warning_message_box(
                self, tr('Invalid Field Mapping'), str(e))
            return
        super(FieldMappingDialog, self).accept()