schrodinger.application.job_monitor.job_monitor_widgets module¶
- class schrodinger.application.job_monitor.job_monitor_widgets.JobsListPane(*args, **kwargs)¶
Bases:
schrodinger.application.job_monitor.job_monitor_widgets._BasePane
This is the pane you start on when opening the job monitor. It contains widgets to stop or cancel jobs, filter jobs, open preferences, and a table that shows top level jobs
- ui_module = <module 'schrodinger.application.job_monitor.top_level_view_ui' from '/scr/buildbot/savedbuilds/2024-4/NB/build-117/internal/lib/python3.11/site-packages/schrodinger/application/job_monitor/top_level_view_ui.py'>¶
- model_class¶
alias of
schrodinger.application.job_monitor.job_monitor_models.JobMonitorPanelModel
- initSetUp()¶
Creates widget from
ui
and stores itui_widget
.Suggested subclass use: create and initialize subwidgets, and connect signals.
- initLayOut()¶
@overrides: widgetmixins.InitMixin
- defineMappings()¶
Override this in the subclass to define mappings. Should return a list of tuples [(<target>, <param>)]. Targets can be:
a basic widget, like
QLineEdit
orQComboBox
a custom object that inherits
MapperMixin
orTargetMixin
a
TargetSpec
instancea slot
For common widgets, standard signals and getter/setter methods will be used, as defined in
mappers._get_default_access_names()
.For more fine-grained custom control, instantiate a
TargetSpec
object, which allows custom setters, getters, and signals to be specified.Supplying a slot as the first element of the tuple is equivalent to providing
TargetSpec(slot=my_slot)
.Note that all target slots are triggered on
setModel()
as well as in response to the specified signal.The param is an abstract param reference, e.g. MyModel.my_param.
Example:
def defineMappings(self): combo = self.style_combo return [(self.name_le, MyModel.name), (TargetSpec(combo, getter=combo.currentText, setter=combo.setCurrentText), MyModel.style), (self.coord_widget, MyModel.coord), (self._onASLTextChanged, MyModel.asl_text)]
- getSignalsAndSlots(model)¶
Override this method to specify signal and slot pairs that need to be connected/disconnected whenever the model instance is switched using setModel. The model instance is provided as an argument so that instance-specific signals can be used, but any pairs of signals and slots may be returned from this method.
- Returns
a list of 2-tuples where each tuple is a signal, slot pair
- refreshJobTable()¶
Update the stop and cancel buttons after the job table gets refreshed.
- viewJobDetails(index)¶
- onProjFilterChanged()¶
- refilterJobs()¶
Filter jobs based on whether we’re showing active jobs only, current project jobs only.
- toggleActiveFilter()¶
- onActiveJobsOnlyChanged()¶
- toggleProjectFilter()¶
- stopSelected()¶
- cancelSelected()¶
- updateStopCancelButtons()¶
Update the enabled status of the stop and cancel buttons.
- class schrodinger.application.job_monitor.job_monitor_widgets.JobDetailsPane(*args, **kwargs)¶
Bases:
schrodinger.application.job_monitor.job_monitor_widgets._BasePane
The job details pane is opened when a user double clicks a job in a job table. It shows info on the selected job and the selected job’s top level job ancestor. It has back buttons to return to the Jobs List Pane.
- model_class¶
alias of
schrodinger.application.job_monitor.job_monitor_models.JobMonitorPanelModel
- initSetUp()¶
Creates widget from
ui
and stores itui_widget
.Suggested subclass use: create and initialize subwidgets, and connect signals.
- initLayOut()¶
@overrides: widgetmixins.InitMixin
- defineMappings()¶
Override this in the subclass to define mappings. Should return a list of tuples [(<target>, <param>)]. Targets can be:
a basic widget, like
QLineEdit
orQComboBox
a custom object that inherits
MapperMixin
orTargetMixin
a
TargetSpec
instancea slot
For common widgets, standard signals and getter/setter methods will be used, as defined in
mappers._get_default_access_names()
.For more fine-grained custom control, instantiate a
TargetSpec
object, which allows custom setters, getters, and signals to be specified.Supplying a slot as the first element of the tuple is equivalent to providing
TargetSpec(slot=my_slot)
.Note that all target slots are triggered on
setModel()
as well as in response to the specified signal.The param is an abstract param reference, e.g. MyModel.my_param.
Example:
def defineMappings(self): combo = self.style_combo return [(self.name_le, MyModel.name), (TargetSpec(combo, getter=combo.currentText, setter=combo.setCurrentText), MyModel.style), (self.coord_widget, MyModel.coord), (self._onASLTextChanged, MyModel.asl_text)]
- switchTopLevelJob(to_next)¶
Switch to the next toplevel job if
to_next
is True else to the previous toplevel job. :param to_next: value indicator for next or previous :type to_next: bool
- switchSubJob(to_next)¶
Switch to the next sub job if
to_next
is True else to the previous sub job. :param to_next: value indicator for next or previous :type to_next: bool
- onCurrentJobChanged()¶
Insert sub-jobs table or
no_subjobs_widget
in sub-jobs tab based on whether the job has atleast a sub-job or not.
- viewJobDetails(index)¶
- onSubJobBack()¶
- onTopLevelBack()¶
- class schrodinger.application.job_monitor.job_monitor_widgets.JobBar(*args, **kwargs)¶
Bases:
schrodinger.ui.qt.swidgets.StyleMixin
,schrodinger.models.mappers.MapperMixin
,schrodinger.ui.qt.basewidgets.BaseWidget
- model_class¶
alias of
schrodinger.application.job_monitor.job_monitor_models.JobModel
- BUTTON_TEXT = NotImplemented¶
- initSetUp()¶
Creates widget from
ui
and stores itui_widget
.Suggested subclass use: create and initialize subwidgets, and connect signals.
- initLayOut()¶
@overrides: widgetmixins.InitMixin
- defineMappings()¶
Override this in the subclass to define mappings. Should return a list of tuples [(<target>, <param>)]. Targets can be:
a basic widget, like
QLineEdit
orQComboBox
a custom object that inherits
MapperMixin
orTargetMixin
a
TargetSpec
instancea slot
For common widgets, standard signals and getter/setter methods will be used, as defined in
mappers._get_default_access_names()
.For more fine-grained custom control, instantiate a
TargetSpec
object, which allows custom setters, getters, and signals to be specified.Supplying a slot as the first element of the tuple is equivalent to providing
TargetSpec(slot=my_slot)
.Note that all target slots are triggered on
setModel()
as well as in response to the specified signal.The param is an abstract param reference, e.g. MyModel.my_param.
Example:
def defineMappings(self): combo = self.style_combo return [(self.name_le, MyModel.name), (TargetSpec(combo, getter=combo.currentText, setter=combo.setCurrentText), MyModel.style), (self.coord_widget, MyModel.coord), (self._onASLTextChanged, MyModel.asl_text)]
- getButtonWithIcon(icon_path, object_name)¶
Return a
QPushButton
with the clickable pointing hand cursor and icon specified byicon_path
.- Parameters
icon_path (str) – The path to the icon
object_name (str) – Name for the button’s object
- Returns
The button with the icon specified
- Return type
QtWidgets.QPushButton
- class schrodinger.application.job_monitor.job_monitor_widgets.TopLevelJobBar(*args, **kwargs)¶
Bases:
schrodinger.application.job_monitor.job_monitor_widgets.JobBar
This widget will show the back button to take the GUI back to the top level job table, and info (name, progress) of the top level job
- BUTTON_TEXT = 'Jobs List'¶
- initLayOut()¶
@overrides: widgetmixins.InitMixin
- class schrodinger.application.job_monitor.job_monitor_widgets.SubJobBar(*args, **kwargs)¶
Bases:
schrodinger.application.job_monitor.job_monitor_widgets.JobBar
This widget will show the back button to take the GUI back to the parent’s subjob table, and info (name, progress) of the selected sub job
- BUTTON_TEXT = 'Sub-Jobs List'¶
- __init__(*args, **kwargs)¶
- initLayOut()¶
@overrides: widgetmixins.InitMixin
- resizeEvent(self, a0: Optional[QResizeEvent])¶
- updateButtonText()¶
- incrementNestingLevel()¶
- decrementNestingLevel()¶
- resetNestingLevel()¶
- class schrodinger.application.job_monitor.job_monitor_widgets.StatusIcon(*args, **kwargs)¶
Bases:
schrodinger.models.mappers.TargetMixin
,schrodinger.ui.qt.standard_widgets.buttons.FlatButton
- targetSetValue(new_status)¶
- class schrodinger.application.job_monitor.job_monitor_widgets.JobInfoWidget(*args, **kwargs)¶
Bases:
schrodinger.ui.qt.swidgets.StyleMixin
,schrodinger.models.mappers.MapperMixin
,schrodinger.ui.qt.basewidgets.BaseWidget
This widget shows info (program, host, directory, started time) of the currently selected job (top level or subjob)
- ui_module = <module 'schrodinger.application.job_monitor.job_info_view_ui' from '/scr/buildbot/savedbuilds/2024-4/NB/build-117/internal/lib/python3.11/site-packages/schrodinger/application/job_monitor/job_info_view_ui.py'>¶
- model_class¶
alias of
schrodinger.application.job_monitor.job_monitor_models.JobMonitorPanelModel
- initSetUp()¶
Creates widget from
ui
and stores itui_widget
.Suggested subclass use: create and initialize subwidgets, and connect signals.
- initLayOut()¶
@overrides: widgetmixins.InitMixin
- defineMappings()¶
Override this in the subclass to define mappings. Should return a list of tuples [(<target>, <param>)]. Targets can be:
a basic widget, like
QLineEdit
orQComboBox
a custom object that inherits
MapperMixin
orTargetMixin
a
TargetSpec
instancea slot
For common widgets, standard signals and getter/setter methods will be used, as defined in
mappers._get_default_access_names()
.For more fine-grained custom control, instantiate a
TargetSpec
object, which allows custom setters, getters, and signals to be specified.Supplying a slot as the first element of the tuple is equivalent to providing
TargetSpec(slot=my_slot)
.Note that all target slots are triggered on
setModel()
as well as in response to the specified signal.The param is an abstract param reference, e.g. MyModel.my_param.
Example:
def defineMappings(self): combo = self.style_combo return [(self.name_le, MyModel.name), (TargetSpec(combo, getter=combo.currentText, setter=combo.setCurrentText), MyModel.style), (self.coord_widget, MyModel.coord), (self._onASLTextChanged, MyModel.asl_text)]
- getSignalsAndSlots(model)¶
Override this method to specify signal and slot pairs that need to be connected/disconnected whenever the model instance is switched using setModel. The model instance is provided as an argument so that instance-specific signals can be used, but any pairs of signals and slots may be returned from this method.
- Returns
a list of 2-tuples where each tuple is a signal, slot pair
- resizeEvent(self, a0: Optional[QResizeEvent])¶
- updateProjectLabelVisibility()¶
Display the selected job’s project name, when jobs from all the projects are shown.
- setDirectoryPath()¶