当前位置: 首页>>代码示例>>Python>>正文


Python gui.QgsExpressionBuilderWidget类代码示例

本文整理汇总了Python中qgis.gui.QgsExpressionBuilderWidget的典型用法代码示例。如果您正苦于以下问题:Python QgsExpressionBuilderWidget类的具体用法?Python QgsExpressionBuilderWidget怎么用?Python QgsExpressionBuilderWidget使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


在下文中一共展示了QgsExpressionBuilderWidget类的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: testLayers

    def testLayers(self):
        """ check that layers are shown in widget model"""
        p = QgsProject.instance()
        layer = QgsVectorLayer("Point", "layer1", "memory")
        layer2 = QgsVectorLayer("Point", "layer2", "memory")
        p.addMapLayers([layer, layer2])

        w = QgsExpressionBuilderWidget()
        m = w.model()

        # check that layers are shown
        items = m.findItems('layer1', Qt.MatchRecursive)
        self.assertEqual(len(items), 1)
        items = m.findItems('layer2', Qt.MatchRecursive)
        self.assertEqual(len(items), 1)

        # change project
        p2 = QgsProject()
        layer3 = QgsVectorLayer("Point", "layer3", "memory")
        p2.addMapLayers([layer3])
        w.setProject(p2)
        m = w.model()
        items = m.findItems('layer1', Qt.MatchRecursive)
        self.assertEqual(len(items), 0)
        items = m.findItems('layer2', Qt.MatchRecursive)
        self.assertEqual(len(items), 0)
        items = m.findItems('layer3', Qt.MatchRecursive)
        self.assertEqual(len(items), 1)
开发者ID:giohappy,项目名称:QGIS,代码行数:28,代码来源:test_qgsexpressionbuilderwidget.py

示例2: testRelations

    def testRelations(self):
        """ check that layers are shown in widget model"""
        p = QgsProject.instance()

        # not valid, but doesn't matter for test....
        rel = QgsRelation()
        rel.setId('rel1')
        rel.setName('Relation Number One')
        rel.setReferencingLayer(self.referencingLayer.id())
        rel.setReferencedLayer(self.referencedLayer.id())
        rel.addFieldPair('foreignkey', 'y')

        rel2 = QgsRelation()
        rel2.setId('rel2')
        rel2.setName('Relation Number Two')
        rel2.setReferencingLayer(self.referencingLayer.id())
        rel2.setReferencedLayer(self.referencedLayer.id())
        rel2.addFieldPair('foreignkey', 'y')

        p.relationManager().addRelation(rel)
        p.relationManager().addRelation(rel2)

        w = QgsExpressionBuilderWidget()
        m = w.model()

        # check that relations are shown
        items = m.findItems('Relation Number One', Qt.MatchRecursive)
        self.assertEqual(len(items), 1)
        items = m.findItems('Relation Number Two', Qt.MatchRecursive)
        self.assertEqual(len(items), 1)
开发者ID:giohappy,项目名称:QGIS,代码行数:30,代码来源:test_qgsexpressionbuilderwidget.py

示例3: testFunctionPresent

 def testFunctionPresent(self):
     """ check through widget model to ensure it is initially populated with functions """
     w = QgsExpressionBuilderWidget()
     m = w.model()
     # check that some standard expression functions are shown
     items = m.findItems('lower', Qt.MatchRecursive)
     self.assertEqual(len(items), 1)
     items = m.findItems('upper', Qt.MatchRecursive)
     self.assertEqual(len(items), 1)
     items = m.findItems('asdasdasda#[email protected]#$', Qt.MatchRecursive)
     self.assertEqual(len(items), 0)
开发者ID:giohappy,项目名称:QGIS,代码行数:11,代码来源:test_qgsexpressionbuilderwidget.py

示例4: testVariables

    def testVariables(self):
        """ check through widget model to ensure it is populated with variables """
        w = QgsExpressionBuilderWidget()
        m = w.model()

        s = QgsExpressionContextScope()
        s.setVariable('my_var1', 'x')
        s.setVariable('my_var2', 'y')
        c = QgsExpressionContext()
        c.appendScope(s)

        # check that variables are added when setting context
        w.setExpressionContext(c)
        items = m.findItems('my_var1', Qt.MatchRecursive)
        self.assertEqual(len(items), 1)
        items = m.findItems('my_var2', Qt.MatchRecursive)
        self.assertEqual(len(items), 1)
        items = m.findItems('not_my_var', Qt.MatchRecursive)
        self.assertEqual(len(items), 0)
        # double check that functions are still only there once
        items = m.findItems('lower', Qt.MatchRecursive)
        self.assertEqual(len(items), 1)
        items = m.findItems('upper', Qt.MatchRecursive)
        self.assertEqual(len(items), 1)
