Package schrodinger :: Package application :: Package desmond :: Module gui :: Class GuiApp
[hide private]
[frames] | no frames]

Class GuiApp

                                                       object --+                
                                                                |                
ui.qt.appframework2.maestro_callback.AbstractMaestroCallbackMixin --+            
                                                                    |            
            ui.qt.appframework2.maestro_callback.MaestroCallbackMixin --+        
                                                                        |        
                                                           object --+   |        
                                                                    |   |        
                              ui.qt.appframework2.markers.MarkerMixin --+        
                                                                        |        
                                                       object --+       |        
                                                                |       |        
                       ui.qt.appframework2.settings.SettingsMixin --+   |        
                                                                    |   |        
                      ui.qt.appframework2.settings.SettingsPanelMixin --+        
                                                                        |        
                                       object --+                       |        
                                                |                       |        
                                sip.simplewrapper --+                   |        
                                                    |                   |        
                                          sip.wrapper --+               |        
                                                        |               |        
                                     PyQt5.QtCore.QObject --+           |        
                                                            |           |        
                                           object --+       |           |        
                                                    |       |           |        
                                    sip.simplewrapper --+   |           |        
                                                        |   |           |        
                                 PyQt5.QtGui.QPaintDevice --+           |        
                                                            |           |        
                                      PyQt5.QtWidgets.QWidget --+       |        
                                                                |       |        
                            ui.qt.appframework2.baseapp.BasePanel --+   |        
                                                                    |   |        
                                                       object --+   |   |        
                                                                |   |   |        
                   ui.qt.appframework2.validation.ValidationMixin --+   |        
                                                                    |   |        
                           ui.qt.appframework2.baseapp.ValidatedPanel --+        
                                                                        |        
                                              ui.qt.appframework2.af2.App --+    
                                                                            |    
                                               ui.qt.appframework2.af2.JobApp --+
                                                                                |
                                                                               GuiApp

Base class of several Desmond panel GUI's (see its subclasses below).

Nested Classes [hide private]

Inherited from PyQt5.QtWidgets.QWidget: RenderFlag, RenderFlags

Inherited from PyQt5.QtGui.QPaintDevice: PaintDeviceMetric

Instance Methods [hide private]
 
__init__(self, key, validator, tag_func, sim_class, is_replica_exchange=False)
x.__init__(...) initializes x; see help(type(x)) for signature
 
setup(self)
 
getConfigDialog(self)
 
enableSimulationGroupBox(self, state)
Set the simulation group box enabled state
 
model_changed_callback(self, model)
The GUI is designed to have some intelligence that can adapt its own look based on the imported model system.
 
updateFromKey(self, key)
Updates the look of the GUI with `key'.
 
_check_validity(self)
Checks if all widgets have valid values.
 
_update_key(self)
Update the `self._key' based on the GUI settings.
 
_submit_job(self, jobname, incorp, host, cpu, sys_fname, cfg_fname=None, really_start=True)
Submit a $SCHRODINGER/desmond job.
 
_submit_multisim_job(self, jobname, incorp, whost, chost, cpus, maxjob, sys_fname, cfg_fname, msj_fname, out_fname, other_options=[], really_start=True)
Submit a $SCHRODINGER/utilities/multisim job.
 
_set_detail(self, n_cpu)
 
verifySettings(self)
Called by AppFramework to verify that all UI elements have valid states.
 
startCommand(self, really_start=True)
Writes the job input files and assembles the command to execute.
 
_write_msj(self, jobname, msj_str)
 
_write_cms(self, jobname)
 
_write_cfg(self, jobname)
self is MDApp self.sim is MdGroup
 
_get_msj(self, cfg_fname)
 
readActionSelected(self)
Called when the "Read" action is selected by the user.
 
writeCommand(self)
 
readCommand(self, fname)
 
isKeyConsistentWithPanel(self, key)
 
reset(self)
 
setDefaults(self)
Resets the parameters to their default values.
 
closeEvent(self, event)
Hide panel, if in Maestro.

Inherited from ui.qt.appframework2.af2.JobApp: cleanup, cleanupWriteCmd, cmdListToCmd, configDialogSettings, createBottomBar, createJobDir, generateStatus, getCmdListArgValue, getJobSpec, jobDir, jobname, jobnameData, jobnameDataChanged, lastJobCompleted, launchFromJobSpec, launchJobCmd, launchLauncher, launchScript, launcherToCmdList, layOut, makeLauncher, registerJob, runMaestro, sanitizeJobnameText, setConfigDialogSettings, setJobname, setPanelOptions, setupJobCmd, showSTUDialog, syncConfigDialog, updateJobname, updateStatusBar, writeJobCmd

