本文整理汇总了Python中qgis.core.QgsMapLayerModel类的典型用法代码示例。如果您正苦于以下问题:Python QgsMapLayerModel类的具体用法?Python QgsMapLayerModel怎么用?Python QgsMapLayerModel使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了QgsMapLayerModel类的13个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: testAddingRemovingLayers
def testAddingRemovingLayers(self):
# test model handles layer addition and removal
m = QgsMapLayerModel()
self.assertEqual(m.rowCount(QModelIndex()), 0)
l1 = create_layer('l1')
QgsProject.instance().addMapLayer(l1)
self.assertEqual(m.rowCount(QModelIndex()), 1)
l2 = create_layer('l2')
QgsProject.instance().addMapLayer(l2)
self.assertEqual(m.rowCount(QModelIndex()), 2)
QgsProject.instance().removeMapLayer(l1)
self.assertEqual(m.rowCount(QModelIndex()), 1)
QgsProject.instance().removeMapLayer(l2)
self.assertEqual(m.rowCount(QModelIndex()), 0)
# try creating a model when layers already exist in registry
l1 = create_layer('l1')
l2 = create_layer('l2')
QgsProject.instance().addMapLayers([l1, l2])
m = QgsMapLayerModel()
self.assertEqual(m.rowCount(QModelIndex()), 2)
QgsProject.instance().removeMapLayers([l1.id(), l2.id()])
self.assertEqual(m.rowCount(QModelIndex()), 0)
示例2: testDisplayRole
def testDisplayRole(self):
l1 = create_layer('l1')
l2 = create_layer('l2')
QgsProject.instance().addMapLayers([l1, l2])
m = QgsMapLayerModel()
self.assertEqual(m.data(m.index(0, 0), Qt.DisplayRole), 'l1')
self.assertEqual(m.data(m.index(1, 0), Qt.DisplayRole), 'l2')
m.setAllowEmptyLayer(True)
self.assertFalse(m.data(m.index(0, 0), Qt.DisplayRole))
self.assertEqual(m.data(m.index(1, 0), Qt.DisplayRole), 'l1')
self.assertEqual(m.data(m.index(2, 0), Qt.DisplayRole), 'l2')
QgsProject.instance().removeMapLayers([l1.id(), l2.id()])
示例3: testIndexFromLayer
def testIndexFromLayer(self):
l1 = create_layer('l1')
l2 = create_layer('l2')
QgsProject.instance().addMapLayers([l1, l2])
m = QgsMapLayerModel()
l3 = create_layer('l3') # not in registry
self.assertEqual(m.indexFromLayer(l1).row(), 0)
self.assertEqual(m.indexFromLayer(l2).row(), 1)
self.assertFalse(m.indexFromLayer(l3).isValid())
m.setAllowEmptyLayer(True)
self.assertEqual(m.indexFromLayer(l1).row(), 1)
self.assertEqual(m.indexFromLayer(l2).row(), 2)
QgsProject.instance().removeMapLayers([l1.id(), l2.id()])
示例4: testCheckAll
def testCheckAll(self):
l1 = create_layer('l1')
l2 = create_layer('l2')
QgsProject.instance().addMapLayers([l1, l2])
m = QgsMapLayerModel()
m.setItemsCheckable(True)
self.assertFalse(m.layersChecked())
self.assertEqual(set(m.layersChecked(Qt.Unchecked)), set([l1, l2]))
m.checkAll(Qt.Checked)
self.assertEqual(set(m.layersChecked()), set([l1, l2]))
self.assertFalse(set(m.layersChecked(Qt.Unchecked)))
m.checkAll(Qt.Unchecked)
self.assertFalse(m.layersChecked())
self.assertEqual(set(m.layersChecked(Qt.Unchecked)), set([l1, l2]))
QgsProject.instance().removeMapLayers([l1.id(), l2.id()])
示例5: testSetData
def testSetData(self):
l1 = create_layer('l1')
l2 = create_layer('l2')
QgsProject.instance().addMapLayers([l1, l2])
m = QgsMapLayerModel()
# set checked
m.setItemsCheckable(True)
self.assertTrue(m.setData(m.index(0, 0), True, Qt.CheckStateRole))
self.assertTrue(m.data(m.index(0, 0), Qt.CheckStateRole))
self.assertFalse(m.data(m.index(1, 0), Qt.CheckStateRole))
self.assertTrue(m.setData(m.index(1, 0), True, Qt.CheckStateRole))
self.assertTrue(m.data(m.index(0, 0), Qt.CheckStateRole))
self.assertTrue(m.data(m.index(1, 0), Qt.CheckStateRole))
m.setAllowEmptyLayer(True)
self.assertFalse(m.setData(m.index(0, 0), True, Qt.CheckStateRole))
self.assertTrue(m.setData(m.index(1, 0), True, Qt.CheckStateRole))
m.setAdditionalItems(['a'])
self.assertFalse(m.setData(m.index(3, 0), True, Qt.CheckStateRole))
QgsProject.instance().removeMapLayers([l1.id(), l2.id()])
示例6: testGettersSetters
def testGettersSetters(self):
""" test model getters/setters """
m = QgsMapLayerModel()
m.setItemsCheckable(True)
self.assertTrue(m.itemsCheckable())
m.setItemsCheckable(False)
self.assertFalse(m.itemsCheckable())
m.setAllowEmptyLayer(True)
self.assertTrue(m.allowEmptyLayer())
m.setAllowEmptyLayer(False)
self.assertFalse(m.allowEmptyLayer())
m.setShowCrs(True)
self.assertTrue(m.showCrs())
m.setShowCrs(False)
self.assertFalse(m.showCrs())
m.setAdditionalItems(['a', 'b'])
self.assertEqual(m.additionalItems(), ['a', 'b'])
m.setAdditionalItems([])
self.assertFalse(m.additionalItems())
示例7: testFlags
def testFlags(self):
l1 = create_layer('l1')
l2 = create_layer('l2')
QgsProject.instance().addMapLayers([l1, l2])
m = QgsMapLayerModel()
# not checkable
self.assertFalse(m.flags(m.index(0, 0)) & Qt.ItemIsUserCheckable)
self.assertFalse(m.flags(m.index(1, 0)) & Qt.ItemIsUserCheckable)
m.setAllowEmptyLayer(True)
self.assertFalse(m.flags(m.index(0, 0)) & Qt.ItemIsUserCheckable)
self.assertFalse(m.flags(m.index(1, 0)) & Qt.ItemIsUserCheckable)
self.assertFalse(m.flags(m.index(2, 0)) & Qt.ItemIsUserCheckable)
m.setAllowEmptyLayer(False)
# checkable
m.setItemsCheckable(True)
self.assertTrue(m.flags(m.index(0, 0)) & Qt.ItemIsUserCheckable)
self.assertTrue(m.flags(m.index(1, 0)) & Qt.ItemIsUserCheckable)
m.setAllowEmptyLayer(True)
self.assertFalse(m.flags(m.index(0, 0)) & Qt.ItemIsUserCheckable)
self.assertTrue(m.flags(m.index(1, 0)) & Qt.ItemIsUserCheckable)
self.assertTrue(m.flags(m.index(2, 0)) & Qt.ItemIsUserCheckable)
m.setAdditionalItems(['a'])
self.assertFalse(m.flags(m.index(3, 0)) & Qt.ItemIsUserCheckable)
QgsProject.instance().removeMapLayers([l1.id(), l2.id()])
示例8: testIsAdditionalRole
def testIsAdditionalRole(self):
l1 = create_layer('l1')
l2 = create_layer('l2')
QgsProject.instance().addMapLayers([l1, l2])
m = QgsMapLayerModel()
self.assertFalse(m.data(m.index(0, 0), QgsMapLayerModel.AdditionalRole))
self.assertFalse(m.data(m.index(1, 0), QgsMapLayerModel.AdditionalRole))
m.setAllowEmptyLayer(True)
self.assertFalse(m.data(m.index(0, 0), QgsMapLayerModel.AdditionalRole))
self.assertFalse(m.data(m.index(1, 0), QgsMapLayerModel.AdditionalRole))
self.assertFalse(m.data(m.index(2, 0), QgsMapLayerModel.AdditionalRole))
m.setAdditionalItems(['a'])
self.assertFalse(m.data(m.index(0, 0), QgsMapLayerModel.AdditionalRole))
self.assertFalse(m.data(m.index(1, 0), QgsMapLayerModel.AdditionalRole))
self.assertFalse(m.data(m.index(2, 0), QgsMapLayerModel.AdditionalRole))
self.assertTrue(m.data(m.index(3, 0), QgsMapLayerModel.AdditionalRole))
QgsProject.instance().removeMapLayers([l1.id(), l2.id()])
示例9: testDisplayRoleShowCrs
def testDisplayRoleShowCrs(self):
l1 = create_layer('l1')
l2 = create_layer('l2')
QgsProject.instance().addMapLayers([l1, l2])
m = QgsMapLayerModel()
m.setShowCrs(True)
self.assertEqual(m.data(m.index(0, 0), Qt.DisplayRole), 'l1 [EPSG:3111]')
self.assertEqual(m.data(m.index(1, 0), Qt.DisplayRole), 'l2 [EPSG:3111]')
m.setAllowEmptyLayer(True)
self.assertFalse(m.data(m.index(0, 0), Qt.DisplayRole))
self.assertEqual(m.data(m.index(1, 0), Qt.DisplayRole), 'l1 [EPSG:3111]')
self.assertEqual(m.data(m.index(2, 0), Qt.DisplayRole), 'l2 [EPSG:3111]')
m.setAdditionalItems(['a'])
self.assertEqual(m.data(m.index(3, 0), Qt.DisplayRole), 'a')
QgsProject.instance().removeMapLayers([l1.id(), l2.id()])
示例10: testAdditionalItems
def testAdditionalItems(self):
l1 = create_layer('l1')
l2 = create_layer('l2')
QgsProject.instance().addMapLayers([l1, l2])
m = QgsMapLayerModel()
self.assertEqual(m.rowCount(QModelIndex()), 2)
m.setAdditionalItems(['a', 'b'])
self.assertEqual(m.rowCount(QModelIndex()), 4)
self.assertEqual(m.data(m.index(0, 0), Qt.DisplayRole), 'l1')
self.assertEqual(m.data(m.index(1, 0), Qt.DisplayRole), 'l2')
self.assertEqual(m.data(m.index(2, 0), Qt.DisplayRole), 'a')
self.assertEqual(m.data(m.index(3, 0), Qt.DisplayRole), 'b')
m.setAllowEmptyLayer(True)
self.assertEqual(m.rowCount(QModelIndex()), 5)
self.assertFalse(m.data(m.index(0, 0), Qt.DisplayRole))
self.assertEqual(m.data(m.index(1, 0), Qt.DisplayRole), 'l1')
self.assertEqual(m.data(m.index(2, 0), Qt.DisplayRole), 'l2')
self.assertEqual(m.data(m.index(3, 0), Qt.DisplayRole), 'a')
self.assertEqual(m.data(m.index(4, 0), Qt.DisplayRole), 'b')
QgsProject.instance().removeMapLayers([l1.id(), l2.id()])
self.assertEqual(m.rowCount(QModelIndex()), 3)
self.assertFalse(m.data(m.index(0, 0), Qt.DisplayRole))
self.assertEqual(m.data(m.index(1, 0), Qt.DisplayRole), 'a')
self.assertEqual(m.data(m.index(2, 0), Qt.DisplayRole), 'b')
示例11: testAllowEmpty
def testAllowEmpty(self):
l1 = create_layer('l1')
l2 = create_layer('l2')
QgsProject.instance().addMapLayers([l1, l2])
m = QgsMapLayerModel()
self.assertEqual(m.rowCount(QModelIndex()), 2)
m.setAllowEmptyLayer(True)
self.assertEqual(m.rowCount(QModelIndex()), 3)
self.assertFalse(m.data(m.index(0, 0), Qt.DisplayRole))
m.setAllowEmptyLayer(False)
self.assertEqual(m.rowCount(QModelIndex()), 2)
self.assertTrue(m.data(m.index(0, 0), Qt.DisplayRole))
# add layers after allow empty is true
m.setAllowEmptyLayer(True)
l3 = create_layer('l3')
QgsProject.instance().addMapLayers([l3])
self.assertEqual(m.rowCount(QModelIndex()), 4)
self.assertFalse(m.data(m.index(0, 0), Qt.DisplayRole))
self.assertEqual(m.data(m.index(1, 0), Qt.DisplayRole), 'l1')
self.assertEqual(m.data(m.index(2, 0), Qt.DisplayRole), 'l2')
self.assertEqual(m.data(m.index(3, 0), Qt.DisplayRole), 'l3')
QgsProject.instance().removeMapLayers([l1.id(), l2.id(), l3.id()])
示例12: testDisplayRoleShowCrs
def testDisplayRoleShowCrs(self):
l1 = create_layer('l1')
l2 = create_layer('l2')
l3 = QgsVectorLayer("NoGeometry?field=fldtxt:string&field=fldint:integer",
'no geom', "memory")
QgsProject.instance().addMapLayers([l1, l2, l3])
m = QgsMapLayerModel()
m.setShowCrs(True)
self.assertEqual(m.data(m.index(0, 0), Qt.DisplayRole), 'l1 [EPSG:3111]')
self.assertEqual(m.data(m.index(1, 0), Qt.DisplayRole), 'l2 [EPSG:3111]')
self.assertEqual(m.data(m.index(2, 0), Qt.DisplayRole), 'no geom')
m.setAllowEmptyLayer(True)
self.assertFalse(m.data(m.index(0, 0), Qt.DisplayRole))
self.assertEqual(m.data(m.index(1, 0), Qt.DisplayRole), 'l1 [EPSG:3111]')
self.assertEqual(m.data(m.index(2, 0), Qt.DisplayRole), 'l2 [EPSG:3111]')
self.assertEqual(m.data(m.index(3, 0), Qt.DisplayRole), 'no geom')
m.setAdditionalItems(['a'])
self.assertEqual(m.data(m.index(4, 0), Qt.DisplayRole), 'a')
QgsProject.instance().removeMapLayers([l1.id(), l2.id(), l3.id()])
示例13: testCheckStateRole
def testCheckStateRole(self):
l1 = create_layer('l1')
l2 = create_layer('l2')
QgsMapLayerRegistry.instance().addMapLayers([l1, l2])
m = QgsMapLayerModel()
# not checkable
self.assertFalse(m.data(m.index(0, 0), Qt.CheckStateRole))
self.assertFalse(m.data(m.index(1, 0), Qt.CheckStateRole))
m.setAllowEmptyLayer(True)
self.assertFalse(m.data(m.index(0, 0), Qt.CheckStateRole))
self.assertFalse(m.data(m.index(1, 0), Qt.CheckStateRole))
self.assertFalse(m.data(m.index(2, 0), Qt.CheckStateRole))
m.setAllowEmptyLayer(False)
# checkable
m.setItemsCheckable(True)
m.checkAll(Qt.Checked)
self.assertTrue(m.data(m.index(0, 0), Qt.CheckStateRole))
self.assertTrue(m.data(m.index(1, 0), Qt.CheckStateRole))
m.setAllowEmptyLayer(True)
self.assertFalse(m.data(m.index(0, 0), Qt.CheckStateRole))
self.assertTrue(m.data(m.index(1, 0), Qt.CheckStateRole))
self.assertTrue(m.data(m.index(2, 0), Qt.CheckStateRole))
m.setAdditionalItems(['a'])
self.assertFalse(m.data(m.index(3, 0), Qt.CheckStateRole))
QgsMapLayerRegistry.instance().removeMapLayers([l1.id(), l2.id()])