def __init__(self, dataset, plot_type, plot_title, window_icon, x_title, y_title): """ Constructor Args: dataset: time series data as pandas data frame """ QMainWindow.__init__(self) self.helper = HelpHandler(self) self.setupUi(self) self.setWindowIcon(window_icon) self.actionPrint.setVisible(False) self.actionSave.setVisible(False) self.actionCopy.setVisible(False) self.menuFile.setEnabled(False) self.menuFile.setVisible(False) self.menuFile.deleteLater() self.dataset = dataset self.plot_title = plot_title self.x_title = x_title self.y_title = y_title if plot_type == 'time': self.plot_type = 'timeseries' self.help_topic = "swmm/src/src/timeserieseditordialog.htm" elif plot_type == 'xy': self.plot_type = 'xy' self.help_topic = "swmm/src/src/transecteditordialog.htm" elif plot_type == 'step': self.plot_type = 'step' self.help_topic = '' # TODO # self.plot = CurvePlot(self.fraPlot, width=6, height=2, dpi=100) # layout = QVBoxLayout(self.fraPlot) # layout.setContentsMargins(0, 0, 0, 0) # layout.addWidget(self.plot) # self.fraPlot.setLayout(layout) self.helper = HelpHandler(self) self.Xunits = {} self.Yunits = {} self.Xlabel = "" self.Ylabel = "" self.Xunit = "" self.Yunit = "" self.TXT_OPEN_CURVE_TITLE = 'Open a Curve' self.TXT_SAVE_CURVE_TITLE = 'Save Curve As' self.TXT_CURVE_FILTER = 'Curve files (*.CRV)|*.CRV|All files|*.*' self.xvals = [] self.yvals = [] self.btnClose.clicked.connect(self.frm_close) self.btnHelp.clicked.connect(self.get_help) self.actionOpen.triggered.connect(self.open_datafile) self.actionCopy.triggered.connect(self.copy_plot) self.actionSave.triggered.connect(self.save_plot) self.actionPrint.triggered.connect(self.print_plot) # self.installEventFilter(self) self.do_plot()
def __init__(self, main_form): QMainWindow.__init__(self, main_form) self.helper = HelpHandler(self) self.help_topic = "swmm/src/src/viewingastatisticsreport.htm" self.helper = HelpHandler(self) self.setupUi(self) self.cmdCancel.clicked.connect(self.cmdCancel_Clicked) # self.set_from(parent.project) self._main_form = main_form self.stats = None self.statsResult = None #UStats.TStatsResults()
def __init__(self, main_form, calibrate_against, node_id): QtGui.QMainWindow.__init__(self, main_form) self.helper = HelpHandler(self) self.help_topic = "epanet/src/src/Cali0078.htm" self.setupUi(self) # QtCore.QObject.connect(self.cmdOK, QtCore.SIGNAL("clicked()"), self.cmdOK_Clicked) QtCore.QObject.connect(self.cmdCancel, QtCore.SIGNAL("clicked()"), self.cmdCancel_Clicked) # self.set_from(parent.project) # do after init to set control type CONTROLS or RULES self.setWindowTitle('EPANET Calibration Report - ' + calibrate_against) self._main_form = main_form heading = ' Calibration Statistics for ' + calibrate_against + '\n' \ + '\n' \ + ' Num Observed Computed Mean RMS' + '\n' \ + ' Location Obs Mean Mean Error Error' + '\n' \ + ' ---------------------------------------------------------' + '\n' \ + ' 11 9 0.64 148.43 147.794 154.996' + '\n' \ + ' ---------------------------------------------------------' + '\n' \ + ' Network 9 0.64 148.43 147.794 154.996' + '\n' \ + '\n' \ + ' Correlation Between Means: -1.452' self.txtStatistics.setReadOnly(True) self.txtStatistics.setText(heading) # correlation plot tab correlation_plot = MyPlot(self.widgetPlot, width=6, height=2, dpi=100) self.setParent(self._main_form) self.widgetPlot = correlation_plot # mean comparisons tab mean_plot = MyPlot(self.widgetMean, width=6, height=2, dpi=100) self.setParent(self._main_form) self.widgetMean = mean_plot
def __init__(self, main_form=None): QMainWindow.__init__(self, main_form) self.setupUi(self) self.helper = HelpHandler(self) if main_form.model == "SWMM": self.help_topic = "swmm/src/src/settingprogrampreferences.htm" elif main_form.model == "EPANET": self.help_topic = "epanet/src/src/setting_.htm" self.local_subcatch_preferences = {} self.local_node_preferences = {} self.local_link_preferences = {} self.cmdOK.clicked.connect(self.cmdOK_Clicked) self.cmdCancel.clicked.connect(self.cmdCancel_Clicked) self._main_form = main_form self.set_from(main_form.project) self.icon = main_form.windowIcon() self.cboSubcatchment.currentIndexChanged.connect( self.cboSubcatchment_currentIndexChanged) self.cboNode.currentIndexChanged.connect( self.cboNode_currentIndexChanged) self.cboLink.currentIndexChanged.connect( self.cboLink_currentIndexChanged) self.spnSubcatchment.valueChanged.connect( self.spnSubcatchment_valueChanged) self.spnNode.valueChanged.connect(self.spnNode_valueChanged) self.spnLink.valueChanged.connect(self.spnLink_valueChanged)
def __init__(self, session, project): QMainWindow.__init__(self, session) self.helper = HelpHandler(self) self.help_topic = "swmm/src/src/Submitti.htm" self.setupUi(self) self.session = session self.project = project self.selected_objects = {} self.model_attributes = {} self.model_attributes["subcatchment"] = ["Area", "Width", "% Slope", "% Impervious", "% LID Usage"] self.model_attributes["node"] = ["Invert"] self.model_attributes["link"] = ["Max. Depth", "Roughness", "% Slope"] self.model_attributes["lid"] = ["Any LIDs", "Bio-Retention Cell", "Rain Garden", "Green Roof", "Infiltration Trench", "Permeable Pavement", "Rain Barrel", "Rooftop Disconnected", "Vegetative Swale"] self.model_attributes["inflow_node"] = ["Direct Inflow", "DW Inflow", "RDII Inflow", "GW Inflow"] self.cboFind.currentIndexChanged.connect(self.cboFind_Changed) self.cboFind.addItem('Find Subcatchments with') self.cboFind.addItem('Find Nodes with') self.cboFind.addItem('Find Links with') self.cboFind.addItem('Find Subcatchments with LID') self.cboFind.addItem('Find Nodes with Inflow') self.cboAbove.addItem('Below') self.cboAbove.addItem('Equal To') self.cboAbove.addItem('Above') self.cmdSubmit.clicked.connect(self.cmdSubmit_Clicked)
def __init__(self, main_form, subcatchment_name): QMainWindow.__init__(self, main_form) self.helper = HelpHandler(self) self.help_topic = "swmm/src/src/lidgroupeditor.htm" self.units = main_form.project.options.flow_units.value self.setupUi(self) self.cmdOK.clicked.connect(self.cmdOK_Clicked) self.cmdCancel.clicked.connect(self.cmdCancel_Clicked) self.btnAdd.clicked.connect(self.btnAdd_Clicked) self.btnEdit.clicked.connect(self.btnEdit_Clicked) self.btnDelete.clicked.connect(self.btnDelete_Clicked) self._main_form = main_form # set for first subcatchment for now self.subcatchment_name = subcatchment_name self.set_subcatchment(main_form.project, subcatchment_name) if (main_form.program_settings.value("Geometry/" + "frmLIDControls_geometry") and main_form.program_settings.value("Geometry/" + "frmLIDControls_state")): self.restoreGeometry( main_form.program_settings.value("Geometry/" + "frmLIDControls_geometry", self.geometry(), type=QtCore.QByteArray)) self.restoreState( main_form.program_settings.value("Geometry/" + "frmLIDControls_state", self.windowState(), type=QtCore.QByteArray))
def __init__(self, main_form, subcatchment_name): QMainWindow.__init__(self, main_form) self.helper = HelpHandler(self) self.help_topic = "swmm/src/src/groundwater_equation_editor.htm" self._main_form = main_form self.setupUi(self) self.subcatchment_name = subcatchment_name self.cmdOK.clicked.connect(self.cmdOK_Clicked) self.cmdCancel.clicked.connect(self.cmdCancel_Clicked) self.set_from(main_form.project) if (main_form.program_settings.value( "Geometry/" + "frmGroundwaterEquationDeep_geometry") and main_form.program_settings.value( "Geometry/" + "frmGroundwaterEquationDeep_state")): self.restoreGeometry( main_form.program_settings.value( "Geometry/" + "frmGroundwaterEquationDeep_geometry", self.geometry(), type=QtCore.QByteArray)) self.restoreState( main_form.program_settings.value( "Geometry/" + "frmGroundwaterEquationDeep_state", self.windowState(), type=QtCore.QByteArray))
def __init__(self, main_form, edit_these, new_item, title): QMainWindow.__init__(self, main_form) self.helper = HelpHandler(self) self.help_topic = "swmm/src/src/groundwaterfloweditordialog.htm" self._main_form = main_form self.project = main_form.project self.new_item = new_item self.refresh_column = -1 self.setupUi(self) self.setWindowTitle(title) self.cmdOK.clicked.connect(self.cmdOK_Clicked) self.cmdCancel.clicked.connect(self.cmdCancel_Clicked) self.backend = PropertyEditorBackend(self.tblGeneric, self.lblNotes, main_form, edit_these, new_item) for column in range(0, self.tblGeneric.columnCount()): # for aquifers, show available aquifers aquifer_section = main_form.project.find_section("AQUIFERS") aquifer_list = aquifer_section.value[0:] combobox = QComboBox() combobox.addItem('') selected_index = 0 for value in aquifer_list: combobox.addItem(value.name) if edit_these[column].aquifer == value.name: selected_index = int(combobox.count()) - 1 combobox.setCurrentIndex(selected_index) self.tblGeneric.setCellWidget(1, column, combobox) # also set special text plus button cells self.set_lateral_equation(column) self.set_deep_equation(column) self.installEventFilter(self)
def __init__(self, session): self.session = session QMainWindow.__init__(self, session) self.helper = HelpHandler(self) self.help_topic = "swmm/src/src/timeseriesplotdialog.htm" self.setupUi(self) self.rbnDate.clicked.connect(self.rbnDate_Clicked) self.rbnElapsed.clicked.connect(self.rbnDate_Clicked) self.cmdOK.clicked.connect(self.cmdOK_Clicked) self.cmdCancel.clicked.connect(self.cmdCancel_Clicked) self.btnAdd.clicked.connect(self.btnAdd_Clicked) self.btnRemove.clicked.connect(self.btnRemove_Clicked) self.btnSave.clicked.connect(self.save_file) self.btnLoad.clicked.connect(self.load_file) self.btnScript.clicked.connect(self.save_script) self.cboStart.currentIndexChanged.connect( self.cboStart_currentIndexChanged) self.cboEnd.currentIndexChanged.connect( self.cboEnd_currentIndexChanged) self._main_form = session if (self._main_form.program_settings.value( "Geometry/" + "frmTimeSeriesPlot_geometry") and self._main_form.program_settings.value( "Geometry/" + "frmTimeSeriesPlot_state")): self.restoreGeometry( self._main_form.program_settings.value( "Geometry/" + "frmTimeSeriesPlot_geometry", self.geometry(), type=QtCore.QByteArray)) self.restoreState( self._main_form.program_settings.value( "Geometry/" + "frmTimeSeriesPlot_state", self.windowState(), type=QtCore.QByteArray))
def __init__(self, main_form): QtGui.QMainWindow.__init__(self, main_form) self.helper = HelpHandler(self) self.help_topic = "epanet/src/src/Energy_R.htm" self.setupUi(self) QtCore.QObject.connect(self.cmdCancel, QtCore.SIGNAL("clicked()"), self.cmdCancel_Clicked) QtCore.QObject.connect(self.rbnUtilization, QtCore.SIGNAL("clicked()"), self.rbnUtilization_Clicked) QtCore.QObject.connect(self.rbnAverageKw, QtCore.SIGNAL("clicked()"), self.rbnAverageKw_Clicked) QtCore.QObject.connect(self.rbnCost, QtCore.SIGNAL("clicked()"), self.rbnCost_Clicked) QtCore.QObject.connect(self.rbnEfficiency, QtCore.SIGNAL("clicked()"), self.rbnEfficiency_Clicked) QtCore.QObject.connect(self.rbnKwHr, QtCore.SIGNAL("clicked()"), self.rbnKwHr_Clicked) QtCore.QObject.connect(self.rbnPeakKw, QtCore.SIGNAL("clicked()"), self.rbnPeakKw_Clicked) self._main_form = main_form self.labels = [] self.utilization_values = [] self.efficiency_values = [] self.kw_values = [] self.average_kw_values = [] self.peak_kw_values = [] self.cost_values = []
def __init__(self, main_form=None, *args): QDialog.__init__(self) self.helper = HelpHandler(self) if main_form.model == "SWMM": self.help_topic = "swmm/src/src/mapdimensionsdialog.htm" elif main_form.model == "EPANET": self.help_topic = "epanet/src/src/Map_Dime.htm" self.ui = Ui_frmMapDimensionsDesigner() self.ui.setupUi(self) self.session = main_form self.icon = main_form.windowIcon() self.map_widget = self.session.map_widget self.options = None if args is not None and len(args) > 0: self.options = args[0] self.ui.rdoUnitDegrees.toggled.connect(self.changeLinearMapUnit) self.ui.rdoUnitNone.toggled.connect(self.changeLinearMapUnit) self.ui.rdoUnitFeet.toggled.connect(self.changeLinearMapUnit) self.ui.rdoUnitMeters.toggled.connect(self.changeLinearMapUnit) self.ui.txtLLx.textChanged.connect( lambda: self.checkCoords(self.ui.txtLLx.text())) self.ui.txtLLy.textChanged.connect( lambda: self.checkCoords(self.ui.txtLLy.text())) self.ui.txtURx.textChanged.connect( lambda: self.checkCoords(self.ui.txtURx.text())) self.ui.txtURy.textChanged.connect( lambda: self.checkCoords(self.ui.txtURy.text())) self.ui.btnAutoSize.clicked.connect(self.autoSetMapDimensions) self.ui.buttonBox.accepted.connect(self.setExtent) self.ui.btnHelp.clicked.connect(self.show_help) self.setupOptions()
def __init__(self, main_form): QMainWindow.__init__(self, main_form) self.helper = HelpHandler(self) self.help_topic = "swmm/src/src/viewing_a_summary_report.htm" self.setupUi(self) self.cmdCancel.clicked.connect(self.cmdCancel_Clicked) # self.set_from(parent.project) # do after init to set control type CONTROLS or RULES self._main_form = main_form self.label.setVisible( False) # since sorting seems buggy, take this off for now self.tblSummary.setSortingEnabled(False) self.cboType.currentIndexChanged.connect( self.cboType_currentIndexChanged) self.tblSummary.setSortingEnabled(False) if (main_form.program_settings.value("Geometry/" + "frmSummaryReport_geometry") and main_form.program_settings.value("Geometry/" + "frmSummaryReport_state")): self.restoreGeometry( main_form.program_settings.value("Geometry/" + "frmSummaryReport_geometry", self.geometry(), type=QtCore.QByteArray)) self.restoreState( main_form.program_settings.value("Geometry/" + "frmSummaryReport_state", self.windowState(), type=QtCore.QByteArray))
def get_editor(self, edit_name): frm = None # First handle special cases where forms need more than simply being created if edit_name == self.tree_quality_Pollutants[0]: edit_these = [] if self.project and self.project.pollutants: if not isinstance(self.project.pollutants.value, basestring): if isinstance(self.project.pollutants.value, list): edit_these.extend(self.project.pollutants.value) if len(edit_these) == 0: new_item = Pollutant() new_item.name = "NewPollutant" edit_these.append(new_item) self.project.pollutants.value = edit_these frm = frmGenericPropertyEditor(self, edit_these, "SWMM Pollutant Editor") frm.helper = HelpHandler(frm) frm.help_topic = "swmm/src/src/pollutanteditordialog.htm" elif edit_name in [item[0] for item in self.tree_items_using_id]: # in these cases the click on the tree diagram populates the lower left list, not directly to an editor return None # the following items will respond to a click on a conduit form, not the tree diagram # elif edit_name == tree_links_Conduits[0]: # frm = frmCrossSection(self) # the following items will respond to a click on a node form, not the tree diagram # elif edit_name == "Outfalls" or edit_name == "Dividers" or edit_name == "Storage Units": # frm = frmInflows(self) else: # General-purpose case finds most editors from tree information frm = self.make_editor_from_tree(edit_name, self.tree_top_items) return frm
def make_editor_from_tree(self, search_for, tree_list): for tree_item in tree_list: if search_for == tree_item[ 0]: # If we found a matching tree item, return its editor if len(tree_item) > 0 and tree_item[1] and not (type( tree_item[1]) is list): args = [self] if len(tree_item) > 2: # We recommend this is a list, but if not, try to treat it as a single argument if isinstance(tree_item[2], basestring) or not isinstance( tree_item[2], list): args.append(str(tree_item[2])) else: # tree_item[2] is a list that is not a string args.extend(tree_item[2]) edit_form = tree_item[1]( *args ) # Create editor with first argument self, other args from tree_item edit_form.helper = HelpHandler(edit_form) return edit_form return None if len(tree_item) > 0 and type( tree_item[1] ) is list: # find whether there is a match in this sub-tree edit_form = self.make_editor_from_tree(search_for, tree_item[1]) if edit_form: return edit_form
def __init__(self, main_form=None): QMainWindow.__init__(self, main_form) self.helper = HelpHandler(self) self.help_topic = "swmm/src/src/lidusageeditor.htm" self.units = main_form.project.options.flow_units.value self.setupUi(self) self._main_form = main_form self.cmdOK.clicked.connect(self.cmdOK_Clicked) self.cmdCancel.clicked.connect(self.cmdCancel_Clicked) self.cboLIDControl.currentIndexChanged.connect(self.cboLIDControl_currentIndexChanged) self.spxUnits.valueChanged.connect(self.spxUnits_valueChanged) self.txtArea.textChanged.connect(self.txtArea_textChanged) self.cbxFull.stateChanged.connect(self.cbxFull_stateChanged) self.btnFile.clicked.connect(self.btnFile_clicked) self.btnClear.clicked.connect(self.btnClear_clicked) # self.set_from(parent.parent.project) self.subcatchment_name = '' self.row_id = -1 self.project = '' if (main_form.program_settings.value("Geometry/" + "frmLIDUsage_geometry") and main_form.program_settings.value("Geometry/" + "frmLIDUsage_state")): self.restoreGeometry(main_form.program_settings.value("Geometry/" + "frmLIDUsage_geometry", self.geometry(), type=QtCore.QByteArray)) self.restoreState(main_form.program_settings.value("Geometry/" + "frmLIDUsage_state", self.windowState(), type=QtCore.QByteArray))
def __init__(self, main_form, project, output): QtGui.QMainWindow.__init__(self, main_form) self.loaded = False self.helper = HelpHandler(self) self.help_topic = "epanet/src/src/Crea0079.htm" self.setupUi(self) QtCore.QObject.connect(self.cmdOK, QtCore.SIGNAL("clicked()"), self.cmdOK_Clicked) QtCore.QObject.connect(self.cmdCancel, QtCore.SIGNAL("clicked()"), self.cmdCancel_Clicked) QtCore.QObject.connect(self.listWidget, QtCore.SIGNAL("itemClicked(QListWidgetItem *)"), \ self.listWidget_clicked) self.project = project self.output = output # limit what shows up in the combo box to only those with calibration data self.comboBox.addItems( ['Demand', 'Head', 'Pressure', 'Quality', 'Flow', 'Velocity']) self._main_form = main_form self.listWidget.setSelectionMode( QtGui.QAbstractItemView.MultiSelection) #self.listWidget.setItemSelected(self.listWidget.item(0),True) self.currentECaliType = None self.selected_nodes = [] self.selected_pipes = [] self.isFlow = None self.set_from(project) QtCore.QObject.connect(self.comboBox, QtCore.SIGNAL("currentIndexChanged(int)"), \ self.comboBox_selChanged) self.loaded = True
def __init__(self, main_form, title, curve_type, edit_these, new_item): QMainWindow.__init__(self, main_form) self.helper = HelpHandler(self) self.help_topic = "swmm/src/src/curveeditordialog.htm" self.setupUi(self) if title: self.setWindowTitle(title) self.cboCurveType.clear() ui.convenience.set_combo_items(core.swmm.curves.CurveType, self.cboCurveType) self.cmdOK.clicked.connect(self.cmdOK_Clicked) self.cmdCancel.clicked.connect(self.cmdCancel_Clicked) self.btnSave.clicked.connect(self.save_curve_data) self.btnLoad.clicked.connect(self.load_curve_data) self.btnHelp.clicked.connect(self.show_help) self.btnView.clicked.connect(self.btnView_Clicked) # self.cboCurveType.clicked.connect(self.cboCurveType_currentIndexChanged) self.cboCurveType.currentIndexChanged.connect( self.cboCurveType_currentIndexChanged) # self.set_from(main_form.project) # do after init to set curve type self._main_form = main_form self.curve_type = curve_type self.project = main_form.project self.section = self.project.curves self.X = [] self.Y = [] self.new_item = new_item if new_item: self.set_from(new_item) elif edit_these: if isinstance(edit_these, list): # edit first transect if given a list self.set_from(edit_these[0]) else: self.set_from(edit_these)
def __init__(self, main_form): QMainWindow.__init__(self, main_form) self._main_form = main_form self.helper = HelpHandler(self) self.help_topic = "swmm/src/src/scatterplotdialog.htm" self.setupUi(self) self.cmdOK.clicked.connect(self.cmdOK_Clicked) self.cmdCancel.clicked.connect(self.cmdCancel_Clicked) self.cboStart.currentIndexChanged.connect( self.cboStart_currentIndexChanged) self.cboEnd.currentIndexChanged.connect( self.cboEnd_currentIndexChanged) self.cboXCat.currentIndexChanged.connect( self.cboXCat_currentIndexChanged) self.cboYCat.currentIndexChanged.connect( self.cboYCat_currentIndexChanged) if (main_form.program_settings.value("Geometry/" + "frmScatterPlot_geometry") and main_form.program_settings.value("Geometry/" + "frmScatterPlot_state")): self.restoreGeometry( main_form.program_settings.value("Geometry/" + "frmScatterPlot_geometry", self.geometry(), type=QtCore.QByteArray)) self.restoreState( main_form.program_settings.value("Geometry/" + "frmScatterPlot_state", self.windowState(), type=QtCore.QByteArray))
def __init__(self, parent, edit_these, new_item, title, **kwargs): QtGui.QMainWindow.__init__(self, parent) self.helper = HelpHandler(self) option_section = parent.project.find_section('OPTIONS') if option_section.infiltration=="HORTON" or option_section.infiltration=="MODIFIED_HORTON": self.help_topic = "swmm/src/src/hortoninfiltrationparameters.htm" elif option_section.infiltration=="GREEN_AMPT" or option_section.infiltration=="MODIFIED_GREEN_AMPT": self.help_topic = "swmm/src/src/green_amptinfiltrationparame.htm" elif option_section.infiltration=="CURVE_NUMBER": self.help_topic = "swmm/src/src/curvenumberinfiltrationpara.htm" self.setupUi(self) self.setWindowTitle(title) QtCore.QObject.connect(self.cmdOK, QtCore.SIGNAL("clicked()"), self.cmdOK_Clicked) QtCore.QObject.connect(self.cmdCancel, QtCore.SIGNAL("clicked()"), self.cmdCancel_Clicked) QtCore.QObject.connect(self.cboInfilModel, QtCore.SIGNAL("currentIndexChanged(int)"), self.cboInfilModel_currentIndexChanged) self.defaults = None if kwargs.has_key("defaults"): self.defaults = kwargs["defaults"] enum_val = E_InfilModel.HORTON if self.defaults is not None: enum_val = E_InfilModel[self.defaults.properties_sub_values[self.defaults.infil_model_key]] # self.infil_model = self.qsettings.value(self.default_key, None) # if self.infil_model is None: # self.infil_model = HortonInfiltration() # self.infil_model.set_defaults() # else: # enum_val = self.infil_model.model_type() # if enum_val == E_InfilModel.HORTON or \ # enum_val == E_InfilModel.MODIFIED_HORTON: # self.infil_model_horton.__dict__.update(self.infil_model.__dict__) # elif enum_val == E_InfilModel.GREEN_AMPT or \ # enum_val == E_InfilModel.MODIFIED_GREEN_AMPT: # self.infil_model_ga.__dict__.update(self.infil_model.__dict__) # elif enum_val == E_InfilModel.CURVE_NUMBER: # self.infil_model_cn.__dict__.update(self.infil_model.__dict__) self.cboInfilModel.setEnabled(True) if self.lblNotes: self.tblGeneric.currentCellChanged.connect(self.table_currentCellChanged) self.tblGeneric.itemChanged.connect(self.table_itemChanged) pass else: self.backend = PropertyEditorBackend(self.tblGeneric, self.lblNotes, parent, edit_these, new_item) #self.lblTop.setText("Infiltration Method: " + parent.project.find_section('OPTIONS').infiltration) proj_infilmodel = parent.project.find_section('OPTIONS').infiltration enum_val = E_InfilModel[proj_infilmodel.upper()] self.cboInfilModel.setEnabled(False) set_combo_items(type(enum_val), self.cboInfilModel) set_combo(self.cboInfilModel, enum_val) self.corner_label = QtGui.QLabel("Property", self.tblGeneric) self.corner_label.setAlignment(QtCore.Qt.AlignCenter) self.corner_label.setAttribute(QtCore.Qt.WA_TransparentForMouseEvents) QtCore.QObject.connect(self.tblGeneric.verticalHeader(), QtCore.SIGNAL("geometriesChanged()"), self.resizeCorner) QtCore.QObject.connect(self.tblGeneric.horizontalHeader(), QtCore.SIGNAL("geometriesChanged()"), self.resizeCorner)
def __init__(self, main_form): self._main_form = main_form QtGui.QMainWindow.__init__(self, main_form) self.helper = HelpHandler(self) self.help_topic = "swmm/src/src/timeseriesplotdialog.htm" self.setupUi(self) QtCore.QObject.connect(self.rbnDate, QtCore.SIGNAL("clicked()"), self.rbnDate_Clicked) QtCore.QObject.connect(self.rbnElapsed, QtCore.SIGNAL("clicked()"), self.rbnDate_Clicked) QtCore.QObject.connect(self.cmdOK, QtCore.SIGNAL("clicked()"), self.cmdOK_Clicked) QtCore.QObject.connect(self.cmdCancel, QtCore.SIGNAL("clicked()"), self.cmdCancel_Clicked) QtCore.QObject.connect(self.btnAdd, QtCore.SIGNAL("clicked()"), self.btnAdd_Clicked) QtCore.QObject.connect(self.btnRemove, QtCore.SIGNAL("clicked()"), self.btnRemove_Clicked) QtCore.QObject.connect(self.btnSave, QtCore.SIGNAL("clicked()"), self.save_file) QtCore.QObject.connect(self.btnLoad, QtCore.SIGNAL("clicked()"), self.load_file) QtCore.QObject.connect(self.btnScript, QtCore.SIGNAL("clicked()"), self.save_script) self.cboStart.currentIndexChanged.connect( self.cboStart_currentIndexChanged) self.cboEnd.currentIndexChanged.connect( self.cboEnd_currentIndexChanged)
def __init__(self, main_form, subcatchment_name): # purposely not calling frmGenericPropertyEditor.__init__ QMainWindow.__init__(self, main_form) self.helper = HelpHandler(self) self.help_topic = "swmm/src/src/initialbuildupeditor.htm" self.units = main_form.project.options.flow_units.value self.setupUi(self) self.subcatchment_name = subcatchment_name self.cmdOK.clicked.connect(self.cmdOK_Clicked) self.cmdCancel.clicked.connect(self.cmdCancel_Clicked) self.setWindowTitle('SWMM Initial Buildup Editor for Subcatchment ' + subcatchment_name) self.lblNotes.setText( "Enter initial buildup of pollutants on Subcatchment " + subcatchment_name) self.tblGeneric.setColumnCount(1) local_column_list = [] if self.units < 4: local_column_list.append('Initial Buildup (lbs/ac)') else: local_column_list.append('Initial Buildup (kg/ha)') self.tblGeneric.setHorizontalHeaderLabels(local_column_list) self.tblGeneric.setColumnWidth(0, 200) self.local_pollutant_list = [] pollutants_section = main_form.project.find_section("POLLUTANTS") row_count = 0 for value in pollutants_section.value: row_count += 1 self.local_pollutant_list.append(value.name) self.tblGeneric.setRowCount(row_count) self.tblGeneric.setVerticalHeaderLabels(self.local_pollutant_list) self.resize(300, 300) section = main_form.project.find_section("LOADINGS") loadings_list = section.value[0:] pollutant_count = -1 for pollutant in self.local_pollutant_list: pollutant_count += 1 for loading in loadings_list: if loading.subcatchment_name == subcatchment_name and loading.pollutant_name == pollutant: led = QLineEdit(str(loading.initial_buildup)) self.tblGeneric.setItem(pollutant_count, 0, QTableWidgetItem(led.text())) self._main_form = main_form if (main_form.program_settings.value("Geometry/" + "frmInitialBuildup_geometry") and main_form.program_settings.value("Geometry/" + "frmInitialBuildup_state")): self.restoreGeometry( main_form.program_settings.value("Geometry/" + "frmInitialBuildup_geometry", self.geometry(), type=QtCore.QByteArray)) self.restoreState( main_form.program_settings.value("Geometry/" + "frmInitialBuildup_state", self.windowState(), type=QtCore.QByteArray))
def __init__(self, main_form=None): QMainWindow.__init__(self, main_form) self.helper = HelpHandler(self) self.help_topic = "swmm/src/src/projectmenu.htm" self.setupUi(self) self._main_form = main_form self.lstCategory.clicked.connect(self.display_section) self.lstCategory.currentItemChanged.connect(self.display_section) self.set_from(main_form.project)
def __init__(self, main_form=None): QMainWindow.__init__(self, main_form) self.helper = HelpHandler(self) self.help_topic = "swmm/src/src/projectmenu.htm" self.setupUi(self) self.cmdOK.clicked.connect(self.cmdOK_Clicked) self.cmdCancel.clicked.connect(self.cmdCancel_Clicked) self.set_from(main_form.project) self._main_form = main_form
def __init__(self, main_form): QMainWindow.__init__(self, main_form) self.helper = HelpHandler(self) self.help_topic = "swmm/src/src/viewingastatisticsreport.htm" self.helper = HelpHandler(self) self.setupUi(self) self.cmdCancel.clicked.connect(self.cmdCancel_Clicked) # self.set_from(parent.project) self._main_form = main_form self.stats = None self.statsResult = None #UStats.TStatsResults() if (main_form.program_settings.value("Geometry/" + "frmStatisticsReport_geometry") and main_form.program_settings.value("Geometry/" + "frmStatisticsReport_state")): self.restoreGeometry(main_form.program_settings.value("Geometry/" + "frmStatisticsReport_geometry", self.geometry(), type=QtCore.QByteArray)) self.restoreState(main_form.program_settings.value("Geometry/" + "frmStatisticsReport_state", self.windowState(), type=QtCore.QByteArray))
def __init__(self, main_form): QtGui.QMainWindow.__init__(self, main_form) self.helper = HelpHandler(self) self.help_topic = "epanet/src/src/Energy_R.htm" self.setupUi(self) QtCore.QObject.connect(self.cmdCancel, QtCore.SIGNAL("clicked()"), self.cmdCancel_Clicked) # self.set_from(parent.project) # do after init to set control type CONTROLS or RULES self._main_form = main_form
def __init__(self, main_form, subcatchment_name): QMainWindow.__init__(self, main_form) self.helper = HelpHandler(self) self.help_topic = "swmm/src/src/groundwater_equation_editor.htm" self._main_form = main_form self.setupUi(self) self.subcatchment_name = subcatchment_name self.cmdOK.clicked.connect(self.cmdOK_Clicked) self.cmdCancel.clicked.connect(self.cmdCancel_Clicked) self.set_from(main_form.project)
def __init__(self, main_form=None): QMainWindow.__init__(self, main_form) self.helper = HelpHandler(self) self.help_topic = "epanet/src/src/Source_Q.htm" self.setupUi(self) self.cmdOK.clicked.connect(self.cmdOK_Clicked) self.cmdCancel.clicked.connect(self.cmdCancel_Clicked) # self.set_from(parent.project) self._main_form = main_form self.node_name = ''
def __init__(self, main_form, node_name): # purposely not calling frmGenericPropertyEditor.__init__ QMainWindow.__init__(self, main_form) self.helper = HelpHandler(self) self.help_topic = "swmm/src/src/green_amptinfiltrationparame.htm" self.setupUi(self) self.node_name = node_name self.cmdOK.clicked.connect(self.cmdOK_Clicked) self.cmdCancel.clicked.connect(self.cmdCancel_Clicked) self.setWindowTitle('Storage Seepage Editor for Node ' + node_name) self.section = main_form.project.find_section("STORAGE") self.storage_nodes_list = self.section.value[0:] self.tblGeneric.horizontalHeader().hide() self.tblGeneric.setRowCount(3) self.tblGeneric.setColumnCount(1) props = [] props.append('Suction Head') props.append('Conductivity') props.append('Initial Deficit') self.tblGeneric.setVerticalHeaderLabels(props) found = False for storage_node in self.storage_nodes_list: if storage_node.name == node_name: found = True led = QLineEdit(str(storage_node.seepage_suction_head)) self.tblGeneric.setItem(-1, 1, QTableWidgetItem(led.text())) led = QLineEdit(str(storage_node.seepage_hydraulic_conductivity)) self.tblGeneric.setItem(0, 1, QTableWidgetItem(led.text())) led = QLineEdit(str(storage_node.seepage_initial_moisture_deficit)) self.tblGeneric.setItem(1, 1, QTableWidgetItem(led.text())) if not found: led = QLineEdit(str(0)) self.tblGeneric.setItem(-1, 1, QTableWidgetItem(led.text())) led = QLineEdit(str(1)) self.tblGeneric.setItem(0, 1, QTableWidgetItem(led.text())) led = QLineEdit(str(2)) self.tblGeneric.setItem(1, 1, QTableWidgetItem(led.text())) if self.lblNotes: self.tblGeneric.currentCellChanged.connect(self.table_currentCellChanged) # ## Soil capillary suction head (in or mm) # self.seepage_suction_head = '0' # # ## Soil saturated hydraulic conductivity (in/hr or mm/hr) # self.seepage_hydraulic_conductivity = '0' # # ## Initial soil moisture deficit (volume of voids / total volume) # self.seepage_initial_moisture_deficit = '0' self.resize(280,300) self._main_form = main_form
def __init__(self, main_form, subcatchment_name): QtGui.QMainWindow.__init__(self, main_form) self.helper = HelpHandler(self) self.help_topic = "swmm/src/src/groundwater_equation_editor.htm" self.setupUi(self) self.subcatchment_name = subcatchment_name QtCore.QObject.connect(self.cmdOK, QtCore.SIGNAL("clicked()"), self.cmdOK_Clicked) QtCore.QObject.connect(self.cmdCancel, QtCore.SIGNAL("clicked()"), self.cmdCancel_Clicked) self.set_from(main_form.project)
def __init__(self, main_form=None): QtGui.QMainWindow.__init__(self, main_form) self.helper = HelpHandler(self) self.help_topic = "epanet/src/src/Demand_E.htm" self.setupUi(self) QtCore.QObject.connect(self.cmdOK, QtCore.SIGNAL("clicked()"), self.cmdOK_Clicked) QtCore.QObject.connect(self.cmdCancel, QtCore.SIGNAL("clicked()"), self.cmdCancel_Clicked) # self.set_from(parent.project) self._main_form = main_form self.node_id = ''