开发者ID:giohappy,项目名称:QGIS,代码行数:24,代码来源:test_qgsexpressionbuilderwidget.py

示例5: setupUi

    def setupUi(self, FieldsCalculator):
        FieldsCalculator.setObjectName(_fromUtf8("FieldsCalculator"))
        FieldsCalculator.resize(681, 681)
        self.gridLayout = QtGui.QGridLayout(FieldsCalculator)
        self.gridLayout.setObjectName(_fromUtf8("gridLayout"))
        self.mNewFieldGroupBox = QtGui.QGroupBox(FieldsCalculator)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed, QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.mNewFieldGroupBox.sizePolicy().hasHeightForWidth())
        self.mNewFieldGroupBox.setSizePolicy(sizePolicy)
        self.mNewFieldGroupBox.setFlat(True)
        self.mNewFieldGroupBox.setCheckable(True)
        self.mNewFieldGroupBox.setChecked(True)
        self.mNewFieldGroupBox.setObjectName(_fromUtf8("mNewFieldGroupBox"))
        self.gridlayout = QtGui.QGridLayout(self.mNewFieldGroupBox)
        self.gridlayout.setSizeConstraint(QtGui.QLayout.SetMinimumSize)
        self.gridlayout.setContentsMargins(3, 3, 3, 0)
        self.gridlayout.setVerticalSpacing(3)
        self.gridlayout.setObjectName(_fromUtf8("gridlayout"))
        self.mFieldNameLabel = QtGui.QLabel(self.mNewFieldGroupBox)
        self.mFieldNameLabel.setObjectName(_fromUtf8("mFieldNameLabel"))
        self.gridlayout.addWidget(self.mFieldNameLabel, 0, 0, 1, 1)
        self.mOutputFieldNameLineEdit = QtGui.QLineEdit(self.mNewFieldGroupBox)
        self.mOutputFieldNameLineEdit.setObjectName(_fromUtf8("mOutputFieldNameLineEdit"))
        self.gridlayout.addWidget(self.mOutputFieldNameLineEdit, 0, 1, 1, 3)
        self.mOutputFieldTypeLabel = QtGui.QLabel(self.mNewFieldGroupBox)
        self.mOutputFieldTypeLabel.setObjectName(_fromUtf8("mOutputFieldTypeLabel"))
        self.gridlayout.addWidget(self.mOutputFieldTypeLabel, 1, 0, 1, 1)
        self.mOutputFieldTypeComboBox = QtGui.QComboBox(self.mNewFieldGroupBox)
        self.mOutputFieldTypeComboBox.setObjectName(_fromUtf8("mOutputFieldTypeComboBox"))
        self.gridlayout.addWidget(self.mOutputFieldTypeComboBox, 1, 1, 1, 3)
        self.mOutputFieldWidthLabel = QtGui.QLabel(self.mNewFieldGroupBox)
        self.mOutputFieldWidthLabel.setObjectName(_fromUtf8("mOutputFieldWidthLabel"))
        self.gridlayout.addWidget(self.mOutputFieldWidthLabel, 2, 0, 1, 1)
        self.mOutputFieldWidthSpinBox = QtGui.QSpinBox(self.mNewFieldGroupBox)
        self.mOutputFieldWidthSpinBox.setMinimum(0)
        self.mOutputFieldWidthSpinBox.setProperty("value", 15)
        self.mOutputFieldWidthSpinBox.setObjectName(_fromUtf8("mOutputFieldWidthSpinBox"))
        self.gridlayout.addWidget(self.mOutputFieldWidthSpinBox, 2, 1, 1, 1)
        self.mOutputFieldPrecisionLabel = QtGui.QLabel(self.mNewFieldGroupBox)
        self.mOutputFieldPrecisionLabel.setObjectName(_fromUtf8("mOutputFieldPrecisionLabel"))
        self.gridlayout.addWidget(self.mOutputFieldPrecisionLabel, 2, 2, 1, 1)
        self.mOutputFieldPrecisionSpinBox = QtGui.QSpinBox(self.mNewFieldGroupBox)
        self.mOutputFieldPrecisionSpinBox.setProperty("value", 2)
        self.mOutputFieldPrecisionSpinBox.setObjectName(_fromUtf8("mOutputFieldPrecisionSpinBox"))
        self.gridlayout.addWidget(self.mOutputFieldPrecisionSpinBox, 2, 3, 1, 1)
        self.gridLayout.addWidget(self.mNewFieldGroupBox, 2, 0, 1, 1)
        self.mButtonBox = QtGui.QDialogButtonBox(FieldsCalculator)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(3)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.mButtonBox.sizePolicy().hasHeightForWidth())
        self.mButtonBox.setSizePolicy(sizePolicy)
        self.mButtonBox.setOrientation(QtCore.Qt.Horizontal)
        self.mButtonBox.setStandardButtons(QtGui.QDialogButtonBox.Cancel|QtGui.QDialogButtonBox.Ok)
        self.mButtonBox.setObjectName(_fromUtf8("mButtonBox"))
        self.gridLayout.addWidget(self.mButtonBox, 5, 0, 1, 2)
        self.horizontalLayout = QtGui.QHBoxLayout()
        self.horizontalLayout.setObjectName(_fromUtf8("horizontalLayout"))
        self.label = QtGui.QLabel(FieldsCalculator)
        self.label.setObjectName(_fromUtf8("label"))
        self.horizontalLayout.addWidget(self.label)
        self.cmbInputLayer = QtGui.QComboBox(FieldsCalculator)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.cmbInputLayer.sizePolicy().hasHeightForWidth())
        self.cmbInputLayer.setSizePolicy(sizePolicy)
        self.cmbInputLayer.setObjectName(_fromUtf8("cmbInputLayer"))
        self.horizontalLayout.addWidget(self.cmbInputLayer)
        self.gridLayout.addLayout(self.horizontalLayout, 0, 0, 1, 2)
        self.mUpdateExistingGroupBox = QtGui.QGroupBox(FieldsCalculator)
        self.mUpdateExistingGroupBox.setFlat(True)
        self.mUpdateExistingGroupBox.setCheckable(True)
        self.mUpdateExistingGroupBox.setChecked(False)
        self.mUpdateExistingGroupBox.setObjectName(_fromUtf8("mUpdateExistingGroupBox"))
        self.verticalLayout = QtGui.QVBoxLayout(self.mUpdateExistingGroupBox)
        self.verticalLayout.setObjectName(_fromUtf8("verticalLayout"))
        self.mExistingFieldComboBox = QtGui.QComboBox(self.mUpdateExistingGroupBox)
        self.mExistingFieldComboBox.setObjectName(_fromUtf8("mExistingFieldComboBox"))
        self.verticalLayout.addWidget(self.mExistingFieldComboBox)
        self.gridLayout.addWidget(self.mUpdateExistingGroupBox, 2, 1, 1, 1)
        self.builder = QgsExpressionBuilderWidget(FieldsCalculator)
        self.builder.setAutoFillBackground(False)
        self.builder.setObjectName(_fromUtf8("builder"))
        self.gridLayout.addWidget(self.builder, 3, 0, 1, 2)
        self.horizontalLayout_2 = QtGui.QHBoxLayout()
        self.horizontalLayout_2.setObjectName(_fromUtf8("horizontalLayout_2"))
        self.label_2 = QtGui.QLabel(FieldsCalculator)
        self.label_2.setObjectName(_fromUtf8("label_2"))
        self.horizontalLayout_2.addWidget(self.label_2)
        self.leOutputFile = QtGui.QLineEdit(FieldsCalculator)
        self.leOutputFile.setObjectName(_fromUtf8("leOutputFile"))
        self.horizontalLayout_2.addWidget(self.leOutputFile)
        self.btnBrowse = QtGui.QToolButton(FieldsCalculator)
        self.btnBrowse.setObjectName(_fromUtf8("btnBrowse"))
        self.horizontalLayout_2.addWidget(self.btnBrowse)
        self.gridLayout.addLayout(self.horizontalLayout_2, 1, 0, 1, 2)
        self.progressBar = QtGui.QProgressBar(FieldsCalculator)
#.........这里部分代码省略.........
开发者ID:ACorradini,项目名称:QGIS,代码行数:101,代码来源:ui_DlgFieldsCalculator.py


注:本文中的qgis.gui.QgsExpressionBuilderWidget类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。