Inherited from ui.qt.appframework2.af2.JobApp (private): _addCmdParam, _addJaguarOptions, _formJaguarCPUFlags, _getSHFilename, _getSTUZIPFilename, _getStandardJobnames, _makeLocaleIndependent, _periodicJobCheck, _populateEmptyJobname, _settings, _start, _startOrWrite, _write, _writeSTU

Inherited from ui.qt.appframework2.af2.App: addMainTaskRunner, createInputSelector, currentTaskRunner, getWorkspaceStructure, processSettings, processTaskMessage, resetAllRunners, resizeEvent, setCurrentTask, setupTaskRunner, showEvent, showProgressBarForJob

Inherited from ui.qt.appframework2.af2.App (private): _applySettingsFromGroup, _close, _getSettingsForGroup, _help, _prestart, _prewrite, _read, _reset, _statusShrunk, _updateProgressBar

Inherited from ui.qt.appframework2.maestro_callback.AbstractMaestroCallbackMixin: buildCallbackDicts, ignoreMaestroCallbacks

Inherited from ui.qt.appframework2.maestro_callback.AbstractMaestroCallbackMixin (private): _addCallbacks, _closeEvent, _delayedCallbacks, _removeCallbacks, _showEvent

Inherited from ui.qt.appframework2.markers.MarkerMixin: addJaguarMarker, addMarker, addMarkerFromAsl, getAllJaguarMarkers, getAllMarkers, getJaguarMarker, hideAllJaguarMarkers, hideAllMarkers, hideEvent, removeAllJaguarMarkers, removeAllJaguarMarkersForEntry, removeAllMarkers, removeJaguarMarker, removeJaguarMarkerForAtoms, removeMarker, show, showAllJaguarMarkers, showAllMarkers

Inherited from ui.qt.appframework2.markers.MarkerMixin (private): _calcEntryAtomTotal, _canonicalizeAtomOrder, _clearInvalidatedJaguarMarkers, _createAtomAsl, _createJaguarMarker, _createMarker, _eidsFromHashable, _genMarkerHash, _hideAll, _setMarkerHash, _showAll, _updateMarkers

Inherited from ui.qt.appframework2.settings.SettingsPanelMixin: definePanelSettings, getPanelState, loadPanelState, setPanelState, writePanelState

Inherited from ui.qt.appframework2.settings.SettingsPanelMixin (private): _configurePanelSettings

Inherited from ui.qt.appframework2.settings.SettingsMixin: __getitem__, __setitem__, applyAliasedSettings, applySettings, getAliasedSettings, getAliasedValue, getObjValue, getPersistenceKey, getSettings, loadPersistentOptions, savePersistentOptions, setAlias, setAliasedValue, setAliases, setObjValue, setPersistent

Inherited from ui.qt.appframework2.baseapp.ValidatedPanel: reportValidation

Inherited from ui.qt.appframework2.baseapp.BasePanel: __str__, error, gui_closed, info, keyPressEvent, parent, question, restoreCursor, run, runCanvas, runMode, runStandalone, runSubpanel, setWaitCursor, startUp, warning

Inherited from ui.qt.appframework2.baseapp.BasePanel (private): _dockPrefChanged, _layOutDockWidget

Inherited from PyQt5.QtWidgets.QWidget: acceptDrops, accessibleDescription, accessibleName, actionEvent, actions, activateWindow, addAction, addActions, adjustSize, autoFillBackground, backgroundRole, baseSize, changeEvent, childAt, childrenRect, childrenRegion, clearFocus, clearMask, close, contentsMargins, contentsRect, contextMenuEvent, contextMenuPolicy, create, createWindowContainer, cursor, customContextMenuRequested, destroy, devType, dragEnterEvent, dragLeaveEvent, dragMoveEvent, dropEvent, effectiveWinId, ensurePolished, enterEvent, event, find, focusInEvent, focusNextChild, focusNextPrevChild, focusOutEvent, focusPolicy, focusPreviousChild, focusProxy, focusWidget, font, fontInfo, fontMetrics, foregroundRole, frameGeometry, frameSize, geometry, getContentsMargins, grab, grabGesture, grabKeyboard, grabMouse, grabShortcut, graphicsEffect, graphicsProxyWidget, hasFocus, hasHeightForWidth, hasMouseTracking, height, heightForWidth, hide, initPainter, inputMethodEvent, inputMethodHints, inputMethodQuery, insertAction, insertActions, isActiveWindow, isAncestorOf, isEnabled, isEnabledTo, isFullScreen, isHidden, isLeftToRight, isMaximized, isMinimized, isModal, isRightToLeft, isVisible, isVisibleTo, isWindow, isWindowModified, keyReleaseEvent, keyboardGrabber, layout, layoutDirection, leaveEvent, locale, lower, mapFrom, mapFromGlobal, mapFromParent, mapTo, mapToGlobal, mapToParent, mask, maximumHeight, maximumSize, maximumWidth, metric, minimumHeight, minimumSize, minimumSizeHint, minimumWidth, mouseDoubleClickEvent, mouseGrabber, mouseMoveEvent, mousePressEvent, mouseReleaseEvent, move, moveEvent, nativeEvent, nativeParentWidget, nextInFocusChain, normalGeometry, overrideWindowFlags, overrideWindowState, paintEngine, paintEvent, palette, parentWidget, pos, previousInFocusChain, raise_, rect, releaseKeyboard, releaseMouse, releaseShortcut, removeAction, render, repaint, resize, restoreGeometry, saveGeometry, scroll, setAcceptDrops, setAccessibleDescription, setAccessibleName, setAttribute, setAutoFillBackground, setBackgroundRole, setBaseSize, setContentsMargins, setContextMenuPolicy, setCursor, setDisabled, setEnabled, setFixedHeight, setFixedSize, setFixedWidth, setFocus, setFocusPolicy, setFocusProxy, setFont, setForegroundRole, setGeometry, setGraphicsEffect, setHidden, setInputMethodHints, setLayout, setLayoutDirection, setLocale, setMask, setMaximumHeight, setMaximumSize, setMaximumWidth, setMinimumHeight, setMinimumSize, setMinimumWidth, setMouseTracking, setPalette, setParent, setShortcutAutoRepeat, setShortcutEnabled, setSizeIncrement, setSizePolicy, setStatusTip, setStyle, setStyleSheet, setTabOrder, setToolTip, setToolTipDuration, setUpdatesEnabled, setVisible, setWhatsThis, setWindowFilePath, setWindowFlags, setWindowIcon, setWindowIconText, setWindowModality, setWindowModified, setWindowOpacity, setWindowRole, setWindowState, setWindowTitle, sharedPainter, showFullScreen, showMaximized, showMinimized, showNormal, size, sizeHint, sizeIncrement, sizePolicy, stackUnder, statusTip, style, styleSheet, tabletEvent, testAttribute, toolTip, toolTipDuration, underMouse, ungrabGesture, unsetCursor, unsetLayoutDirection, unsetLocale, update, updateGeometry, updateMicroFocus, updatesEnabled, visibleRegion, whatsThis, wheelEvent, width, winId, window, windowFilePath, windowFlags, windowHandle, windowIcon, windowIconChanged, windowIconText, windowIconTextChanged, windowModality, windowOpacity, windowRole, windowState, windowTitle, windowTitleChanged, windowType, x, y

Inherited from PyQt5.QtCore.QObject: __getattr__, blockSignals, childEvent, children, connectNotify, customEvent, deleteLater, destroyed, disconnect, disconnectNotify, dumpObjectInfo, dumpObjectTree, dynamicPropertyNames, eventFilter, findChild, findChildren, inherits, installEventFilter, isSignalConnected, isWidgetType, isWindowType, killTimer, metaObject, moveToThread, objectName, objectNameChanged, property, pyqtConfigure, receivers, removeEventFilter, sender, senderSignalIndex, setObjectName, setProperty, signalsBlocked, startTimer, thread, timerEvent, tr

Inherited from PyQt5.QtGui.QPaintDevice: colorCount, depth, devicePixelRatio, devicePixelRatioF, devicePixelRatioFScale, heightMM, logicalDpiX, logicalDpiY, paintingActive, physicalDpiX, physicalDpiY, widthMM

Inherited from sip.simplewrapper: __new__

Inherited from ui.qt.appframework2.validation.ValidationMixin: runValidation

Inherited from ui.qt.appframework2.validation.ValidationMixin (private): _validate, _validateChildren

Inherited from object: __delattr__, __format__, __getattribute__, __hash__, __reduce__, __reduce_ex__, __repr__, __setattr__, __sizeof__, __subclasshook__

Class Methods [hide private]

Inherited from ui.qt.appframework2.af2.App: panel

Class Variables [hide private]

