def get_ui_class(*args): """Get UI Python class from .ui file. :param args: List of path in the UI folder. :type args: str """ ui_file_path = abspath(join(dirname(__file__), pardir, 'ui')) for item in args: ui_file_path = abspath(join(ui_file_path, item)) return uic.loadUiType(ui_file_path)[0]
def showLabelOptions(self): options = self.labelOptions self.dialog = QDialog() lo = uic.loadUiType(os.path.join(self.path, LABEL_OPTIONS_WIDGET_FILE))[0] self.labelOptionsDialog = lo() self.labelOptionsDialog.setupUi(self.dialog) self.labelOptionsDialog.fontsize.setValue(options.size) self.labelOptionsDialog.time_format.setText(options.fmt) self.labelOptionsDialog.font.setCurrentFont(QFont(options.font)) self.labelOptionsDialog.placement.addItems(TimestampLabelConfig.PLACEMENTS) self.labelOptionsDialog.placement.setCurrentIndex(TimestampLabelConfig.PLACEMENTS.index(options.placement)) self.labelOptionsDialog.text_color.setColor(QColor(options.color)) self.labelOptionsDialog.bg_color.setColor(QColor(options.bgcolor)) self.labelOptionsDialog.buttonBox.accepted.connect(self.saveLabelOptions) self.dialog.show()
def get_ui_class(ui_file): """Get UI Python class from .ui file. Can be filename.ui or subdirectory/filename.ui :param ui_file: The file of the ui in safe.gui.ui :type ui_file: str """ os.path.sep.join(ui_file.split('/')) ui_file_path = os.path.abspath( os.path.join( os.path.dirname(__file__), os.pardir, 'gui', 'ui', ui_file ) ) return uic.loadUiType(ui_file_path)[0]
__revision__ = '887677b3fda5f1c90be98f74945008e302b8a466' import os import warnings from qgis.PyQt import uic from qgis.PyQt.QtGui import QDesktopServices from qgis.PyQt.QtWidgets import QDockWidget from qgis.utils import iface pluginPath = os.path.split(os.path.dirname(__file__))[0] with warnings.catch_warnings(): warnings.filterwarnings("ignore", category=DeprecationWarning) WIDGET, BASE = uic.loadUiType( os.path.join(pluginPath, 'ui', 'DlgMessage.ui')) class MessageDialog(BASE, WIDGET): def __init__(self): super(MessageDialog, self).__init__(None) self.setupUi(self) self.txtMessage.anchorClicked.connect(self.openLink) def setTitle(self, title): self.setWindowTitle(title) def setMessage(self, message): self.txtMessage.setHtml(message)
import os import webbrowser import html from qgis.PyQt import uic from qgis.PyQt.QtCore import pyqtSignal, Qt, QCoreApplication, QByteArray, QUrl from qgis.PyQt.QtWidgets import QApplication, QDialogButtonBox, QVBoxLayout, QToolButton from qgis.utils import iface from qgis.core import (QgsProject, QgsProcessingFeedback, QgsSettings) from qgis.gui import QgsHelp from processing.core.ProcessingConfig import ProcessingConfig pluginPath = os.path.split(os.path.dirname(__file__))[0] WIDGET, BASE = uic.loadUiType( os.path.join(pluginPath, 'ui', 'DlgAlgorithmBase.ui')) class AlgorithmDialogFeedback(QgsProcessingFeedback): """ Directs algorithm feedback to an algorithm dialog """ error = pyqtSignal(str) progress_text = pyqtSignal(str) info = pyqtSignal(str) command_info = pyqtSignal(str) debug_info = pyqtSignal(str) console_info = pyqtSignal(str) def __init__(self, dialog):
from qgis.PyQt.QtGui import QCursor from qgis.gui import QgsEncodingFileDialog, QgsExpressionBuilderDialog from qgis.core import (QgsDataSourceUri, QgsCredentials, QgsExpressionContext, QgsExpressionContextUtils, QgsExpression, QgsExpressionContextScope) from processing.core.ProcessingConfig import ProcessingConfig from processing.core.outputs import OutputVector from processing.core.outputs import OutputDirectory from processing.gui.PostgisTableSelector import PostgisTableSelector pluginPath = os.path.split(os.path.dirname(__file__))[0] WIDGET, BASE = uic.loadUiType( os.path.join(pluginPath, 'ui', 'widgetBaseSelector.ui')) class OutputSelectionPanel(BASE, WIDGET): SAVE_TO_TEMP_FILE = QCoreApplication.translate( 'OutputSelectionPanel', '[Save to temporary file]') SAVE_TO_TEMP_LAYER = QCoreApplication.translate( 'OutputSelectionPanel', '[Create temporary layer]') def __init__(self, output, alg): super(OutputSelectionPanel, self).__init__(None) self.setupUi(self) self.output = output self.alg = alg
from processing.gui.MessageDialog import MessageDialog from processing.gui.AlgorithmDialog import AlgorithmDialog from processing.gui.BatchAlgorithmDialog import BatchAlgorithmDialog from processing.gui.EditRenderingStylesDialog import EditRenderingStylesDialog from processing.gui.MessageBarProgress import MessageBarProgress from processing.gui.AlgorithmExecutor import execute from processing.gui.ProviderActions import (ProviderActions, ProviderContextMenuActions) from processing.tools import dataobjects from processing.gui.AlgorithmExecutor import execute_in_place pluginPath = os.path.split(os.path.dirname(__file__))[0] with warnings.catch_warnings(): warnings.filterwarnings("ignore", category=DeprecationWarning) WIDGET, BASE = uic.loadUiType( os.path.join(pluginPath, 'ui', 'ProcessingToolbox.ui')) class ProcessingToolbox(QgsDockWidget, WIDGET): ALG_ITEM = 'ALG_ITEM' PROVIDER_ITEM = 'PROVIDER_ITEM' GROUP_ITEM = 'GROUP_ITEM' NAME_ROLE = Qt.UserRole TAG_ROLE = Qt.UserRole + 1 TYPE_ROLE = Qt.UserRole + 2 def __init__(self): super(ProcessingToolbox, self).__init__(None) self.tipWasClosed = False self.in_place_mode = False
from qgis.PyQt import uic from qgis.PyQt.QtCore import QCoreApplication, Qt from qgis.PyQt.QtWidgets import (QWidget, QHBoxLayout, QToolButton, QLabel, QCheckBox, QSizePolicy) from qgis.PyQt.QtGui import QIcon from processing.gui.DestinationSelectionPanel import DestinationSelectionPanel from processing.gui.wrappers import WidgetWrapperFactory, WidgetWrapper from processing.tools.dataobjects import createContext pluginPath = os.path.split(os.path.dirname(__file__))[0]\ with warnings.catch_warnings(): warnings.filterwarnings("ignore", category=DeprecationWarning) WIDGET, BASE = uic.loadUiType( os.path.join(pluginPath, 'ui', 'widgetParametersPanel.ui')) class ParametersPanel(BASE, WIDGET): NOT_SELECTED = QCoreApplication.translate('ParametersPanel', '[Not selected]') def __init__(self, parent, alg, in_place=False): super(ParametersPanel, self).__init__(None) self.setupUi(self) self.in_place = in_place self.grpAdvanced.hide() self.scrollAreaWidgetContents.setContentsMargins(4, 4, 4, 4) self.layoutMain = self.scrollAreaWidgetContents.layout()
from qgis.PyQt.QtGui import QIcon, QImage, QPainter from qgis.core import QgsApplication from processing.core.ProcessingConfig import ProcessingConfig from processing.core.ProcessingLog import ProcessingLog from processing.gui.HelpEditionDialog import HelpEditionDialog from processing.gui.AlgorithmDialog import AlgorithmDialog from processing.modeler.ModelerParameterDefinitionDialog import ModelerParameterDefinitionDialog from processing.modeler.ModelerAlgorithm import ModelerAlgorithm, ModelerParameter from processing.modeler.ModelerParametersDialog import ModelerParametersDialog from processing.modeler.ModelerUtils import ModelerUtils from processing.modeler.ModelerScene import ModelerScene from processing.modeler.WrongModelException import WrongModelException from processing.core.alglist import algList pluginPath = os.path.split(os.path.dirname(__file__))[0] WIDGET, BASE = uic.loadUiType( os.path.join(pluginPath, 'ui', 'DlgModeler.ui')) class ModelerDialog(BASE, WIDGET): CANVAS_SIZE = 4000 def __init__(self, alg=None): super(ModelerDialog, self).__init__(None) self.setupUi(self) self.zoom = 1 self.setWindowFlags(Qt.WindowMinimizeButtonHint | Qt.WindowMaximizeButtonHint | Qt.WindowCloseButtonHint)
# This will get replaced with a git SHA1 when you do a git archive __revision__ = '2f44d52ee547a306df39a0a2c9914020b5d49fca' import os from qgis.PyQt import uic from qgis.PyQt.QtCore import Qt from qgis.PyQt.QtWidgets import QAction, QPushButton, QDialogButtonBox, QStyle, QMessageBox, QFileDialog, QMenu, QTreeWidgetItem from qgis.PyQt.QtGui import QIcon from processing.gui import TestTools from processing.core.ProcessingLog import ProcessingLog pluginPath = os.path.split(os.path.dirname(__file__))[0] WIDGET, BASE = uic.loadUiType( os.path.join(pluginPath, 'ui', 'DlgHistory.ui')) class HistoryDialog(BASE, WIDGET): def __init__(self): super(HistoryDialog, self).__init__(None) self.setupUi(self) self.groupIcon = QIcon() self.groupIcon.addPixmap(self.style().standardPixmap( QStyle.SP_DirClosedIcon), QIcon.Normal, QIcon.Off) self.groupIcon.addPixmap(self.style().standardPixmap( QStyle.SP_DirOpenIcon), QIcon.Normal, QIcon.On) self.keyIcon = QIcon()
/************************************************************************* /*************************************************************************** * * * This program is free software; you can redistribute it and/or modify * * it under the terms of the GNU General Public License as published by * * the Free Software Foundation; either version 2 of the License, or * * (at your option) any later version. * * * ***************************************************************************/ """ from qgis.PyQt.QtCore import pyqtSlot from qgis.PyQt.QtWidgets import QDialog from qgis.PyQt import uic import os FORM_CLASS, _ = uic.loadUiType( os.path.join(os.path.dirname(__file__), 'srtm_downloader_login.ui')) class Login(QDialog, FORM_CLASS): """ Class documentation goes here. """ def __init__(self, username, password, parent=None): """ Constructor @param parent reference to the parent widget @type QWidget """ super(Login, self).__init__(parent) self.setupUi(self)
import os import warnings from qgis.PyQt import uic from qgis.PyQt.QtCore import Qt from qgis.PyQt.QtGui import QStandardItemModel, QStandardItem from qgis.PyQt.QtWidgets import QMessageBox from qgis.core import QgsApplication pluginPath = os.path.split(os.path.dirname(__file__))[0] with warnings.catch_warnings(): warnings.filterwarnings("ignore", category=DeprecationWarning) WIDGET, BASE = uic.loadUiType( os.path.join(pluginPath, 'ui', 'enummodelerwidgetbase.ui')) class EnumModelerWidget(BASE, WIDGET): def __init__(self, parent=None): super(EnumModelerWidget, self).__init__(parent) self.setupUi(self) self.btnAdd.setIcon(QgsApplication.getThemeIcon('/symbologyAdd.svg')) self.btnRemove.setIcon(QgsApplication.getThemeIcon('/symbologyRemove.svg')) self.btnClear.setIcon(QgsApplication.getThemeIcon('console/iconClearConsole.svg')) self.btnAdd.clicked.connect(self.addItem) self.btnRemove.clicked.connect(lambda: self.removeItems()) self.btnClear.clicked.connect(lambda: self.removeItems(True))
* This program is free software; you can redistribute it and/or modify * * it under the terms of the GNU General Public License as published by * * the Free Software Foundation; either version 2 of the License, or * * (at your option) any later version. * * * ***************************************************************************/ """ from builtins import str import os import sys from qgis.PyQt import QtGui, uic from qgis.PyQt.QtWidgets import QWidget, QVBoxLayout, QHBoxLayout, QSpacerItem, QSizePolicy FORM_CLASS, _ = uic.loadUiType( os.path.join(os.path.dirname(__file__), 'thewidgetitem.ui')) class TheWidgetItem(QWidget, FORM_CLASS): """TheWidgetItem is a class which create item for listWidget.""" def __init__(self, parent=None): """Constructor.""" super(TheWidgetItem, self).__init__(parent) self.setupUi(self) self.labels = [ self.lblPlt1, self.lblPlt2, self.lblPlt3, self.lblPlt4, self.lblPlt5, self.lblPlt6 ]
/*************************************************************************** * * * This program is free software; you can redistribute it and/or modify * * it under the terms of the GNU General Public License as published by * * the Free Software Foundation; either version 2 of the License, or * * (at your option) any later version. * * * ***************************************************************************/ """ import os from qgis.PyQt import QtGui, QtWidgets, uic from qgis.PyQt.QtCore import pyqtSignal FORM_CLASS, _ = uic.loadUiType( os.path.join(os.path.dirname(__file__), 'open_ftth_dockwidget_base.ui')) class OpenFtthDockWidget(QtWidgets.QDockWidget, FORM_CLASS): closingPlugin = pyqtSignal() def __init__(self, parent=None): """Constructor.""" super(OpenFtthDockWidget, self).__init__(parent) # Set up the user interface from Designer. # After setupUI you can access any designer object by doing # self.<objectname>, and you can use autoconnect slots - see # http://doc.qt.io/qt-5/designer-using-a-ui-file.html # #widgets-and-dialogs-with-auto-connect self.setupUi(self)
from qgis.PyQt.uic import loadUiType from qgis.PyQt.QtGui import QIcon from qgis.PyQt.QtWidgets import QDockWidget from qgis.PyQt.QtCore import QTextCodec from qgis.gui import QgsVertexMarker from qgis.core import Qgis, QgsJsonUtils, QgsWkbTypes from .util import epsg4326, parseDMSString from .utm import isUtm, utmString2Crs # import traceback from . import mgrs from . import olc from . import geohash from .maidenhead import maidenGridCenter FORM_CLASS, _ = loadUiType( os.path.join(os.path.dirname(__file__), 'ui/zoomToLatLon.ui')) class ZoomToLatLon(QDockWidget, FORM_CLASS): def __init__(self, lltools, iface, parent): super(ZoomToLatLon, self).__init__(parent) self.setupUi(self) self.canvas = iface.mapCanvas() self.marker = None self.zoomToolButton.setIcon( QIcon(':/images/themes/default/mActionZoomIn.svg')) self.clearToolButton.setIcon( QIcon(':/images/themes/default/mIconClearText.svg')) self.zoomToolButton.clicked.connect(self.zoomToPressed) self.clearToolButton.clicked.connect(self.removeMarker) self.optionsButton.setIcon(
from qgis.PyQt import uic from qgis.PyQt.QtCore import Qt, pyqtSlot from qgis.PyQt.QtWidgets import QApplication, QFileDialog, QListWidgetItem, QMessageBox from qgis.utils import iface from gml_application_schema_toolbox import name as plugin_name from gml_application_schema_toolbox.core.logging import log from gml_application_schema_toolbox.core.proxy import qgis_proxy_settings from gml_application_schema_toolbox.core.settings import settings from gml_application_schema_toolbox.gui import InputError from gml_application_schema_toolbox.gui.gmlas_panel_mixin import GmlasPanelMixin from ..core.load_gmlas_in_qgis import import_in_qgis WIDGET, BASE = uic.loadUiType( os.path.join(os.path.dirname(__file__), "..", "ui", "import_gmlas_panel.ui")) gdal.UseExceptions() class ImportGmlasPanel(BASE, WIDGET, GmlasPanelMixin): def __init__(self, parent=None, gml_path=None): super(ImportGmlasPanel, self).__init__(parent) self.setupUi(self) self.databaseWidget.set_accept_mode(QFileDialog.AcceptSave) self.gmlasConfigLineEdit.setText( settings.value("default_gmlas_config")) self.acceptLanguageHeaderInput.setText( settings.value("default_language"))
import os from qgis.PyQt import uic from qgis.core import (QgsExpressionContextScope, QgsProcessingParameterString, QgsProcessingParameterNumber, QgsExpression, QgsProcessingModelChildParameterSource) from qgis.gui import QgsFieldExpressionWidget from processing.gui.wrappers import (WidgetWrapper, dialogTypes, DIALOG_MODELER) pluginPath = os.path.dirname(__file__) WIDGET, BASE = uic.loadUiType( os.path.join(pluginPath, 'ExecuteSQLWidgetBase.ui')) class ExecuteSQLWidget(BASE, WIDGET): def __init__(self, dialog): super(ExecuteSQLWidget, self).__init__(None) self.setupUi(self) self.dialog = dialog self.dialogType = dialogTypes[dialog.__class__.__name__] self.mExpressionWidget = QgsFieldExpressionWidget() # add model parameters in context scope if called from modeler if self.dialogType == DIALOG_MODELER: strings = dialog.getAvailableValuesOfType( [QgsProcessingParameterString, QgsProcessingParameterNumber],
from builtins import str from qgis.PyQt.QtCore import QVariant from qgis.PyQt.QtWidgets import QDialog from qgis.PyQt.QtWidgets import QMessageBox from qgis.core import QgsProject, QgsWkbTypes, QgsMapLayerProxyModel from qgis.PyQt import uic import os,sys import traceback from datetime import datetime from qgis.PyQt.QtWidgets import QDialogButtonBox sys.path.append(os.path.dirname(__file__)) Ui_ApplyNoiseSymbology_window, _ = uic.loadUiType(os.path.join( os.path.dirname(__file__), 'ui_ApplyNoiseSymbology.ui'), resource_suffix='') from . import on_ApplyNoiseSymbology class Dialog(QDialog,Ui_ApplyNoiseSymbology_window): def __init__(self, iface): QDialog.__init__(self, iface.mainWindow()) self.iface = iface # Set up the user interface from Designer. self.setupUi(self) self.populate_comboBox() self.progressBar.setValue(0)
import os import warnings from qgis.PyQt import uic from qgis.PyQt.QtCore import Qt from qgis.PyQt.QtGui import QStandardItemModel, QStandardItem from qgis.PyQt.QtWidgets import QInputDialog, QMessageBox from qgis.core import QgsApplication pluginPath = os.path.split(os.path.dirname(__file__))[0] with warnings.catch_warnings(): warnings.filterwarnings("ignore", category=DeprecationWarning) WIDGET, BASE = uic.loadUiType( os.path.join(pluginPath, 'ui', 'matrixmodelerwidgetbase.ui')) class MatrixModelerWidget(BASE, WIDGET): def __init__(self, parent=None): super(MatrixModelerWidget, self).__init__(parent) self.setupUi(self) self.btnAddColumn.setIcon(QgsApplication.getThemeIcon('/mActionNewAttribute.svg')) self.btnRemoveColumn.setIcon(QgsApplication.getThemeIcon('/mActionDeleteAttribute.svg')) self.btnAddRow.setIcon(QgsApplication.getThemeIcon('/symbologyAdd.svg')) self.btnRemoveRow.setIcon(QgsApplication.getThemeIcon('/symbologyRemove.svg')) self.btnClear.setIcon(QgsApplication.getThemeIcon('console/iconClearConsole.svg')) self.btnAddColumn.clicked.connect(self.addColumn)
QgsUnitTypes, QgsMapLayer, QgsCoordinateReferenceSystem, QgsProcessingParameterNumber, QgsProcessingOutputNumber, QgsProcessingParameterDefinition, QgsProcessingModelChildParameterSource, QgsProcessingFeatureSourceDefinition, QgsProcessingUtils) from qgis.gui import QgsExpressionBuilderDialog from processing.tools.dataobjects import createExpressionContext, createContext pluginPath = os.path.split(os.path.dirname(__file__))[0] with warnings.catch_warnings(): warnings.filterwarnings("ignore", category=DeprecationWarning) NUMBER_WIDGET, NUMBER_BASE = uic.loadUiType( os.path.join(pluginPath, 'ui', 'widgetNumberSelector.ui')) WIDGET, BASE = uic.loadUiType( os.path.join(pluginPath, 'ui', 'widgetBaseSelector.ui')) class ModelerNumberInputPanel(BASE, WIDGET): """ Number input panel for use inside the modeler - this input panel is based off the base input panel and includes a text based line input for entering values. This allows expressions and other non-numeric values to be set, which are later evalauted to numbers when the model is run. """ hasChanged = pyqtSignal()
__revision__ = 'c2840a26eb3bb5d1c2f6f9bed8af78112aa43837' import os import warnings from qgis.gui import QgsGui from qgis.PyQt import uic from qgis.PyQt.QtWidgets import QDialog, QPushButton, QAbstractItemView, QDialogButtonBox from qgis.PyQt.QtGui import QStandardItemModel, QStandardItem pluginPath = os.path.split(os.path.dirname(__file__))[0] with warnings.catch_warnings(): warnings.filterwarnings("ignore", category=DeprecationWarning) WIDGET, BASE = uic.loadUiType( os.path.join(pluginPath, 'ui', 'DlgFixedTable.ui')) class FixedTableDialog(BASE, WIDGET): def __init__(self, param, table): """ Constructor for FixedTableDialog :param param: linked processing parameter :param table: initial table contents - squashed to 1-dimensional! """ super().__init__(None) self.setupUi(self) QgsGui.instance().enableAutoGeometryRestore(self)
from qgis.gui import QgsGui, QgsErrorDialog from qgis.core import (QgsApplication, QgsSettings, QgsError, QgsProcessingAlgorithm, QgsProcessingFeatureBasedAlgorithm) from qgis.utils import iface, OverrideCursor from processing.gui.AlgorithmDialog import AlgorithmDialog from processing.script import ScriptUtils pluginPath = os.path.split(os.path.dirname(__file__))[0] with warnings.catch_warnings(): warnings.filterwarnings("ignore", category=DeprecationWarning) WIDGET, BASE = uic.loadUiType( os.path.join(pluginPath, "ui", "DlgScriptEditor.ui")) class ScriptEditorDialog(BASE, WIDGET): hasChanged = False def __init__(self, filePath=None, parent=None): super(ScriptEditorDialog, self).__init__(parent) self.setupUi(self) QgsGui.instance().enableAutoGeometryRestore(self) self.editor.initLexer() self.searchWidget.setVisible(False) if iface is not None:
QgsExpression, QgsMapLayerProxyModel, QgsProcessingFeatureSourceDefinition, QgsProcessingUtils, QgsProject, QgsVectorLayer, ) from qgis.gui import QgsFieldExpressionWidget from processing.gui.wrappers import WidgetWrapper, DIALOG_STANDARD, DIALOG_MODELER, DIALOG_BATCH from processing.tools import dataobjects from processing.algs.qgis.FieldsMapper import FieldsMapper pluginPath = os.path.dirname(__file__) WIDGET, BASE = uic.loadUiType( os.path.join(pluginPath, 'fieldsmappingpanelbase.ui')) class FieldsMappingModel(QAbstractTableModel): fieldTypes = OrderedDict([ (QVariant.Date, "Date"), (QVariant.DateTime, "DateTime"), (QVariant.Double, "Double"), (QVariant.Int, "Integer"), (QVariant.LongLong, "Integer64"), (QVariant.String, "String"), (QVariant.Bool, "Boolean")]) def __init__(self, parent=None): super(FieldsMappingModel, self).__init__(parent)
/*************************************************************************** * * * This program is free software; you can redistribute it and/or modify * * it under the terms of the GNU General Public License as published by * * the Free Software Foundation; either version 2 of the License, or * * (at your option) any later version. * * * ***************************************************************************/ """ import os from qgis.PyQt import uic from qgis.PyQt import QtWidgets # This loads your .ui file so that PyQt can populate your plugin with the elements from Qt Designer FORM_CLASS, _ = uic.loadUiType(os.path.join( os.path.dirname(__file__), 'SheetMapImporter_dialog_base.ui')) class SheetMapImporterDialog(QtWidgets.QDialog, FORM_CLASS): def __init__(self, parent=None): """Constructor.""" super(SheetMapImporterDialog, 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 self.setupUi(self)
from processing.gui.GeometryPredicateSelectionPanel import GeometryPredicateSelectionPanel from processing.core.parameters import ParameterFile from processing.core.parameters import ParameterRaster from processing.core.parameters import ParameterTable from processing.core.parameters import ParameterVector from processing.core.parameters import ParameterExtent from processing.core.parameters import ParameterCrs from processing.core.parameters import ParameterPoint from processing.core.parameters import ParameterSelection from processing.core.parameters import ParameterFixedTable from processing.core.parameters import ParameterMultipleInput from processing.core.parameters import ParameterGeometryPredicate pluginPath = os.path.split(os.path.dirname(__file__))[0] WIDGET, BASE = uic.loadUiType( os.path.join(pluginPath, 'ui', 'widgetBatchPanel.ui')) class BatchPanel(BASE, WIDGET): PARAMETERS = "PARAMETERS" OUTPUTS = "OUTPUTS" def __init__(self, parent, alg): super(BatchPanel, self).__init__(None) self.setupUi(self) self.wrappers = [] self.btnAdvanced.hide()
/*************************************************************************** * * * This program is free software; you can redistribute it and/or modify * * it under the terms of the GNU General Public License as published by * * the Free Software Foundation; either version 2 of the License, or * * (at your option) any later version. * * * ***************************************************************************/ """ import os from qgis.PyQt import uic from qgis.PyQt.QtGui import QStandardItemModel, QStandardItem from qgis.PyQt.QtXml import QDomDocument, QDomNode WIDGET, BASE = uic.loadUiType( os.path.join(os.path.dirname(__file__), '..', 'ui', 'xml_dialog.ui')) class DomNodeItem(QStandardItem): def __init__(self, node): super(DomNodeItem, self).__init__() self._node = node self.setText(self.getText()) child = node.firstChild() while not child.isNull(): self.appendRow(DomNodeItem(child)) child = child.nextSibling() def getText(self): if self._node.isElement():
from qgis.PyQt.QtPrintSupport import QPrinter from qgis.core import (Qgis, QgsApplication, QgsProcessingAlgorithm, QgsSettings, QgsMessageLog, QgsProcessingUtils, QgsProcessingModelAlgorithm, QgsProcessingModelParameter, QgsProcessingParameterType) from qgis.gui import QgsMessageBar from processing.gui.HelpEditionDialog import HelpEditionDialog from processing.gui.AlgorithmDialog import AlgorithmDialog from processing.modeler.ModelerParameterDefinitionDialog import ModelerParameterDefinitionDialog from processing.modeler.ModelerParametersDialog import ModelerParametersDialog from processing.modeler.ModelerUtils import ModelerUtils from processing.modeler.ModelerScene import ModelerScene from qgis.utils import iface pluginPath = os.path.split(os.path.dirname(__file__))[0] WIDGET, BASE = uic.loadUiType(os.path.join(pluginPath, 'ui', 'DlgModeler.ui')) class ModelerDialog(BASE, WIDGET): ALG_ITEM = 'ALG_ITEM' PROVIDER_ITEM = 'PROVIDER_ITEM' GROUP_ITEM = 'GROUP_ITEM' NAME_ROLE = Qt.UserRole TAG_ROLE = Qt.UserRole + 1 TYPE_ROLE = Qt.UserRole + 2 CANVAS_SIZE = 4000 update_model = pyqtSignal()
# This will get replaced with a git SHA1 when you do a git archive __revision__ = 'ae75e45d80568f3ca9b708ba9b4d449ca0de3e25' import os from qgis.PyQt.QtCore import QSettings from qgis.PyQt.QtGui import QIcon from qgis.PyQt.QtWidgets import QTreeWidgetItem, QMessageBox from qgis.PyQt import uic from qgis.core import QgsDataSourceUri, QgsCredentials from processing.tools.postgis import GeoDB pluginPath = os.path.split(os.path.dirname(__file__))[0] WIDGET, BASE = uic.loadUiType( os.path.join(pluginPath, 'ui', 'DlgPostgisTableSelector.ui')) class PostgisTableSelector(BASE, WIDGET): def __init__(self, parent, tablename): super(PostgisTableSelector, self).__init__(parent) self.connection = None self.table = None self.schema = None self.setupUi(self) settings = QSettings() settings.beginGroup('/PostgreSQL/connections/') names = settings.childGroups() settings.endGroup() for n in names:
from builtins import range # -*- coding: utf-8 -*- # # (c) 2016 Boundless, http://boundlessgeo.com # This code is licensed under the GPL 2.0 license. # import os from qgis.PyQt import uic from qgis.PyQt.QtWidgets import QTableWidgetItem WIDGET, BASE = uic.loadUiType( os.path.join(os.path.dirname(__file__), 'settingswindow.ui')) class SettingsWindow(BASE, WIDGET): def __init__(self, settings): super(SettingsWindow, self).__init__() self.setupUi(self) self.settings = {} self.tableWidget.setRowCount(len(settings)) for i, key in enumerate(settings): self.tableWidget.setItem(i, 0, QTableWidgetItem(key)) self.tableWidget.setItem(i, 1, QTableWidgetItem(settings[key])) self.tableWidget.resizeColumnsToContents() self.tableWidget.horizontalHeader().setStretchLastSection(True) self.buttonBox.accepted.connect(self.okPressed) self.buttonBox.rejected.connect(self.cancelPressed)
QToolButton, QHBoxLayout, QComboBox, QPushButton) from qgis.PyQt.QtGui import (QIcon, QStandardItemModel, QStandardItem) from qgis.gui import (QgsDoubleSpinBox, QgsSpinBox) from qgis.core import NULL from processing.core.ProcessingConfig import (ProcessingConfig, settingsWatcher, Setting) from processing.core.Processing import Processing from processing.gui.DirectorySelectorDialog import DirectorySelectorDialog from processing.gui.menus import defaultMenuEntries, updateMenus from processing.gui.menus import menusSettingsGroup pluginPath = os.path.split(os.path.dirname(__file__))[0] WIDGET, BASE = uic.loadUiType(os.path.join(pluginPath, 'ui', 'DlgConfig.ui')) class ConfigDialog(BASE, WIDGET): def __init__(self, toolbox): super(ConfigDialog, self).__init__(None) self.setupUi(self) self.toolbox = toolbox self.groupIcon = QIcon() self.groupIcon.addPixmap( self.style().standardPixmap(QStyle.SP_DirClosedIcon), QIcon.Normal, QIcon.Off) self.groupIcon.addPixmap( self.style().standardPixmap(QStyle.SP_DirOpenIcon), QIcon.Normal, QIcon.On)
from qgis.PyQt import uic from qgis.PyQt.QtCore import pyqtSlot, QDir from qgis.PyQt.QtGui import QColor, QBrush from qgis.PyQt.QtWidgets import (QTreeWidgetItem, QFileDialog, QMessageBox, QInputDialog, QColorDialog) from qgis.PyQt.QtXml import QDomDocument from qgis.core import QgsApplication, QgsMapLayer from qgis.analysis import QgsRelief from processing.gui.wrappers import WidgetWrapper from processing.tools import system pluginPath = os.path.dirname(__file__) WIDGET, BASE = uic.loadUiType( os.path.join(pluginPath, 'reliefcolorswidgetbase.ui')) class ReliefColorsWidget(BASE, WIDGET): def __init__(self): super(ReliefColorsWidget, self).__init__(None) self.setupUi(self) self.btnAdd.setIcon(QgsApplication.getThemeIcon('/symbologyAdd.svg')) self.btnRemove.setIcon( QgsApplication.getThemeIcon('/symbologyRemove.svg')) self.btnUp.setIcon(QgsApplication.getThemeIcon('/mActionArrowUp.svg')) self.btnDown.setIcon( QgsApplication.getThemeIcon('/mActionArrowDown.svg')) self.btnLoad.setIcon( QgsApplication.getThemeIcon('/mActionFileOpen.svg'))
import html from qgis.PyQt import uic from qgis.PyQt.QtCore import pyqtSignal, Qt, QCoreApplication, QByteArray, QUrl from qgis.PyQt.QtWidgets import QApplication, QDialogButtonBox, QVBoxLayout, QToolButton from qgis.utils import iface from qgis.core import (QgsProject, QgsProcessingFeedback, QgsSettings) from qgis.gui import QgsHelp from processing.core.ProcessingConfig import ProcessingConfig pluginPath = os.path.split(os.path.dirname(__file__))[0] WIDGET, BASE = uic.loadUiType( os.path.join(pluginPath, 'ui', 'DlgAlgorithmBase.ui')) class AlgorithmDialogFeedback(QgsProcessingFeedback): """ Directs algorithm feedback to an algorithm dialog """ error = pyqtSignal(str) progress_text = pyqtSignal(str) info = pyqtSignal(str) command_info = pyqtSignal(str) debug_info = pyqtSignal(str) console_info = pyqtSignal(str) def __init__(self, dialog):
from qgis.core import (QgsProcessingUtils, QgsProcessingParameterDefinition, QgsProcessingParameterRasterLayer, QgsProcessingOutputRasterLayer, QgsProject) from processing.gui.wrappers import WidgetWrapper, DIALOG_STANDARD, DIALOG_BATCH from processing.gui.BatchInputSelectionPanel import BatchInputSelectionPanel from processing.tools import dataobjects from processing.tools.system import userFolder from processing.gui.wrappers import InvalidParameterValue pluginPath = os.path.dirname(__file__) WIDGET_ADD_NEW, BASE_ADD_NEW = uic.loadUiType( os.path.join(pluginPath, 'AddNewExpressionDialog.ui')) class AddNewExpressionDialog(BASE_ADD_NEW, WIDGET_ADD_NEW): def __init__(self, expression): super(AddNewExpressionDialog, self).__init__() self.setupUi(self) self.name = None self.expression = None self.txtExpression.setPlainText(expression) self.buttonBox.rejected.connect(self.cancelPressed) self.buttonBox.accepted.connect(self.okPressed) def cancelPressed(self):
from qgis.PyQt.QtCore import pyqtSignal from qgis.PyQt.QtWidgets import QDialog from qgis.core import (QgsDataSourceUri, QgsCredentials, QgsExpression, QgsRasterLayer, QgsExpressionContextScope) from qgis.gui import QgsEncodingFileDialog, QgsExpressionBuilderDialog from qgis.utils import iface from processing.core.parameters import ParameterNumber, ParameterVector, ParameterRaster from processing.core.outputs import OutputNumber, OutputVector, OutputRaster from processing.modeler.ModelerAlgorithm import ValueFromInput, ValueFromOutput, CompoundValue pluginPath = os.path.split(os.path.dirname(__file__))[0] NUMBER_WIDGET, NUMBER_BASE = uic.loadUiType( os.path.join(pluginPath, 'ui', 'widgetNumberSelector.ui')) WIDGET, BASE = uic.loadUiType( os.path.join(pluginPath, 'ui', 'widgetBaseSelector.ui')) class ModellerNumberInputPanel(BASE, WIDGET): """ Number input panel for use inside the modeller - this input panel is based off the base input panel and includes a text based line input for entering values. This allows expressions and other non-numeric values to be set, which are later evalauted to numbers when the model is run. """ hasChanged = pyqtSignal()
* * ***************************************************************************/ """ import os from qgis.core import QgsProject from qgis.PyQt import uic from qgis.PyQt import QtWidgets from PyQt5 import QtCore from PyQt5.QtCore import QObject, Qt from qgis.utils import iface from qgis.core import QgsLayerTreeLayer, QgsMapLayer, QgsRasterLayer, QgsLayerTreeNode, QgsMapLayer, QgsRaster, QgsRasterBandStats # This loads your .ui file so that PyQt can populate your plugin with the elements from Qt Designer FORM_CLASS, _ = uic.loadUiType(os.path.join( os.path.dirname(__file__), 'adr_plugin_v2_dialog_base.ui')) class adr_pluginDialog(QtWidgets.QDialog, FORM_CLASS): def __init__(self, parent=None): """Constructor.""" super(adr_pluginDialog, 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 self.setupUi(self) self.iface = iface
__date__ = 'January 2015' __copyright__ = '(C) 2015, Arnaud Morvan' # This will get replaced with a git SHA1 when you do a git archive __revision__ = '$Format:%H$' import os from qgis.PyQt import uic from qgis.PyQt.QtWidgets import QCheckBox from qgis.core import Qgis, QgsVectorLayer from processing.core.parameters import ParameterGeometryPredicate pluginPath = os.path.split(os.path.dirname(__file__))[0] WIDGET, BASE = uic.loadUiType( os.path.join(pluginPath, 'ui', 'widgetGeometryPredicateSelector.ui')) class GeometryPredicateSelectionPanel(BASE, WIDGET): unusablePredicates = { Qgis.Point: { Qgis.Point: ('touches', 'crosses'), Qgis.Line: ('equals', 'contains', 'overlaps'), Qgis.Polygon: ('equals', 'contains', 'overlaps') }, Qgis.Line: { Qgis.Point: ('equals', 'within', 'overlaps'), Qgis.Line: [], Qgis.Polygon: ('equals', 'contains', 'overlaps') },
__author__ = 'Victor Olaya' __date__ = 'August 2012' __copyright__ = '(C) 2012, Victor Olaya' # This will get replaced with a git SHA1 when you do a git archive __revision__ = '642e4a48c72fffb191ace1f77a55a386218ec413' import os from qgis.PyQt import uic from qgis.PyQt.QtWidgets import QDialog, QPushButton, QAbstractItemView, QDialogButtonBox from qgis.PyQt.QtGui import QStandardItemModel, QStandardItem pluginPath = os.path.split(os.path.dirname(__file__))[0] WIDGET, BASE = uic.loadUiType( os.path.join(pluginPath, 'ui', 'DlgFixedTable.ui')) class FixedTableDialog(BASE, WIDGET): def __init__(self, param, table): super(FixedTableDialog, self).__init__(None) self.setupUi(self) self.tblView.setSelectionBehavior(QAbstractItemView.SelectRows) self.tblView.setSelectionMode(QAbstractItemView.ExtendedSelection) self.param = param self.rettable = None # Additional buttons
from qgis.PyQt.QtWidgets import (QTreeWidgetItem, QComboBox ) from qgis.core import (QgsApplication, QgsMapLayer, QgsMapLayerProxyModel, QgsWkbTypes ) from qgis.gui import QgsFieldProxyModel from qgis.analysis import QgsInterpolator from processing.gui.wrappers import WidgetWrapper from processing.tools import dataobjects pluginPath = os.path.dirname(__file__) WIDGET, BASE = uic.loadUiType(os.path.join(pluginPath, 'interpolationdatawidgetbase.ui')) class InterpolationDataWidget(BASE, WIDGET): def __init__(self): super(InterpolationDataWidget, self).__init__(None) self.setupUi(self) self.btnAdd.setIcon(QgsApplication.getThemeIcon('/symbologyAdd.svg')) self.btnRemove.setIcon(QgsApplication.getThemeIcon('/symbologyRemove.svg')) self.cmbLayers.setFilters(QgsMapLayerProxyModel.VectorLayer) self.cmbFields.setFilters(QgsFieldProxyModel.Numeric) self.cmbFields.setLayer(self.cmbLayers.currentLayer())
__revision__ = '31d8deab49939b96973ef1ab06ec70d1632cfd6c' import os from qgis.PyQt import uic from qgis.PyQt.QtCore import Qt from qgis.PyQt.QtWidgets import QDialog, QHeaderView, QTableWidgetItem from qgis.core import (QgsProcessingOutputRasterLayer, QgsProcessingOutputVectorLayer) from processing.gui.RenderingStyles import RenderingStyles from processing.gui.RenderingStyleFilePanel import RenderingStyleFilePanel pluginPath = os.path.split(os.path.dirname(__file__))[0] WIDGET, BASE = uic.loadUiType( os.path.join(pluginPath, 'ui', 'DlgRenderingStyles.ui')) class EditRenderingStylesDialog(BASE, WIDGET): def __init__(self, alg): super(EditRenderingStylesDialog, self).__init__(None) self.setupUi(self) self.alg = alg self.tblStyles.horizontalHeader().setSectionResizeMode( QHeaderView.Stretch) self.setWindowTitle(self.alg.displayName()) self.valueItems = {} self.dependentItems = {}
import warnings from qgis.PyQt import uic from qgis.PyQt.QtWidgets import QDialog, QTreeWidgetItem from qgis.core import (Qgis, QgsMessageLog, QgsProcessingUtils, QgsProcessingParameterDefinition, QgsProcessingModelAlgorithm) pluginPath = os.path.split(os.path.dirname(__file__))[0] with warnings.catch_warnings(): warnings.filterwarnings("ignore", category=DeprecationWarning) WIDGET, BASE = uic.loadUiType( os.path.join(pluginPath, 'ui', 'DlgHelpEdition.ui')) class HelpEditionDialog(BASE, WIDGET): ALG_DESC = 'ALG_DESC' ALG_CREATOR = 'ALG_CREATOR' ALG_HELP_CREATOR = 'ALG_HELP_CREATOR' ALG_VERSION = 'ALG_VERSION' SHORT_DESCRIPTION = 'SHORT_DESCRIPTION' HELP_URL = 'HELP_URL' def __init__(self, alg): super(HelpEditionDialog, self).__init__(None) self.setupUi(self)
from processing.gui.BatchOutputSelectionPanel import BatchOutputSelectionPanel from processing.core.parameters import ParameterFile # NOQA from processing.core.parameters import ParameterRaster # NOQA from processing.core.parameters import ParameterTable # NOQA from processing.core.parameters import ParameterVector # NOQA from processing.core.parameters import ParameterExtent # NOQA from processing.core.parameters import ParameterCrs # NOQA from processing.core.parameters import ParameterPoint # NOQA from processing.core.parameters import ParameterSelection # NOQA from processing.core.parameters import ParameterFixedTable # NOQA from processing.core.parameters import ParameterMultipleInput # NOQA from processing.tools import dataobjects pluginPath = os.path.split(os.path.dirname(__file__))[0] WIDGET, BASE = uic.loadUiType( os.path.join(pluginPath, 'ui', 'widgetBatchPanel.ui')) class BatchPanel(BASE, WIDGET): PARAMETERS = "PARAMETERS" OUTPUTS = "OUTPUTS" def __init__(self, parent, alg): super(BatchPanel, self).__init__(None) self.setupUi(self) self.wrappers = [] self.btnAdvanced.hide()
__revision__ = '$Format:%H$' import os from qgis.PyQt import uic from qgis.PyQt.QtCore import Qt from qgis.PyQt.QtWidgets import QDialog, QHeaderView, QTableWidgetItem from processing.gui.RenderingStyles import RenderingStyles from processing.gui.RenderingStyleFilePanel import RenderingStyleFilePanel from processing.core.outputs import OutputRaster from processing.core.outputs import OutputVector pluginPath = os.path.split(os.path.dirname(__file__))[0] WIDGET, BASE = uic.loadUiType( os.path.join(pluginPath, 'ui', 'DlgRenderingStyles.ui')) class EditRenderingStylesDialog(BASE, WIDGET): def __init__(self, alg): super(EditRenderingStylesDialog, self).__init__(None) self.setupUi(self) self.alg = alg.getCopy() self.tblStyles.horizontalHeader().setResizeMode(QHeaderView.Stretch) self.setWindowTitle(self.alg.name) self.valueItems = {} self.dependentItems = {}
------------------- begin : 2017-11-14 git sha : $Format:%H$ copyright : (C) 2017 by Joost Deen email : [email protected] ***************************************************************************/ /*************************************************************************** * * * This program is free software; you can redistribute it and/or modify * * it under the terms of the GNU General Public License as published by * * the Free Software Foundation; either version 2 of the License, or * * (at your option) any later version. * * * ***************************************************************************/ """ import os from qgis.PyQt import uic from qgis.PyQt.QtWidgets import QDialog, QDockWidget FORM_CLASS, _ = uic.loadUiType( os.path.join(os.path.dirname(__file__), 'oiv_base_widget.ui')) class oivBaseWidget(QDockWidget, FORM_CLASS): def __init__(self, parent=None): """Constructor.""" super(oivBaseWidget, self).__init__(parent) self.setupUi(self)
QgsSpinBox, QgsOptionsPageWidget, QgsOptionsDialogHighlightWidget) from qgis.core import NULL, QgsApplication, QgsSettings from qgis.utils import OverrideCursor from processing.core.ProcessingConfig import (ProcessingConfig, settingsWatcher, Setting) from processing.core.Processing import Processing from processing.gui.DirectorySelectorDialog import DirectorySelectorDialog from processing.gui.menus import defaultMenuEntries, menusSettingsGroup pluginPath = os.path.split(os.path.dirname(__file__))[0] WIDGET, BASE = uic.loadUiType( os.path.join(pluginPath, 'ui', 'DlgConfig.ui')) class ConfigOptionsPage(QgsOptionsPageWidget): def __init__(self, parent): super(ConfigOptionsPage, self).__init__(parent) self.config_widget = ConfigDialog(False) layout = QHBoxLayout() layout.setContentsMargins(0, 0, 0, 0) layout.setMargin(0) self.setLayout(layout) layout.addWidget(self.config_widget) self.setObjectName('processingOptions') self.highlightWidget = ProcessingTreeHighlight(self.config_widget) self.registerHighlightWidget(self.highlightWidget)
import os from qgis.PyQt import uic from qgis.PyQt.QtCore import pyqtSlot from qgis.PyQt.QtWidgets import (QTreeWidgetItem, QComboBox) from qgis.core import (QgsApplication, QgsMapLayer, QgsMapLayerProxyModel, QgsWkbTypes, QgsProcessingUtils) from qgis.core import QgsFieldProxyModel from qgis.analysis import QgsInterpolator from processing.gui.wrappers import WidgetWrapper from processing.tools import dataobjects pluginPath = os.path.dirname(__file__) WIDGET, BASE = uic.loadUiType( os.path.join(pluginPath, 'interpolationdatawidgetbase.ui')) class InterpolationDataWidget(BASE, WIDGET): def __init__(self): super(InterpolationDataWidget, self).__init__(None) self.setupUi(self) self.btnAdd.setIcon(QgsApplication.getThemeIcon('/symbologyAdd.svg')) self.btnRemove.setIcon( QgsApplication.getThemeIcon('/symbologyRemove.svg')) self.cmbLayers.setFilters(QgsMapLayerProxyModel.VectorLayer) self.cmbFields.setFilters(QgsFieldProxyModel.Numeric) self.cmbFields.setLayer(self.cmbLayers.currentLayer())
__copyright__ = '(C) 2014, Alexander Bruy' # This will get replaced with a git SHA1 when you do a git archive __revision__ = 'fb28adfb4ad3370a3626a339a267ffae72380896' import os from qgis.PyQt import uic from qgis.PyQt.QtGui import QDesktopServices from qgis.PyQt.QtWidgets import QDockWidget from qgis.utils import iface pluginPath = os.path.split(os.path.dirname(__file__))[0] WIDGET, BASE = uic.loadUiType( os.path.join(pluginPath, 'ui', 'DlgMessage.ui')) class MessageDialog(BASE, WIDGET): def __init__(self): super(MessageDialog, self).__init__(None) self.setupUi(self) self.txtMessage.anchorClicked.connect(self.openLink) def setTitle(self, title): self.setWindowTitle(title) def setMessage(self, message): self.txtMessage.setHtml(message)
__author__ = 'Victor Olaya' __date__ = 'August 2012' __copyright__ = '(C) 2012, Victor Olaya' # This will get replaced with a git SHA1 when you do a git archive __revision__ = '233f25abd929f3621f7dde3a4c03dddb0977e71a' import os from qgis.core import QgsSettings from qgis.PyQt import uic from qgis.PyQt.QtCore import QByteArray from qgis.PyQt.QtWidgets import QDialog, QAbstractItemView, QPushButton, QDialogButtonBox, QFileDialog from qgis.PyQt.QtGui import QStandardItemModel, QStandardItem pluginPath = os.path.split(os.path.dirname(__file__))[0] WIDGET, BASE = uic.loadUiType( os.path.join(pluginPath, 'ui', 'DlgMultipleSelection.ui')) class MultipleFileInputDialog(BASE, WIDGET): def __init__(self, options): super(MultipleFileInputDialog, self).__init__(None) self.setupUi(self) self.lstLayers.setSelectionMode(QAbstractItemView.ExtendedSelection) self.selectedoptions = options # Additional buttons self.btnAdd = QPushButton(self.tr('Add file')) self.buttonBox.addButton(self.btnAdd, QDialogButtonBox.ActionRole) self.btnRemove = QPushButton(self.tr('Remove file(s)'))
from qgiscommons2.gui import execute from geogig.gui.dialogs.geometrydiffviewerdialog import GeometryDiffViewerDialog from geogig.geogigwebapi.diff import FEATURE_MODIFIED, FEATURE_ADDED, FEATURE_REMOVED from geogig.geogigwebapi.commit import Commit MODIFIED, ADDED, REMOVED = "M", "A", "R" layerIcon = QIcon(os.path.join(os.path.dirname(__file__), os.pardir, os.pardir, "ui", "resources", "layer_group.svg")) featureIcon = QIcon(os.path.join(os.path.dirname(__file__), os.pardir, os.pardir, "ui", "resources", "geometry.png")) addedIcon = QIcon(os.path.join(os.path.dirname(__file__), os.pardir, os.pardir, "ui", "resources", "added.png")) removedIcon = QIcon(os.path.join(os.path.dirname(__file__), os.pardir, os.pardir, "ui", "resources", "removed.png")) modifiedIcon = QIcon(os.path.join(os.path.dirname(__file__), os.pardir, os.pardir, "ui", "resources", "modified.gif")) sys.path.append(os.path.dirname(__file__)) pluginPath = os.path.split(os.path.dirname(os.path.dirname(__file__)))[0] WIDGET, BASE = uic.loadUiType( os.path.join(pluginPath, 'ui', 'diffviewerdialog.ui')) class DiffViewerDialog(WIDGET, BASE): def __init__(self, parent, repo, refa, refb): super(DiffViewerDialog, self).__init__(parent, Qt.WindowSystemMenuHint | Qt.WindowTitleHint) self.repo = repo self.setupUi(self) self.setWindowFlags(self.windowFlags() | Qt.WindowSystemMenuHint) self.commit1 = refa self.commit1Panel = RefPanel(self.repo, refa)
QgsProcessingOutputLayerDefinition) from qgis.gui import QgsEncodingFileDialog, QgsGui from qgis.utils import OverrideCursor from processing.core.ProcessingConfig import ProcessingConfig from processing.core.ProcessingLog import ProcessingLog from processing.gui.AlgorithmExecutor import execute from processing.tools import dataobjects from processing.gui.Postprocessing import handleAlgorithmResults from processing.gui.PostgisTableSelector import PostgisTableSelector from processing.gui.ParameterGuiUtils import getFileFilter pluginPath = os.path.dirname(__file__) with warnings.catch_warnings(): warnings.filterwarnings("ignore", category=DeprecationWarning) WIDGET, BASE = uic.loadUiType( os.path.join(pluginPath, 'DlgFieldsCalculator.ui')) class FieldCalculatorFeedback(QgsProcessingFeedback): """ Directs algorithm feedback to an algorithm dialog """ def __init__(self, dialog): QgsProcessingFeedback.__init__(self) self.dialog = dialog def reportError(self, msg, fatalError=False): self.dialog.error(msg)
from qgis.PyQt.QtWidgets import (QTreeWidgetItem, QFileDialog, QMessageBox, QInputDialog, QColorDialog ) from qgis.PyQt.QtXml import QDomDocument from qgis.core import QgsApplication, QgsMapLayer from qgis.analysis import QgsRelief from processing.gui.wrappers import WidgetWrapper from processing.tools import system pluginPath = os.path.dirname(__file__) WIDGET, BASE = uic.loadUiType(os.path.join(pluginPath, 'reliefcolorswidgetbase.ui')) class ReliefColorsWidget(BASE, WIDGET): def __init__(self): super(ReliefColorsWidget, self).__init__(None) self.setupUi(self) self.btnAdd.setIcon(QgsApplication.getThemeIcon('/symbologyAdd.svg')) self.btnRemove.setIcon(QgsApplication.getThemeIcon('/symbologyRemove.svg')) self.btnUp.setIcon(QgsApplication.getThemeIcon('/mActionArrowUp.svg')) self.btnDown.setIcon(QgsApplication.getThemeIcon('/mActionArrowDown.svg')) self.btnLoad.setIcon(QgsApplication.getThemeIcon('/mActionFileOpen.svg')) self.btnSave.setIcon(QgsApplication.getThemeIcon('/mActionFileSave.svg')) self.btnAuto.setIcon(QgsApplication.getThemeIcon('/mActionDraw.svg'))
import warnings from qgis.core import QgsApplication from qgis.gui import QgsGui from qgis.PyQt import uic from qgis.PyQt.QtCore import Qt, QCoreApplication from qgis.PyQt.QtWidgets import QAction, QPushButton, QDialogButtonBox, QStyle, QMessageBox, QFileDialog, QMenu, QTreeWidgetItem from qgis.PyQt.QtGui import QIcon from processing.gui import TestTools from processing.core.ProcessingLog import ProcessingLog, LOG_SEPARATOR pluginPath = os.path.split(os.path.dirname(__file__))[0] with warnings.catch_warnings(): warnings.filterwarnings("ignore", category=DeprecationWarning) WIDGET, BASE = uic.loadUiType( os.path.join(pluginPath, 'ui', 'DlgHistory.ui')) class HistoryDialog(BASE, WIDGET): def __init__(self): super(HistoryDialog, self).__init__(None) self.setupUi(self) QgsGui.instance().enableAutoGeometryRestore(self) self.groupIcon = QgsApplication.getThemeIcon('mIconFolder.svg') self.keyIcon = self.style().standardIcon(QStyle.SP_FileIcon) self.clearButton = QPushButton(self.tr('Clear'))
* begin : 2013-08-14 * copyright : (C) 2013 by Angelos Tzotsos * email : [email protected] This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. """ from builtins import str from qgis.PyQt import QtCore, QtWidgets, uic import os FORM_CLASS, _ = uic.loadUiType(os.path.join( os.path.dirname(__file__), 'ui_dtmovenodebyarea.ui')) class DtMoveNodeByArea_Dialog(QtWidgets.QDialog, FORM_CLASS): unsetTool = QtCore.pyqtSignal() moveNode = QtCore.pyqtSignal() def __init__(self, parent, flags): super().__init__(parent, flags) self.setupUi(self) def initGui(self): pass def writeArea(self, area): self.area_label.setText(str(area)) self.targetArea.setText(str(area))
from qgis.PyQt.QtGui import QIcon from qgis.PyQt.QtWidgets import QAbstractItemView, QDockWidget, QFileDialog, QHeaderView, QMessageBox, QTableWidget, QTableWidgetItem # noqa FIXME: QTableWidget imported but unused from qgis.PyQt.uic import loadUiType from qgis.core import ( Qgis, QgsCoordinateTransform, QgsFeature, QgsField, QgsGeometry, QgsPalLayerSettings, QgsPointXY, QgsProject, QgsVectorLayer, QgsVectorLayerSimpleLabeling ) from qgis.gui import QgsVertexMarker from . import mgrs from . import olc from .LatLon import LatLon from .util import * # noqa FORM_CLASS, _ = loadUiType(os.path.join( os.path.dirname(__file__), 'ui/multiZoomDialog.ui')) LABELS = ['Latitude', 'Longitude', 'Label', 'Data1', 'Data2', 'Data3', 'Data4', 'Data5', 'Data6', 'Data7', 'Data8', 'Data9', 'Data10'] MAXDATA = 10 class MultiZoomWidget(QDockWidget, FORM_CLASS): '''Multizoom Dialog box.''' def __init__(self, lltools, settings, parent): super(MultiZoomWidget, self).__init__(parent) self.setupUi(self) self.settings = settings self.iface = lltools.iface self.canvas = self.iface.mapCanvas()
QMessageBox, QFileDialog, QApplication) from qgis.core import QgsApplication from qgis.utils import iface from processing.gui.AlgorithmDialog import AlgorithmDialog from processing.gui.HelpEditionDialog import HelpEditionDialog from processing.algs.r.RAlgorithm import RAlgorithm from processing.algs.r.RUtils import RUtils from processing.script.ScriptAlgorithm import ScriptAlgorithm from processing.script.ScriptUtils import ScriptUtils pluginPath = os.path.split(os.path.dirname(__file__))[0] WIDGET, BASE = uic.loadUiType( os.path.join(pluginPath, 'ui', 'DlgScriptEditor.ui')) class ScriptEditorDialog(BASE, WIDGET): SCRIPT_PYTHON = 0 SCRIPT_R = 1 hasChanged = False def __init__(self, algType, alg): super(ScriptEditorDialog, self).__init__(None) self.setupUi(self) self.setWindowFlags(Qt.WindowMinimizeButtonHint | Qt.WindowMaximizeButtonHint |
/*************************************************************************** * * * This program is free software; you can redistribute it and/or modify * * it under the terms of the GNU General Public License as published by * * the Free Software Foundation; either version 2 of the License, or * * (at your option) any later version. * * * ***************************************************************************/ """ import os from qgis.PyQt import QtGui, QtWidgets, uic from qgis.PyQt.QtCore import pyqtSignal FORM_CLASS, _ = uic.loadUiType(os.path.join( os.path.dirname(__file__), 'sentinel_mosaic_tester_dockwidget_base.ui')) class SentinelMosaicTesterDockWidget(QtWidgets.QDockWidget, FORM_CLASS): closingPlugin = pyqtSignal() def __init__(self, parent=None): """Constructor.""" super(SentinelMosaicTesterDockWidget, self).__init__(parent) # Set up the user interface from Designer. # After setupUI you can access any designer object by doing # self.<objectname>, and you can use autoconnect slots - see # http://doc.qt.io/qt-5/designer-using-a-ui-file.html # #widgets-and-dialogs-with-auto-connect self.setupUi(self)
QgsProcessingOutputLayerDefinition) from qgis.gui import QgsEncodingFileDialog, QgsGui from qgis.utils import OverrideCursor, iface from processing.core.ProcessingConfig import ProcessingConfig from processing.core.ProcessingLog import ProcessingLog from processing.gui.AlgorithmExecutor import execute from processing.tools import dataobjects from processing.gui.Postprocessing import handleAlgorithmResults from processing.gui.PostgisTableSelector import PostgisTableSelector from processing.gui.ParameterGuiUtils import getFileFilter pluginPath = os.path.dirname(__file__) with warnings.catch_warnings(): warnings.filterwarnings("ignore", category=DeprecationWarning) WIDGET, BASE = uic.loadUiType( os.path.join(pluginPath, 'DlgFieldsCalculator.ui')) class FieldCalculatorFeedback(QgsProcessingFeedback): """ Directs algorithm feedback to an algorithm dialog """ def __init__(self, dialog): QgsProcessingFeedback.__init__(self) self.dialog = dialog def reportError(self, msg, fatalError=False): self.dialog.error(msg)
__revision__ = 'fd8344bcebf607a0e4993380c2a3c210ef7b4fca' import os import warnings from qgis.PyQt import uic from qgis.PyQt.QtCore import pyqtSignal from qgis.PyQt.QtWidgets import QDialog from qgis.core import QgsProcessingParameterNumber pluginPath = os.path.split(os.path.dirname(__file__))[0] with warnings.catch_warnings(): warnings.filterwarnings("ignore", category=DeprecationWarning) WIDGET, BASE = uic.loadUiType( os.path.join(pluginPath, 'ui', 'widgetRangeSelector.ui')) class RangePanel(BASE, WIDGET): hasChanged = pyqtSignal() def __init__(self, param): super(RangePanel, self).__init__(None) self.setupUi(self) self.param = param # Integer or Double range if self.param.dataType() == QgsProcessingParameterNumber.Integer: self.spnMin.setDecimals(0) self.spnMax.setDecimals(0)
__date__ = 'August 2012' __copyright__ = '(C) 2012, Victor Olaya' # This will get replaced with a git SHA1 when you do a git archive __revision__ = '$Format:%H$' import os from qgis.PyQt import uic from qgis.PyQt.QtCore import Qt from qgis.PyQt.QtWidgets import QDialog, QAbstractItemView, QPushButton, QDialogButtonBox from qgis.PyQt.QtGui import QStandardItemModel, QStandardItem pluginPath = os.path.split(os.path.dirname(__file__))[0] WIDGET, BASE = uic.loadUiType( os.path.join(pluginPath, 'ui', 'DlgMultipleSelection.ui')) class MultipleInputDialog(BASE, WIDGET): def __init__(self, options, selectedoptions=None): super(MultipleInputDialog, self).__init__(None) self.setupUi(self) self.lstLayers.setSelectionMode(QAbstractItemView.ExtendedSelection) self.lstLayers.setDragDropMode(QAbstractItemView.InternalMove) self.options = options self.selectedoptions = selectedoptions or [] # Additional buttons
__revision__ = '0319e36c63cc2b30347ec7f9ba382c0743e1d9de' import os import warnings from qgis.PyQt.QtGui import QIcon from qgis.PyQt.QtWidgets import QTreeWidgetItem, QMessageBox from qgis.PyQt import uic from qgis.core import QgsSettings from processing.tools.postgis import GeoDB pluginPath = os.path.split(os.path.dirname(__file__))[0] with warnings.catch_warnings(): warnings.filterwarnings("ignore", category=DeprecationWarning) WIDGET, BASE = uic.loadUiType( os.path.join(pluginPath, 'ui', 'DlgPostgisTableSelector.ui')) class PostgisTableSelector(BASE, WIDGET): def __init__(self, parent, tablename): super(PostgisTableSelector, self).__init__(parent) self.connection = None self.table = None self.schema = None self.setupUi(self) settings = QgsSettings() settings.beginGroup('/PostgreSQL/connections/') names = settings.childGroups() settings.endGroup() for n in names: