Example #1
0
    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))
Example #2
0
 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
Example #3
0
    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))
Example #4
0
 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