def connect_features(self, source, target): """ Connects the source feature with the target feature. @param source: A QgsPointLocator.Match object. Its foreign key will be updated. A dialog will be opened which asks the user for which foreign key(s) he wants to update. @param target: A QgsPointLocator.Match object. This feature will be used as link target. Its obj_id attribute will be used as primary key. """ dlg = QDialog(self.iface.mainWindow()) dlg.setWindowTitle(self.tr('Select properties to connect')) dlg.setLayout(QFormLayout()) properties = list() for prop in self.network_element_sources[source.layer()]['fields']: if 'filter' in prop.keys(): if not prop['filter'](source, target): continue cbx = QCheckBox(prop['name']) cbx.setObjectName(prop['id']) if 'is_checked' in prop.keys(): cbx.setChecked(prop['is_checked'](source, target)) properties.append(cbx) dlg.layout().addWidget(cbx) btn_box = QDialogButtonBox( QDialogButtonBox.Ok | QDialogButtonBox.Cancel) dlg.layout().addWidget(btn_box) btn_box.accepted.connect(dlg.accept) btn_box.rejected.connect(dlg.reject) source_feature = self.get_feature_for_match(source) target_feature = self.get_feature_for_match(target) if dlg.exec_(): for cbx in properties: if cbx.isChecked(): source_feature[cbx.objectName()] = target_feature['obj_id'] if not source.layer().isEditable(): self.iface.messageBar().pushMessage('QGEP', self.tr('Layer "{layername}" is not in edit mode').format( layername=source.layer().name()), Qgis.Warning, 5) elif source.layer().updateFeature(source_feature): self.iface.messageBar().pushMessage('QGEP', self.tr('Connected {} to {}').format( source_feature['identifier'], target_feature['identifier']), Qgis.Info, 5) else: self.iface.messageBar().pushMessage('QGEP', self.tr( 'Error connecting features'), Qgis.Warning, 5) self.reset()
def get_missing_layers(self, dialog, m_layers, critical_level): grl_critical = dialog.findChild(QGridLayout, "grl_critical") grl_others = dialog.findChild(QGridLayout, "grl_others") for pos, item in enumerate(m_layers): try: if not item: continue widget = dialog.findChild(QCheckBox, f"{item['layer']}") # If it is the case that a layer is necessary for two functions, # and the widget has already been put in another iteration if widget: continue label = QLabel() label.setObjectName(f"lbl_{item['layer']}") label.setText( f'<b>{item["layer"]}</b><font size="2";> {item["qgis_message"]}</font>' ) critical_level = int(item['criticity']) if int( item['criticity']) > critical_level else critical_level widget = QCheckBox() widget.setSizePolicy(QSizePolicy.Fixed, QSizePolicy.Fixed) widget.setObjectName(f"{item['layer']}") if int(item['criticity']) == 3: grl_critical.addWidget(label, pos, 0) grl_critical.addWidget(widget, pos, 1) else: grl_others.addWidget(label, pos, 0) grl_others.addWidget(widget, pos, 1) except KeyError: description = "Key on returned json from ddbb is missed" self.controller.manage_exception(None, description) return critical_level
def construct_form_param_user(self, row, pos): widget = None for field in row[pos]['fields']: if field['label']: lbl = QLabel() lbl.setObjectName('lbl' + field['widgetname']) lbl.setText(field['label']) lbl.setMinimumSize(160, 0) lbl.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Preferred) lbl.setToolTip(field['tooltip']) chk = QCheckBox() chk.setObjectName('chk_' + field['widgetname']) if field['checked'] == "True": chk.setChecked(True) elif field['checked'] == "False": chk.setChecked(False) chk.setSizePolicy(QSizePolicy.Fixed, QSizePolicy.Fixed) if field['widgettype'] == 'text' or field[ 'widgettype'] == 'linetext': widget = QLineEdit() widget.setText(field['value']) widget.editingFinished.connect( partial(self.get_values_changed_param_user, chk, widget, field)) widget.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Fixed) elif field['widgettype'] == 'textarea': widget = QTextEdit() widget.setText(field['value']) widget.editingFinished.connect( partial(self.get_values_changed_param_user, chk, widget, field)) widget.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Fixed) elif field['widgettype'] == 'combo': widget = QComboBox() self.populate_combo(widget, field) widget.currentIndexChanged.connect( partial(self.get_values_changed_param_user, chk, widget, field)) widget.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Fixed) elif field['widgettype'] == 'check': widget = chk widget.stateChanged.connect( partial(self.get_values_changed_param_user, chk, chk, field)) widget.setSizePolicy(QSizePolicy.Fixed, QSizePolicy.Fixed) elif field['widgettype'] == 'datepickertime': widget = QDateEdit() widget.setCalendarPopup(True) date = QDate.fromString(field['value'], 'yyyy/MM/dd') widget.setDate(date) widget.dateChanged.connect( partial(self.get_values_changed_param_user, chk, widget, field)) widget.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Fixed) elif field['widgettype'] == 'spinbox': widget = QDoubleSpinBox() if 'value' in field and field['value'] is not None: value = float(str(field['value'])) widget.setValue(value) widget.valueChanged.connect( partial(self.get_values_changed_param_user, chk, widget, field)) widget.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Fixed) else: pass widget.setObjectName(field['widgetname']) # Set signals chk.stateChanged.connect( partial(self.get_values_checked_param_user, chk, widget, field)) if field['layout_id'] == 1: self.order_widgets(field, self.basic_form, lbl, chk, widget) elif field['layout_id'] == 2: self.order_widgets(field, self.om_form, lbl, chk, widget) elif field['layout_id'] == 3: self.order_widgets(field, self.workcat_form, lbl, chk, widget) elif field['layout_id'] == 4: self.order_widgets(field, self.mapzones_form, lbl, chk, widget) elif field['layout_id'] == 5: self.order_widgets(field, self.cad_form, lbl, chk, widget) elif field['layout_id'] == 6: self.order_widgets(field, self.epa_form, lbl, chk, widget) elif field['layout_id'] == 7: self.order_widgets(field, self.masterplan_form, lbl, chk, widget) elif field['layout_id'] == 8: self.order_widgets(field, self.other_form, lbl, chk, widget) elif field['layout_id'] == 9: self.order_widgets(field, self.node_type_form, lbl, chk, widget) elif field['layout_id'] == 10: self.order_widgets(field, self.cat_form, lbl, chk, widget) elif field['layout_id'] == 11: self.order_widgets(field, self.utils_form, lbl, chk, widget) elif field['layout_id'] == 12: self.order_widgets(field, self.connec_form, lbl, chk, widget) elif field['layout_id'] == 13: self.order_widgets(field, self.topology_form, lbl, chk, widget) elif field['layout_id'] == 14: self.order_widgets(field, self.builder_form, lbl, chk, widget) elif field['layout_id'] == 15: self.order_widgets(field, self.review_form, lbl, chk, widget) elif field['layout_id'] == 16: self.order_widgets(field, self.analysis_form, lbl, chk, widget) elif field['layout_id'] == 17: self.order_widgets(field, self.system_form, lbl, chk, widget) elif field['layout_id'] == 18: self.order_widgets(field, self.node_mantype_form, lbl, chk, widget) elif field['layout_id'] == 19: self.order_widgets(field, self.arc_mantype_form, lbl, chk, widget) elif field['layout_id'] == 20: self.order_widgets(field, self.connec_mantype_form, lbl, chk, widget) elif field['layout_id'] == 21: self.order_widgets(field, self.gully_mantype_form, lbl, chk, widget) elif field['layout_id'] == 22: self.order_widgets(field, self.addfields_form, lbl, chk, widget)
def construct_form_param_user(self, row, pos): widget = None for field in row[pos]['fields']: if field['label']: lbl = QLabel() lbl.setObjectName('lbl' + field['widgetname']) lbl.setText(field['label']) lbl.setMinimumSize(160, 0) lbl.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Preferred) lbl.setToolTip(field['tooltip']) chk = QCheckBox() chk.setObjectName('chk_' + field['widgetname']) if field['checked'] in ('true', 'True', 'TRUE', True): chk.setChecked(True) elif field['checked'] in ('false', 'False', 'FALSE', False): chk.setChecked(False) chk.setSizePolicy(QSizePolicy.Fixed, QSizePolicy.Fixed) if field['widgettype'] == 'text' or field[ 'widgettype'] == 'linetext' or field[ 'widgettype'] == 'typeahead': widget = QLineEdit() widget.setText(field['value']) widget.editingFinished.connect( partial(self.get_values_changed_param_user, chk, widget, field)) widget.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Fixed) if field['widgettype'] == 'typeahead': completer = QCompleter() if 'dv_querytext' in field or 'dv_querytext_filterc' in field: widget.setProperty('typeahead', True) model = QStringListModel() widget.textChanged.connect( partial(self.populate_typeahead, completer, model, field, self.dlg_config, widget)) elif field['widgettype'] == 'textarea': widget = QTextEdit() widget.setText(field['value']) widget.editingFinished.connect( partial(self.get_values_changed_param_user, chk, widget, field)) widget.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Fixed) elif field['widgettype'] == 'combo': widget = QComboBox() self.populate_combo(widget, field) widget.currentIndexChanged.connect( partial(self.get_values_changed_param_user, chk, widget, field)) widget.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Fixed) elif field['widgettype'] == 'check': widget = chk widget.stateChanged.connect( partial(self.get_values_changed_param_user, chk, chk, field)) widget.setSizePolicy(QSizePolicy.Fixed, QSizePolicy.Fixed) elif field['widgettype'] == 'datetime': widget = QgsDateTimeEdit() widget.setAllowNull(True) widget.setCalendarPopup(True) widget.setDisplayFormat('dd/MM/yyyy') if field['value']: field['value'] = field['value'].replace('/', '-') date = QDate.fromString(field['value'], 'yyyy-MM-dd') if date: widget.setDate(date) else: widget.clear() widget.dateChanged.connect( partial(self.get_values_changed_param_user, chk, widget, field)) widget.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Fixed) elif field['widgettype'] == 'spinbox': widget = QDoubleSpinBox() if 'value' in field and field['value'] is not None: value = float(str(field['value'])) widget.setValue(value) widget.valueChanged.connect( partial(self.get_values_changed_param_user, chk, widget, field)) widget.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Fixed) else: pass widget.setObjectName(field['widgetname']) # Set signals chk.stateChanged.connect( partial(self.get_values_checked_param_user, chk, widget, field)) if field['layoutname'] == 'lyt_basic': self.order_widgets(field, self.basic_form, lbl, chk, widget) elif field['layoutname'] == 'lyt_om': self.order_widgets(field, self.om_form, lbl, chk, widget) elif field['layoutname'] == 'lyt_inventory': self.order_widgets(field, self.inventory_form, lbl, chk, widget) elif field['layoutname'] == 'lyt_mapzones': self.order_widgets(field, self.mapzones_form, lbl, chk, widget) elif field['layoutname'] == 'lyt_edit': self.order_widgets(field, self.cad_form, lbl, chk, widget) elif field['layoutname'] == 'lyt_epa': self.order_widgets(field, self.epa_form, lbl, chk, widget) elif field['layoutname'] == 'lyt_masterplan': self.order_widgets(field, self.masterplan_form, lbl, chk, widget) elif field['layoutname'] == 'lyt_other': self.order_widgets(field, self.other_form, lbl, chk, widget) elif field['layoutname'] == 'lyt_node_vdef': self.order_widgets(field, self.node_type_form, lbl, chk, widget) elif field['layoutname'] == 'lyt_arc_vdef': self.order_widgets(field, self.cat_form, lbl, chk, widget) elif field['layoutname'] == 'lyt_utils_vdef': self.order_widgets(field, self.utils_form, lbl, chk, widget) elif field['layoutname'] == 'lyt_connec_vdef': self.order_widgets(field, self.connec_form, lbl, chk, widget) elif field['layoutname'] == 'lyt_gully_vdef': self.order_widgets(field, self.gully_form, lbl, chk, widget) elif field['layoutname'] == 'lyt_fluid_type': self.order_widgets(field, self.fluid_type_form, lbl, chk, widget) elif field['layoutname'] == 'lyt_location_type': self.order_widgets(field, self.location_type_form, lbl, chk, widget) elif field['layoutname'] == 'lyt_category_type': self.order_widgets(field, self.category_type_form, lbl, chk, widget) elif field['layoutname'] == 'lyt_function_type': self.order_widgets(field, self.function_type_form, lbl, chk, widget) elif field['layoutname'] == 'lyt_addfields': self.order_widgets(field, self.addfields_form, lbl, chk, widget)
class GwConfigButton(GwAction): """ Button 99: Config """ def __init__(self, icon_path, action_name, text, toolbar, action_group): super().__init__(icon_path, action_name, text, toolbar, action_group) def clicked_event(self): self._open_config() # region private functions def _open_config(self): # Get user cur_user = tools_db.get_current_user() self.list_update = [] # Get visible layers name from TOC result = self._get_layers_name() self.dlg_config = GwConfigUi() tools_gw.load_settings(self.dlg_config) # Call function gw_fct_getconfig and get json_result body = tools_gw.create_body(form='"formName":"config"', extras=result) json_result = tools_gw.execute_procedure('gw_fct_getconfig', body) if not json_result or json_result['status'] == 'Failed': return False # Construct form for config and admin # User self._build_dialog_options(json_result['body']['form']['formTabs'][0], 'user') # System self._build_dialog_options(json_result['body']['form']['formTabs'][1], 'system') # Event on change from combo parent self._get_event_combo_parent(json_result['body']['form']['formTabs']) tools_qt.hide_void_groupbox(self.dlg_config) # Check user/role and remove tabs role_admin = tools_db.check_role_user("role_admin", cur_user) if not role_admin: tools_qt.remove_tab(self.dlg_config.tab_main, "tab_admin") # Set Listeners self.dlg_config.btn_accept.clicked.connect(partial( self._update_values)) self.dlg_config.key_escape.connect( partial(tools_gw.close_dialog, self.dlg_config)) self.dlg_config.btn_cancel.clicked.connect( partial(tools_gw.close_dialog, self.dlg_config)) self.dlg_config.dlg_closed.connect( partial(tools_gw.save_settings, self.dlg_config)) # Open form tools_gw.open_dialog(self.dlg_config, dlg_name='config') def _get_layers_name(self): """ Returns the name of all the layers visible in the TOC, then populate the cad_combo_layers """ layers = self.iface.mapCanvas().layers() if not layers: return layers_name = '"list_layers_name":"{' tables_name = '"list_tables_name":"{' for layer in layers: # Check for query layer and/or bad layer if not tools_qgis.check_query_layer(layer): continue layers_name += f"{layer.name()}, " tables_name += f"{tools_qgis.get_layer_source_table_name(layer)}, " result = layers_name[:-2] + '}", ' + tables_name[:-2] + '}"' return result def _get_event_combo_parent(self, row): for field in row[0]["fields"]: if field['isparent']: widget = self.dlg_config.findChild(QComboBox, field['widgetname']) if widget: widget.currentIndexChanged.connect( partial(tools_gw.fill_child, self.dlg_config, widget, 'config')) def _update_values(self): my_json = json.dumps(self.list_update) extras = f'"fields":{my_json}' body = tools_gw.create_body(form='"formName":"config"', extras=extras) json_result = tools_gw.execute_procedure('gw_fct_setconfig', body, log_sql=True) if not json_result or json_result['status'] == 'Failed': return False # Update current_workspace label (status bar) tools_gw.manage_current_selections_docker(json_result) message = "Values has been updated" tools_qgis.show_info(message) # Close dialog tools_gw.close_dialog(self.dlg_config) def _build_dialog_options(self, row, tab): self.tab = tab for field in row['fields']: try: widget = None self.chk = None if field['label']: lbl = QLabel() lbl.setObjectName('lbl' + field['widgetname']) lbl.setText(field['label']) lbl.setMinimumSize(160, 0) lbl.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Preferred) lbl.setToolTip(field['tooltip']) if self.tab == 'user': self.chk = QCheckBox() self.chk.setObjectName('chk_' + field['widgetname']) if field['checked'] in ('true', 'True', 'TRUE', True): self.chk.setChecked(True) elif field['checked'] in ('false', 'False', 'FALSE', False): self.chk.setChecked(False) self.chk.setSizePolicy(QSizePolicy.Fixed, QSizePolicy.Fixed) if field['widgettype'] in ('text', 'linetext', 'typeahead'): widget = QLineEdit() widget.setText(field['value']) widget.editingFinished.connect( partial(self._get_dialog_changed_values, widget, self.tab, self.chk)) widget.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Fixed) if field['widgettype'] == 'typeahead': completer = QCompleter() if 'dv_querytext' in field: widget.setProperty('typeahead', True) model = QStringListModel() widget.textChanged.connect( partial(self.populate_typeahead, completer, model, field, self.dlg_config, widget)) elif field['widgettype'] == 'textarea': widget = QTextEdit() widget.setText(field['value']) widget.editingFinished.connect( partial(self._get_dialog_changed_values, widget, self.tab, self.chk)) widget.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Fixed) elif field['widgettype'] == 'combo': widget = QComboBox() self._fill_combo(widget, field) widget.currentIndexChanged.connect( partial(self._get_dialog_changed_values, widget, self.tab, self.chk)) widget.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Fixed) elif field['widgettype'] == 'check': self.chk = QCheckBox() self.chk.setObjectName(field['widgetname']) if self.tab == 'user' and field['checked'] in ( 'true', 'True', 'TRUE', True): self.chk.setChecked(True) elif self.tab == 'user' and field['checked'] in ( 'false', 'False', 'FALSE', False): self.chk.setChecked(False) elif field['value'] in ('true', 'True', 'TRUE', True): self.chk.setChecked(True) elif field['value'] in ('false', 'False', 'FALSE', False): self.chk.setChecked(False) self.chk.setSizePolicy(QSizePolicy.Fixed, QSizePolicy.Fixed) self.chk.stateChanged.connect( partial(self._get_dialog_changed_values, self.chk, self.tab, self.chk)) elif field['widgettype'] == 'datetime': widget = QgsDateTimeEdit() widget.setAllowNull(True) widget.setCalendarPopup(True) widget.setDisplayFormat('dd/MM/yyyy') if global_vars.date_format in ("dd/MM/yyyy", "dd-MM-yyyy", "yyyy/MM/dd", "yyyy-MM-dd"): widget.setDisplayFormat(global_vars.date_format) if field['value']: field['value'] = field['value'].replace('/', '-') date = QDate.fromString(field['value'], 'yyyy-MM-dd') if date: widget.setDate(date) else: widget.clear() widget.valueChanged.connect( partial(self._get_dialog_changed_values, widget, self.tab, self.chk)) widget.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Fixed) elif field['widgettype'] == 'spinbox': widget = QDoubleSpinBox() if 'value' in field and field['value'] is not None: value = float(str(field['value'])) widget.setValue(value) widget.valueChanged.connect( partial(self._get_dialog_changed_values, widget, self.tab, self.chk)) widget.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Fixed) if widget: widget.setObjectName(field['widgetname']) # Set signals if self.tab == 'user' and widget is not None: self.chk.stateChanged.connect( partial(self._get_dialog_changed_values, widget, self.tab, self.chk)) if widget is None: widget = self.chk self._order_widgets(field, lbl, widget) except Exception as e: msg = f"{type(e).__name__} {e}. widgetname='{field['widgetname']}' AND widgettype='{field['widgettype']}'" tools_qgis.show_message(msg, 2) def populate_typeahead(self, completer, model, field, dialog, widget): if not widget: return extras = f'"queryText":"{field["dv_querytext"]}"' extras += f', "queryTextFilter":"{field["dv_querytext_filterc"]}"' extras += f', "textToSearch":"{tools_qt.get_text(dialog, widget)}"' body = tools_gw.create_body(extras=extras) complet_list = tools_gw.execute_procedure('gw_fct_gettypeahead', body) if not complet_list: return False list_items = [] for field in complet_list['body']['data']: list_items.append(field['idval']) tools_qt.set_completer_object(completer, model, widget, list_items) def _check_child_to_parent(self, widget_child, widget_parent): if widget_child.isChecked(): widget_parent.setChecked(True) def _check_parent_to_child(self, widget_parent, widget_child): if not widget_parent.isChecked(): widget_child.setChecked(False) def _fill_combo(self, widget, field): # Generate list of items to add into combo widget.blockSignals(True) widget.clear() widget.blockSignals(False) combolist = [] if 'comboIds' in field: for i in range(0, len(field['comboIds'])): if field['comboIds'][i] is not None and field['comboNames'][ i] is not None: elem = [field['comboIds'][i], field['comboNames'][i]] combolist.append(elem) records_sorted = sorted(combolist, key=operator.itemgetter(1)) # Populate combo for record in records_sorted: widget.addItem(record[1], record) if 'value' in field: if str(field['value']) != 'None': tools_qt.set_combo_value(widget, field['value'], 0) def _get_dialog_changed_values(self, widget, tab, chk): value = None elem = {} if type(widget) is QLineEdit: value = tools_qt.get_text(self.dlg_config, widget, return_string_null=False) elem['widget_type'] = 'text' elif type(widget) is QComboBox: value = tools_qt.get_combo_value(self.dlg_config, widget, 0) elem['widget_type'] = 'combo' elif type(widget) is QCheckBox: value = tools_qt.is_checked(self.dlg_config, widget) elem['widget_type'] = 'check' elif type(widget) is QDateEdit: value = tools_qt.get_calendar_date(self.dlg_config, widget) elem['widget_type'] = 'datetime' elif type(widget) is QgsDateTimeEdit: value = tools_qt.get_calendar_date(self.dlg_config, widget) elem['widget_type'] = 'datetime' elif type(widget) is QDoubleSpinBox: value = tools_qt.get_text(self.dlg_config, widget, return_string_null=False) elem['widget'] = str(widget.objectName()) elem['value'] = value if tab == 'user': elem['isChecked'] = str(tools_qt.is_checked(self.dlg_config, chk)) elem['chk'] = str(chk.objectName()) else: elem['isChecked'] = '' elem['chk'] = '' elem['sysRoleId'] = 'role_admin' self.list_update.append(elem) def _get_values_checked_param_user(self, chk, widget, value=None): elem = {} elem['widget'] = str(widget.objectName()) elem['chk'] = str(chk.objectName()) if type(widget) is QLineEdit: value = tools_qt.get_text(self.dlg_config, widget, return_string_null=False) elem['widget_type'] = 'text' elif type(widget) is QComboBox: value = tools_qt.get_combo_value(self.dlg_config, widget, 0) elem['widget_type'] = 'combo' elif type(widget) is QCheckBox: value = tools_qt.is_checked(self.dlg_config, chk) elem['widget_type'] = 'check' elif type(widget) is QDateEdit: value = tools_qt.get_calendar_date(self.dlg_config, widget) elem['widget_type'] = 'datetime' elif type(widget) is QgsDateTimeEdit: value = tools_qt.get_calendar_date(self.dlg_config, widget) elem['widget_type'] = 'datetime' elem['isChecked'] = str(tools_qt.is_checked(self.dlg_config, chk)) elem['value'] = value self.list_update.append(elem) def _order_widgets(self, field, lbl, widget): layout = self.dlg_config.tab_main.findChild(QGridLayout, field['layoutname']) if layout is not None and field['layoutorder'] is not None: layout.addWidget(lbl, field['layoutorder'], 0) if field['widgettype'] == 'checkbox' or field[ 'widgettype'] == 'check': layout.addWidget(widget, field['layoutorder'], 1) elif self.tab == 'user': layout.addWidget(self.chk, field['layoutorder'], 1) layout.addWidget(widget, field['layoutorder'], 2) else: layout.addWidget(widget, field['layoutorder'], 2)
class Ui_form1(object): def setupUi(self, form1): form1.setObjectName(_fromUtf8("form1")) form1.resize(400, 253) form1.setFocusPolicy(QtCore.Qt.TabFocus) form1.setWindowTitle(_fromUtf8("Kuwahara filter")) icon = QtGui.QIcon() icon.addPixmap(QtGui.QPixmap(_fromUtf8(":/qgis.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off) form1.setWindowIcon(icon) self.label = QLabel(form1) self.label.setGeometry(QtCore.QRect(21, 10, 111, 20)) font = QtGui.QFont() font.setPointSize(10) self.label.setFont(font) self.label.setToolTip(_fromUtf8("")) self.label.setObjectName(_fromUtf8("label")) self.outputb = QPushButton(form1) self.outputb.setGeometry(QtCore.QRect(320, 47, 31, 23)) self.outputb.setObjectName(_fromUtf8("outputb")) self.label_2 = QLabel(form1) self.label_2.setGeometry(QtCore.QRect(22, 49, 101, 20)) font = QtGui.QFont() font.setPointSize(10) self.label_2.setFont(font) self.label_2.setToolTip(_fromUtf8("")) self.label_2.setObjectName(_fromUtf8("label_2")) self.progressBar = QProgressBar(form1) self.progressBar.setGeometry(QtCore.QRect(19, 220, 361, 23)) self.progressBar.setProperty(_fromUtf8("value"), 24) self.progressBar.setObjectName(_fromUtf8("progressBar")) self.label_3 = QLabel(form1) self.label_3.setGeometry(QtCore.QRect(22, 88, 131, 20)) font = QtGui.QFont() font.setPointSize(10) self.label_3.setFont(font) self.label_3.setObjectName(_fromUtf8("label_3")) self.label_4 = QLabel(form1) self.label_4.setGeometry(QtCore.QRect(21, 125, 181, 20)) font = QtGui.QFont() font.setPointSize(10) self.label_4.setFont(font) self.label_4.setObjectName(_fromUtf8("label_4")) self.run = QPushButton(form1) self.run.setGeometry(QtCore.QRect(139, 185, 101, 23)) self.run.setObjectName(_fromUtf8("run")) self.inputbox = QgsMapLayerComboBox(form1) self.inputbox.setGeometry(QtCore.QRect(141, 10, 170, 22)) self.inputbox.setObjectName(_fromUtf8("input")) self.output = QLineEdit(form1) self.output.setGeometry(QtCore.QRect(149, 45, 160, 28)) self.output.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignVCenter) self.output.setObjectName(_fromUtf8("output")) self.refb = QLineEdit(form1) self.refb.setGeometry(QtCore.QRect(149, 82, 160, 28)) self.refb.setObjectName(_fromUtf8("refb")) self.mem = QLineEdit(form1) self.mem.setGeometry(QtCore.QRect(208, 120, 101, 28)) self.mem.setObjectName(_fromUtf8("mem")) self.addout = QCheckBox(form1) self.addout.setGeometry(QtCore.QRect(100, 158, 171, 17)) self.addout.setChecked(True) self.addout.setObjectName(_fromUtf8("checkBox")) self.inputb = QPushButton(form1) self.inputb.setGeometry(QtCore.QRect(320, 10, 31, 23)) self.inputb.setObjectName(_fromUtf8("inputb")) self.retranslateUi(form1) self.setWindowFlags(QtCore.Qt.WindowFlags(QtCore.Qt.WindowMinimizeButtonHint | QtCore.Qt.WindowMaximizeButtonHint | QtCore.Qt.WindowCloseButtonHint)) QtCore.QMetaObject.connectSlotsByName(form1) def retranslateUi(self, form1): self.label.setText(QtCore.QCoreApplication.translate("form1", "Input raster")) self.outputb.setText("...") self.label_2.setText(QApplication.translate("form1", "Output raster")) self.label_3.setToolTip(QApplication.translate("form1", "Reference band from which variances will be calculated to choose subwindow mean.")) self.label_3.setText(QApplication.translate("form1", "Reference band")) self.label_4.setToolTip(QApplication.translate("form1", "Maximum memory usage in megabytes (it is an approximated value, since algorithm will only choose how many lines will be read at once).")) self.label_4.setText(QApplication.translate("form1", "Max memory usage (MB)")) self.run.setText(QApplication.translate("form1", "Run")) self.output.setPlaceholderText(QApplication.translate("form1", "<temporary file>")) self.refb.setToolTip(QApplication.translate("form1", "Reference band from which variances will be calculated to choose subwindow mean.")) self.refb.setText("1") self.mem.setToolTip(QApplication.translate("form1", "Maximum memory usage in MeB (it is an approximated value, since algorithm will only choose how many lines will be read at once).")) self.mem.setText("100") self.addout.setText(QApplication.translate("form1", "Add results to project")) self.inputb.setText("...")
def _create_widget(cls, c, parent, host=None): chb = QCheckBox(parent) chb.setObjectName('{0}_{1}'.format(cls._TYPE_PREFIX, c.name)) return chb