def set_from(self, project): hydraulics_options = project.options.hydraulics ui.convenience.set_combo(self.cboFlow, hydraulics_options.flow_units) ui.convenience.set_combo( self.cboHeadloss, hydraulics_options.head_loss.name.replace('_', "-")) self.txtAccuracy.setText(str(hydraulics_options.accuracy)) self.txtCheckFrequency.setText(str(hydraulics_options.check_frequency)) self.txtDampLimit.setText(str(hydraulics_options.damp_limit)) self.txtDefaultPattern.setText(str(hydraulics_options.default_pattern)) self.txtDemandMultiplier.setText( str(hydraulics_options.demand_multiplier)) self.txtEmitterExponent.setText( str(hydraulics_options.emitter_exponent)) self.txtMaxCheck.setText(str(hydraulics_options.max_check)) self.txtMaximumTrials.setText(str(hydraulics_options.maximum_trials)) self.txtRelativeViscosity.setText(str(hydraulics_options.viscosity)) self.txtSpecificGravity.setText( str(hydraulics_options.specific_gravity)) if hydraulics_options.unbalanced == core.epanet.options.hydraulics.Unbalanced.STOP: self.rbnStop.setChecked(True) if hydraulics_options.unbalanced == core.epanet.options.hydraulics.Unbalanced.CONTINUE: val, val_is_good = ParseData.intTryParse( hydraulics_options.unbalanced_continue) if not val_is_good: val = 0 if val == 0: self.rbnContinue.setChecked(True) elif val > 0: self.rbnContinueN.setChecked(True) self.txtContinueN.setText(str(hydraulics_options.unbalanced_continue))
def tbl_3_changed(self, row, col): if not self.loaded: return if self.tbl_3.verticalHeaderItem(row) is None: return item = self.tbl_3.item(row, col) if item is None: return key = self.tbl_3.verticalHeaderItem(row).text() if "flow units" in key.lower() or \ "headloss" in key.lower() or \ "unbalanced" in key.lower() or \ "status report" in key.lower(): # do nothing pass elif "maximum trials" in key.lower() or \ "default pattern" in key.lower() or \ "check freq" in key.lower() or \ "max check" in key.lower(): val, val_is_good = ParseData.intTryParse(item.text()) if val_is_good: self.defaults.parameters_values[key] = val else: val, val_is_good = ParseData.floatTryParse(item.text()) if val_is_good: self.defaults.parameters_values[key] = val self.parameter_changed = True pass
def set_from(self, project): # section = core.swmm.options.dynamic_wave.DynamicWave() section = project.options.dynamic_wave if section.inertial_damping == core.swmm.options.dynamic_wave.InertialDamping.PARTIAL: self.cboInertial.setCurrentIndex(1) if section.inertial_damping == core.swmm.options.dynamic_wave.InertialDamping.FULL: self.cboInertial.setCurrentIndex(2) if section.inertial_damping == core.swmm.options.dynamic_wave.InertialDamping.NONE: self.cboInertial.setCurrentIndex(0) if section.force_main_equation == core.swmm.options.dynamic_wave.ForceMainEquation.H_W: self.cboForce.setCurrentIndex(0) if section.force_main_equation == core.swmm.options.dynamic_wave.ForceMainEquation.D_W: self.cboForce.setCurrentIndex(1) if section.normal_flow_limited == core.swmm.options.dynamic_wave.NormalFlowLimited.SLOPE: self.cboNormal.setCurrentIndex(0) if section.normal_flow_limited == core.swmm.options.dynamic_wave.NormalFlowLimited.FROUDE: self.cboNormal.setCurrentIndex(1) if section.normal_flow_limited == core.swmm.options.dynamic_wave.NormalFlowLimited.BOTH: self.cboNormal.setCurrentIndex(2) val, val_is_good = ParseData.intTryParse(section.threads) if val_is_good: self.cboThreads.setCurrentIndex(val - 1) if float(section.variable_step) > 0: self.cbxUseVariable.setChecked(True) self.sbxAdjusted.setValue(float(section.variable_step) * 100) self.txtMinimum.setText(str(section.minimum_step)) self.txtLengthening.setText(str(section.lengthening_step)) self.txtSurfaceArea.setText(str(section.min_surface_area)) self.txtTolerance.setText(str(section.head_tolerance)) self.sbxTrials.setValue(int(section.max_trials))
def tblGeneric_changed(self, row, col): if not self.loaded: return if self.tblGeneric.verticalHeaderItem(row) is None: return item = self.tblGeneric.item(row, col) if item is None: return key = self.tblGeneric.verticalHeaderItem(row).text() if key == self.defaults.id_increment_key: val, val_is_good = ParseData.intTryParse(item.text()) if val_is_good: self.defaults.id_increment = val else: self.defaults.model_object_prefix[key] = item.text() self.label_changed = True pass