コード例 #1
0
    def testSetData(self):
        """
        Test model set data
        """
        style = QgsStyle()
        style.createMemoryDatabase()

        symbol_a = createMarkerSymbol()
        symbol_a.setColor(QColor(255, 10, 10))
        self.assertTrue(style.addSymbol('a', symbol_a, True))
        ramp_a = QgsLimitedRandomColorRamp(5)
        self.assertTrue(style.addColorRamp('ramp a', ramp_a, True))

        model = QgsStyleModel(style)
        self.assertEqual(model.rowCount(), 2)

        self.assertEqual(style.symbolNames(), ['a'])

        self.assertFalse(model.setData(QModelIndex(), 'b', Qt.EditRole))
        self.assertFalse(model.setData(model.index(0, 1), 'b', Qt.EditRole))
        self.assertTrue(
            model.setData(model.index(0, 0), 'new symbol name', Qt.EditRole))
        self.assertEqual(model.data(model.index(0, 0), Qt.DisplayRole),
                         'new symbol name')
        self.assertEqual(style.symbolNames(), ['new symbol name'])
        self.assertTrue(
            model.setData(model.index(1, 0), 'ramp new name', Qt.EditRole))
        self.assertEqual(model.data(model.index(1, 0), Qt.DisplayRole),
                         'ramp new name')
        self.assertEqual(style.colorRampNames(), ['ramp new name'])
コード例 #2
0
ファイル: test_qgsstylemodel.py プロジェクト: pblottiere/QGIS
    def testSetData(self):
        """
        Test model set data
        """
        style = QgsStyle()
        style.createMemoryDatabase()

        symbol_a = createMarkerSymbol()
        symbol_a.setColor(QColor(255, 10, 10))
        self.assertTrue(style.addSymbol('a', symbol_a, True))
        ramp_a = QgsLimitedRandomColorRamp(5)
        self.assertTrue(style.addColorRamp('ramp a', ramp_a, True))

        model = QgsStyleModel(style)
        self.assertEqual(model.rowCount(), 2)

        self.assertEqual(style.symbolNames(), ['a'])

        self.assertFalse(model.setData(QModelIndex(), 'b', Qt.EditRole))
        self.assertFalse(model.setData(model.index(0, 1), 'b', Qt.EditRole))
        self.assertTrue(model.setData(model.index(0, 0), 'new symbol name', Qt.EditRole))
        self.assertEqual(model.data(model.index(0, 0), Qt.DisplayRole), 'new symbol name')
        self.assertEqual(style.symbolNames(), ['new symbol name'])
        self.assertTrue(model.setData(model.index(1, 0), 'ramp new name', Qt.EditRole))
        self.assertEqual(model.data(model.index(1, 0), Qt.DisplayRole), 'ramp new name')
        self.assertEqual(style.colorRampNames(), ['ramp new name'])
コード例 #3
0
                                          filename=extract_name(filename)):
                log.error(f"cannot validate {filename}")

            if root.findall("./symbols/symbol"):
                for symbol in root.findall("./symbols/symbol"):
                    symbol.attrib['tags'] = auth + ',geology'
                    n = (symbol.attrib['name'])
                    print(n)
                    c, d = name_parser(n)
                symbols.append(symbol)
                count_dict[auth] += 1

                style = QgsStyle()
                style.importXml(xmlfile)
                n_styles = style.symbolCount()
                symbol_name = style.symbolNames()[0]
                symbol = style.symbol(symbol_name)
                size = QSize(64, 64)
                image = symbol.asImage(size)
                path, filename = os.path.split(xmlfile)
                png_filename = filename.replace('.xml', '.png')
                png_dir = os.path.join("../docs/images/library/", auth)

                if not os.path.exists(png_dir):
                    os.makedirs(png_dir)
                image.save(r"{}".format(png_dir + '/' + png_filename), "PNG")

                status_path = os.path.join("docs/images/library/", auth)
                lnk = "![]({})".format(os.path.join(status_path, png_filename))
                writer.value_matrix.append([lnk, auth, str(c), d, ''])