-
-
Notifications
You must be signed in to change notification settings - Fork 92
/
Copy pathprocprovider.py
59 lines (42 loc) · 1.64 KB
/
procprovider.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
# -*- coding: utf-8 -*-
# (C) 2018 Minoru Akagi
# SPDX-License-Identifier: GPL-2.0-or-later
# begin: 2018-11-06
from PyQt5.QtGui import QIcon
from qgis.core import QgsProcessingProvider
from processing.core.ProcessingConfig import ProcessingConfig, Setting
from .conf import PLUGIN_NAME
from .utils import pluginDir
QTO3_ACTIVE = "QGIS2THREEJS_ACTIVE"
class Qgis2threejsProvider(QgsProcessingProvider):
def __init__(self):
QgsProcessingProvider.__init__(self)
self.algs = []
def id(self):
return PLUGIN_NAME
def name(self):
return PLUGIN_NAME
def icon(self):
return QIcon(pluginDir("Qgis2threejs.png"))
def load(self):
ProcessingConfig.settingIcons[self.name()] = self.icon()
ProcessingConfig.addSetting(Setting(self.name(),
QTO3_ACTIVE,
self.tr("Activate"),
False))
ProcessingConfig.readSettings()
self.refreshAlgorithms()
return True
def unload(self):
ProcessingConfig.removeSetting(QTO3_ACTIVE)
def isActive(self):
return ProcessingConfig.getSetting(QTO3_ACTIVE)
def setActive(self, active):
ProcessingConfig.setSettingValue(QTO3_ACTIVE, active)
def supportsNonFileBasedOutput(self):
return False
def loadAlgorithms(self):
from .procalgorithm import ExportAlgorithm, ExportImageAlgorithm, ExportModelAlgorithm
self.algs = [ExportAlgorithm(), ExportImageAlgorithm(), ExportModelAlgorithm()]
for alg in self.algs:
self.addAlgorithm(alg)