Inherited from ui.qt.appframework2.af2.JobApp: NO_PROGRESS_BAR, PROGRESS_BAR_NO_TEXT, PROGRESS_BAR_WITH_TEXT

Inherited from ui.qt.appframework2.af2.App (private): _singleton

Inherited from PyQt5.QtWidgets.QWidget: DrawChildren, DrawWindowBackground, IgnoreMask

Inherited from PyQt5.QtCore.QObject: staticMetaObject

Inherited from PyQt5.QtGui.QPaintDevice: PdmDepth, PdmDevicePixelRatio, PdmDevicePixelRatioScaled, PdmDpiX, PdmDpiY, PdmHeight, PdmHeightMM, PdmNumColors, PdmPhysicalDpiX, PdmPhysicalDpiY, PdmWidth, PdmWidthMM

Instance Variables [hide private]

Inherited from ui.qt.appframework2.markers.MarkerMixin: MARKER_ICONS

Inherited from ui.qt.appframework2.markers.MarkerMixin (private): _marked_eid_lengths, _markers, _multi_atom_markers

Properties [hide private]

Inherited from ui.qt.appframework2.baseapp.BasePanel: title

Inherited from object: __class__

Method Details [hide private]

__init__(self, key, validator, tag_func, sim_class, is_replica_exchange=False)
(Constructor)

 

x.__init__(...) initializes x; see help(type(x)) for signature

Overrides: object.__init__
(inherited documentation)

setup(self)

 
Overrides: ui.qt.appframework2.baseapp.BasePanel.setup

getConfigDialog(self)

 
Overrides: ui.qt.appframework2.af2.JobApp.getConfigDialog

enableSimulationGroupBox(self, state)

 

Set the simulation group box enabled state

Parameters:
  • state (bool) - True if the groupbox should be enabled, False if not

model_changed_callback(self, model)

 

The GUI is designed to have some intelligence that can adapt its own look based on the imported model system. So if the model system is changed, we need to inform some other parts of the GUI.

The event that the model system is changed will be initially triggered from the `InputGroup' (see this class above), then it will go to here (i.e., `GuiApp'), and from here the signal will be sent forth to all interested parts of the GUI.

`model' - A `cms.Cms' object, containing all information about the model system.

  • If it is none, then the model is a checkpoint file.

_check_validity(self)

 

Checks if all widgets have valid values. If a widget with invalid value was encountered, then returns string that describes the problem. Returns None if there are no issues.

_submit_job(self, jobname, incorp, host, cpu, sys_fname, cfg_fname=None, really_start=True)

 

Submit a $SCHRODINGER/desmond job.

- `cpu' should be the total number of CPUs. For REMD jobs, the total
  number of CPUs = number of CPUs for each replica
  times number of replicas. REMD jobs are started via this method
  only when restarting from a checkpoint file.

_submit_multisim_job(self, jobname, incorp, whost, chost, cpus, maxjob, sys_fname, cfg_fname, msj_fname, out_fname, other_options=[], really_start=True)

 

Submit a $SCHRODINGER/utilities/multisim job.

Parameters:
  • whost (str) - The master host, and optionally the processor count, delimited with a colon. The master job normally requires only 1 processor to run. In umbrella mode (e.g. Replica Exchange), in order to run on multiple hosts, the proc count should be explicitly specified. Each subjob itself can use multiple processors, see cpus option.
  • cpus (int) - The number of processors for each subjob to use (NOT the total processor count). Will be deprecated in the future. For Replica Exchange, this should be set to 1.

verifySettings(self)

 

Called by AppFramework to verify that all UI elements have valid states. Returns True if so. Returns False and the error message if any issues are found.

Decorators:
  • @af2.validator()

startCommand(self, really_start=True)

 

Writes the job input files and assembles the command to execute.

Parameters:
  • really_start (bol) - Whether to start the job after writing the input files.
Decorators:
  • @af2.appmethods.start()

readActionSelected(self)

 

Called when the "Read" action is selected by the user. It's the responsibility of individual panels to hook this method to the "Read" menu action. See Ev:109801

writeCommand(self)

 
Decorators:
  • @af2.appmethods.write("Write")

reset(self)

 
Decorators:
  • @af2.appmethods.reset('Reset')

setDefaults(self)

 

Resets the parameters to their default values.

Decorators:
  • @wait_cursor
Overrides: ui.qt.appframework2.baseapp.BasePanel.setDefaults

closeEvent(self, event)

 

Hide panel, if in Maestro. Otherwise close it.

Overrides: PyQt5.QtWidgets.QWidget.closeEvent