schrodinger.application.jaguar.gui.tabs.base_tab module

class schrodinger.application.jaguar.gui.tabs.base_tab.CombinedUi

Bases: object

An object that provides access to widgets across multiple ui files

__init__

Initialize self. See help(type(self)) for accurate signature.

class schrodinger.application.jaguar.gui.tabs.base_tab.BaseTab(parent, input_selector=None)

Bases: PyQt5.QtWidgets.QWidget

The base class for all Jaguar tabs. Subclasses should define NAME, HELP_TOPIC, UI_MODULES, setup(), getMmJagKeywords(), restoreSettings(), and reset().

Variables:
  • NAME (str) – The name of the tab
  • HELP_TOPIC (str) – The help topic for the tab
  • UI_MODULES (tuple) – A tuple of ui modules defining the tab widgets. These ui modules should be listed top to bottom. Optionally, a tuple of (tab class, attribute name) may be listed instead of a ui file to include a subtab.
  • ui (CombinedUi) – An object that provides access to all widgets from all ui files. Note that widget names should be unique amongst all ui files for the tab.
  • task_name (str) – The name of the panel this tab is part of
  • input_selector (schrodinger.ui.qt.input_selector.InputSelector) – The AppFramework input selector frame from the panel containing this tab.
NAME = ''
HELP_TOPIC = ''
UI_MODULES = None
__init__(parent, input_selector=None)

Perform common tab initialization. All tab specific initialization should go in setup().

Parameters:
setup()

Perform tab specific initialization. This function should be defined in subclasses if initialization is needed.

getDefaultKeywords()

Get the default keywords for this tab. Note that defaults that exist in mmjag should not be explicitly set here.

getMmJagKeywords()

Return all keywords that should be put into the mmjag handle. This function should be defined in subclasses.

Returns:All keywords that should be put into the mmjag handle
Return type:dict
Raises:schrodinger.application.jaguar.gui.utils.JaguarSettingError – If any settings are invalid.
loadSettings(jag_input)

Restore tab settings from mmjag keywords. This function should be defined in subclasses.

Parameters:jag_input (schrodinger.application.jaguar.input.JaguarInput) – The Jaguar settings to base the tab settings on
loadPerAtomSettings(jag_input, eid=None, title=None)

Restore per-atom tab settings from mmjag keywords. This function should be defined in subclasses for any tabs that contain per-atom settings.

Parameters:
saveSettings(jag_input, eid)

Save tab settings in jaguar handle. It is only used for settings which are not defined using keywords (typically per-atom settings). This function should be defined in subclasses for any tabs that contain per- atom settings.

Parameters:
reset()

Reset the tab to its original state. Note that this function is only necessary for settings that are not stored in the mmjag handle. For mmjag settings, reset will be carried out using loadSettings with a default schrodinger.application.jaguar.input.JaguarInput object. This function should only be defined in subclasses if there are any settings that cannot be reset via loadSettings.

validate()

Make sure that the tab settings will allow a job to be run successfully. Note that this validation should not be redundant with that performed in getMmJagKeywords. Any tab setting that prevents valid mmjag keywords from being generated should cause getMmJagKeywords to raise a JaguarSettingError. Any tab setting that allows mmjag keywords to be successfully generated but will result in a job failure should cause a validate fail. This function should be defined in subclasses if validation is needed.

Returns:If the validation passes, None is returned. If the validation fails, a string that describes the error is returned.
Return type:str or NoneType
error(msg)

Display an error dialog with the specified message

Parameters:msg (str) – The message to include in the error dialog
warning(msg)

Display a warning dialog with the specified message

Parameters:msg (str) – The message to include in the warning dialog
activate()

This function will be called whenever the user selects this tab. Subclasses can override it if necessary to, e.g., activate picking.

deactivate()

This function will be called whenever the user selects a different tab. Subclasses can override it if necessary to, e.g., deactivate picking.

DrawChildren = 2
DrawWindowBackground = 1
IgnoreMask = 4
class PaintDeviceMetric

Bases: int

__init__ = <method-wrapper '__init__' of sip.enumtype object at 0x1f07e48>
PdmDepth = 6
PdmDevicePixelRatio = 11
PdmDevicePixelRatioScaled = 12
PdmDpiX = 7
PdmDpiY = 8
PdmHeight = 2
PdmHeightMM = 4
PdmNumColors = 5
PdmPhysicalDpiX = 9
PdmPhysicalDpiY = 10
PdmWidth = 1
PdmWidthMM = 3
class RenderFlag

Bases: int

__init__ = <method-wrapper '__init__' of sip.enumtype object at 0x1b51ef8>
class RenderFlags

Bases: sip.simplewrapper

QWidget.RenderFlags(Union[QWidget.RenderFlags, QWidget.RenderFlag]) QWidget.RenderFlags(QWidget.RenderFlags)

__init__

Initialize self. See help(type(self)) for accurate signature.

acceptDrops(self) → bool
accessibleDescription(self) → str
accessibleName(self) → str
actionEvent(self, QActionEvent)
actions(self) → List[QAction]
activateWindow(self)
addAction(self, QAction)
addActions(self, Iterable[QAction])
adjustSize(self)
autoFillBackground(self) → bool
backgroundRole(self) → QPalette.ColorRole
baseSize(self) → QSize
blockSignals(self, bool) → bool
changeEvent(self, QEvent)
childAt(self, QPoint) → QWidget

childAt(self, int, int) -> QWidget

childEvent(self, QChildEvent)
children(self) → List[QObject]
childrenRect(self) → QRect
childrenRegion(self) → QRegion
clearFocus(self)
clearMask(self)
close(self) → bool
closeEvent(self, QCloseEvent)
colorCount(self) → int
connectNotify(self, QMetaMethod)
contentsMargins(self) → QMargins
contentsRect(self) → QRect
contextMenuEvent(self, QContextMenuEvent)
contextMenuPolicy(self) → Qt.ContextMenuPolicy
create(self, window: sip.voidptr = 0, initializeWindow: bool = True, destroyOldWindow: bool = True)
createWindowContainer(QWindow, parent: QWidget = None, flags: Union[Qt.WindowFlags, Qt.WindowType] = 0) → QWidget
cursor(self) → QCursor
customContextMenuRequested

customContextMenuRequested(self, QPoint) [signal]

customEvent(self, QEvent)
deleteLater(self)
depth(self) → int
destroy(self, destroyWindow: bool = True, destroySubWindows: bool = True)
destroyed

destroyed(self, object: QObject = None) [signal]

devType(self) → int
devicePixelRatio(self) → int
devicePixelRatioF(self) → float
devicePixelRatioFScale() → float
disconnect(self)
disconnectNotify(self, QMetaMethod)
dragEnterEvent(self, QDragEnterEvent)
dragLeaveEvent(self, QDragLeaveEvent)
dragMoveEvent(self, QDragMoveEvent)
dropEvent(self, QDropEvent)
dumpObjectInfo(self)
dumpObjectTree(self)
dynamicPropertyNames(self) → List[QByteArray]
effectiveWinId(self) → sip.voidptr
ensurePolished(self)
enterEvent(self, QEvent)
event(self, QEvent) → bool
eventFilter(self, QObject, QEvent) → bool
find(sip.voidptr) → QWidget
findChild(self, type, name: str = '', options: Union[Qt.FindChildOptions, Qt.FindChildOption] = Qt.FindChildrenRecursively) → QObject

findChild(self, Tuple, name: str = ‘’, options: Union[Qt.FindChildOptions, Qt.FindChildOption] = Qt.FindChildrenRecursively) -> QObject

findChildren(self, type, name: str = '', options: Union[Qt.FindChildOptions, Qt.FindChildOption] = Qt.FindChildrenRecursively) → List[QObject]

findChildren(self, Tuple, name: str = ‘’, options: Union[Qt.FindChildOptions, Qt.FindChildOption] = Qt.FindChildrenRecursively) -> List[QObject] findChildren(self, type, QRegExp, options: Union[Qt.FindChildOptions, Qt.FindChildOption] = Qt.FindChildrenRecursively) -> List[QObject] findChildren(self, Tuple, QRegExp, options: Union[Qt.FindChildOptions, Qt.FindChildOption] = Qt.FindChildrenRecursively) -> List[QObject] findChildren(self, type, QRegularExpression, options: Union[Qt.FindChildOptions, Qt.FindChildOption] = Qt.FindChildrenRecursively) -> List[QObject] findChildren(self, Tuple, QRegularExpression, options: Union[Qt.FindChildOptions, Qt.FindChildOption] = Qt.FindChildrenRecursively) -> List[QObject]

focusInEvent(self, QFocusEvent)
focusNextChild(self) → bool
focusNextPrevChild(self, bool) → bool
focusOutEvent(self, QFocusEvent)
focusPolicy(self) → Qt.FocusPolicy
focusPreviousChild(self) → bool
focusProxy(self) → QWidget
focusWidget(self) → QWidget
font(self) → QFont
fontInfo(self) → QFontInfo
fontMetrics(self) → QFontMetrics
foregroundRole(self) → QPalette.ColorRole
frameGeometry(self) → QRect
frameSize(self) → QSize
geometry(self) → QRect
getContentsMargins(self) → Tuple[int, int, int, int]
grab(self, rectangle: QRect = QRect(QPoint(0, 0), QSize(-1, -1))) → QPixmap
grabGesture(self, Qt.GestureType, flags: Union[Qt.GestureFlags, Qt.GestureFlag] = Qt.GestureFlags())
grabKeyboard(self)
grabMouse(self)

grabMouse(self, Union[QCursor, Qt.CursorShape])

grabShortcut(self, Union[QKeySequence, QKeySequence.StandardKey, str, int], context: Qt.ShortcutContext = Qt.WindowShortcut) → int
graphicsEffect(self) → QGraphicsEffect
graphicsProxyWidget(self) → QGraphicsProxyWidget
hasFocus(self) → bool
hasHeightForWidth(self) → bool
hasMouseTracking(self) → bool
hasTabletTracking(self) → bool
height(self) → int
heightForWidth(self, int) → int
heightMM(self) → int
hide(self)
hideEvent(self, QHideEvent)
inherits(self, str) → bool
initPainter(self, QPainter)
inputMethodEvent(self, QInputMethodEvent)
inputMethodHints(self) → Qt.InputMethodHints
inputMethodQuery(self, Qt.InputMethodQuery) → Any
insertAction(self, QAction, QAction)
insertActions(self, QAction, Iterable[QAction])
installEventFilter(self, QObject)
isActiveWindow(self) → bool
isAncestorOf(self, QWidget) → bool
isEnabled(self) → bool
isEnabledTo(self, QWidget) → bool
isFullScreen(self) → bool
isHidden(self) → bool
isLeftToRight(self) → bool
isMaximized(self) → bool
isMinimized(self) → bool
isModal(self) → bool
isRightToLeft(self) → bool
isSignalConnected(self, QMetaMethod) → bool
isVisible(self) → bool
isVisibleTo(self, QWidget) → bool
isWidgetType(self) → bool
isWindow(self) → bool
isWindowModified(self) → bool
isWindowType(self) → bool
keyPressEvent(self, QKeyEvent)
keyReleaseEvent(self, QKeyEvent)
keyboardGrabber() → QWidget
killTimer(self, int)
layout(self) → QLayout
layoutDirection(self) → Qt.LayoutDirection
leaveEvent(self, QEvent)
locale(self) → QLocale
logicalDpiX(self) → int
logicalDpiY(self) → int
lower(self)
mapFrom(self, QWidget, QPoint) → QPoint
mapFromGlobal(self, QPoint) → QPoint
mapFromParent(self, QPoint) → QPoint
mapTo(self, QWidget, QPoint) → QPoint
mapToGlobal(self, QPoint) → QPoint
mapToParent(self, QPoint) → QPoint
mask(self) → QRegion
maximumHeight(self) → int
maximumSize(self) → QSize
maximumWidth(self) → int
metaObject(self) → QMetaObject
metric(self, QPaintDevice.PaintDeviceMetric) → int
minimumHeight(self) → int
minimumSize(self) → QSize
minimumSizeHint(self) → QSize
minimumWidth(self) → int
mouseDoubleClickEvent(self, QMouseEvent)
mouseGrabber() → QWidget
mouseMoveEvent(self, QMouseEvent)
mousePressEvent(self, QMouseEvent)
mouseReleaseEvent(self, QMouseEvent)
move(self, QPoint)

move(self, int, int)

moveEvent(self, QMoveEvent)
moveToThread(self, QThread)
nativeEvent(self, Union[QByteArray, bytes, bytearray], sip.voidptr) → Tuple[bool, int]
nativeParentWidget(self) → QWidget
nextInFocusChain(self) → QWidget
normalGeometry(self) → QRect
objectName(self) → str
objectNameChanged

objectNameChanged(self, str) [signal]

overrideWindowFlags(self, Union[Qt.WindowFlags, Qt.WindowType])
overrideWindowState(self, Union[Qt.WindowStates, Qt.WindowState])
paintEngine(self) → QPaintEngine
paintEvent(self, QPaintEvent)
paintingActive(self) → bool
palette(self) → QPalette
parent(self) → QObject
parentWidget(self) → QWidget
physicalDpiX(self) → int
physicalDpiY(self) → int
pos(self) → QPoint
previousInFocusChain(self) → QWidget
property(self, str) → Any
pyqtConfigure(...)

Each keyword argument is either the name of a Qt property or a Qt signal. For properties the property is set to the given value which should be of an appropriate type. For signals the signal is connected to the given value which should be a callable.

raise_(self)
receivers(self, PYQT_SIGNAL) → int
rect(self) → QRect
releaseKeyboard(self)
releaseMouse(self)
releaseShortcut(self, int)
removeAction(self, QAction)
removeEventFilter(self, QObject)
render(self, QPaintDevice, targetOffset: QPoint = QPoint(), sourceRegion: QRegion = QRegion(), flags: Union[QWidget.RenderFlags, QWidget.RenderFlag] = QWidget.RenderFlags(QWidget.DrawWindowBackground|QWidget.DrawChildren))

render(self, QPainter, targetOffset: QPoint = QPoint(), sourceRegion: QRegion = QRegion(), flags: Union[QWidget.RenderFlags, QWidget.RenderFlag] = QWidget.RenderFlags(QWidget.DrawWindowBackground|QWidget.DrawChildren))

repaint(self)

repaint(self, int, int, int, int) repaint(self, QRect) repaint(self, QRegion)

resize(self, QSize)

resize(self, int, int)

resizeEvent(self, QResizeEvent)
restoreGeometry(self, Union[QByteArray, bytes, bytearray]) → bool
saveGeometry(self) → QByteArray
scroll(self, int, int)

scroll(self, int, int, QRect)

sender(self) → QObject
senderSignalIndex(self) → int
setAcceptDrops(self, bool)
setAccessibleDescription(self, str)
setAccessibleName(self, str)
setAttribute(self, Qt.WidgetAttribute, on: bool = True)
setAutoFillBackground(self, bool)
setBackgroundRole(self, QPalette.ColorRole)
setBaseSize(self, int, int)

setBaseSize(self, QSize)

setContentsMargins(self, int, int, int, int)

setContentsMargins(self, QMargins)

setContextMenuPolicy(self, Qt.ContextMenuPolicy)
setCursor(self, Union[QCursor, Qt.CursorShape])
setDisabled(self, bool)
setEnabled(self, bool)
setFixedHeight(self, int)
setFixedSize(self, QSize)

setFixedSize(self, int, int)

setFixedWidth(self, int)
setFocus(self)

setFocus(self, Qt.FocusReason)

setFocusPolicy(self, Qt.FocusPolicy)
setFocusProxy(self, QWidget)
setFont(self, QFont)
setForegroundRole(self, QPalette.ColorRole)
setGeometry(self, QRect)

setGeometry(self, int, int, int, int)

setGraphicsEffect(self, QGraphicsEffect)
setHidden(self, bool)
setInputMethodHints(self, Union[Qt.InputMethodHints, Qt.InputMethodHint])
setLayout(self, QLayout)
setLayoutDirection(self, Qt.LayoutDirection)
setLocale(self, QLocale)
setMask(self, QBitmap)

setMask(self, QRegion)

setMaximumHeight(self, int)
setMaximumSize(self, int, int)

setMaximumSize(self, QSize)

setMaximumWidth(self, int)
setMinimumHeight(self, int)
setMinimumSize(self, int, int)

setMinimumSize(self, QSize)

setMinimumWidth(self, int)
setMouseTracking(self, bool)
setObjectName(self, str)
setPalette(self, QPalette)
setParent(self, QWidget)

setParent(self, QWidget, Union[Qt.WindowFlags, Qt.WindowType])

setProperty(self, str, Any) → bool
setShortcutAutoRepeat(self, int, enabled: bool = True)
setShortcutEnabled(self, int, enabled: bool = True)
setSizeIncrement(self, int, int)

setSizeIncrement(self, QSize)

setSizePolicy(self, QSizePolicy)

setSizePolicy(self, QSizePolicy.Policy, QSizePolicy.Policy)

setStatusTip(self, str)
setStyle(self, QStyle)
setStyleSheet(self, str)
setTabOrder(QWidget, QWidget)
setTabletTracking(self, bool)
setToolTip(self, str)
setToolTipDuration(self, int)
setUpdatesEnabled(self, bool)
setVisible(self, bool)
setWhatsThis(self, str)
setWindowFilePath(self, str)
setWindowFlag(self, Qt.WindowType, on: bool = True)
setWindowFlags(self, Union[Qt.WindowFlags, Qt.WindowType])
setWindowIcon(self, QIcon)
setWindowIconText(self, str)
setWindowModality(self, Qt.WindowModality)
setWindowModified(self, bool)
setWindowOpacity(self, float)
setWindowRole(self, str)
setWindowState(self, Union[Qt.WindowStates, Qt.WindowState])
setWindowTitle(self, str)
sharedPainter(self) → QPainter
show(self)
showEvent(self, QShowEvent)
showFullScreen(self)
showMaximized(self)
showMinimized(self)
showNormal(self)
signalsBlocked(self) → bool
size(self) → QSize
sizeHint(self) → QSize
sizeIncrement(self) → QSize
sizePolicy(self) → QSizePolicy
stackUnder(self, QWidget)
startTimer(self, int, timerType: Qt.TimerType = Qt.CoarseTimer) → int
staticMetaObject = <PyQt5.QtCore.QMetaObject object>
statusTip(self) → str
style(self) → QStyle
styleSheet(self) → str
tabletEvent(self, QTabletEvent)
testAttribute(self, Qt.WidgetAttribute) → bool
thread(self) → QThread
timerEvent(self, QTimerEvent)
toolTip(self) → str
toolTipDuration(self) → int
tr(self, str, disambiguation: str = None, n: int = -1) → str
underMouse(self) → bool
ungrabGesture(self, Qt.GestureType)
unsetCursor(self)
unsetLayoutDirection(self)
unsetLocale(self)
update(self)

update(self, QRect) update(self, QRegion) update(self, int, int, int, int)

updateGeometry(self)
updateMicroFocus(self)
updatesEnabled(self) → bool
visibleRegion(self) → QRegion
whatsThis(self) → str
wheelEvent(self, QWheelEvent)
width(self) → int
widthMM(self) → int
winId(self) → sip.voidptr
window(self) → QWidget
windowFilePath(self) → str
windowFlags(self) → Qt.WindowFlags
windowHandle(self) → QWindow
windowIcon(self) → QIcon
windowIconChanged

windowIconChanged(self, QIcon) [signal]

windowIconText(self) → str
windowIconTextChanged

windowIconTextChanged(self, str) [signal]

windowModality(self) → Qt.WindowModality
windowOpacity(self) → float
windowRole(self) → str
windowState(self) → Qt.WindowStates
windowTitle(self) → str
windowTitleChanged

windowTitleChanged(self, str) [signal]

windowType(self) → Qt.WindowType
x(self) → int
y(self) → int
class schrodinger.application.jaguar.gui.tabs.base_tab.ProvidesBasisMixin

Bases: object

A mixin for tabs that allow the user to select a basis set. This mixin is used to find tabs (via basePanel.getTab()) that can provide basis information.

Variables:basis_changed (PyQt5.QtCore.pyqtSignal) – A signal emitted when the basis set is changed
basis_changed
getBasis(mixed_name='Mixed')

Get the currently selected basis. If more than one basis set is specified, mixed_name will be returned. If the tab does not allow for specifying multiple basis sets, then this argument may be ignored.

Parameters:mixed_name (str) – The name to return if more than one basis set is specified
Returns:The currently selected basis
Return type:str
__init__

Initialize self. See help(type(self)) for accurate signature.

class schrodinger.application.jaguar.gui.tabs.base_tab.LoadsTheoryMixin

Bases: object

A mixin for tabs that load theory settings from an input file.

getTheoryLevel()

Get the current theory level

Returns:The current theory level. Will be one of: “DFT”, “HF”,, “LMP2” or “Mixed”
Return type:str
getAllUsedTheoryLevels()
Returns:A tuple of all theory levels used
Return type:tuple
getMethod()

Get the current method. If the level of theory is DFT, the method is the functional (ex. “B3LYP” or “PWB6K”). For all other levels of theory, the method is the level of theory (“HF” or “LMP2”).

Returns:The current method
Return type:str
getFunctional()

Get the current DFT functional (ex. “B3LYP” or “PWB6K”). If the theory level is not DFT, then None will be returned.

Returns:The current DFT functional or None
Return type:str or NoneType
__init__

Initialize self. See help(type(self)) for accurate signature.

class schrodinger.application.jaguar.gui.tabs.base_tab.ProvidesTheoryMixin

Bases: schrodinger.application.jaguar.gui.tabs.base_tab.LoadsTheoryMixin

A mixin for tabs that allow the user to select a theory level. This mixin is used to find tabs (via basePanel.getTab()) that can provide theory information.

Variables:method_changed (PyQt5.QtCore.pyqtSignal) – A signal emitted when the theory level or DFT functional is changed
method_changed
getTheoryLevelForEid(eid)

Return the theory level set for the specified entry ID.

Parameters:eid (int) – Entry ID to get theory level for.
Returns:The theory level set for this entry ID.
Return type:str
getMethodForEid(eid)

Return the method set for the specified entry ID.

Parameters:eid (int) – Entry ID to get the method for
Returns:Method for this entry ID
Return type:str
getCommonTheoryLevel()
Returns:If all entries have the same theory level set, return the theory. level Otherwise return None
Return type:str or None
getCommonMethod()
Returns:If all entries have the same method set, return the method. Otherwise return None
Return type:str or None
getCommonFunctional()
Returns:If all entries use DFT and have the same functional set, return the functional. Otherwise return None.
Return type:str or None
__init__

Initialize self. See help(type(self)) for accurate signature.

getAllUsedTheoryLevels()
Returns:A tuple of all theory levels used
Return type:tuple
getFunctional()

Get the current DFT functional (ex. “B3LYP” or “PWB6K”). If the theory level is not DFT, then None will be returned.

Returns:The current DFT functional or None
Return type:str or NoneType
getMethod()

Get the current method. If the level of theory is DFT, the method is the functional (ex. “B3LYP” or “PWB6K”). For all other levels of theory, the method is the level of theory (“HF” or “LMP2”).

Returns:The current method
Return type:str
getTheoryLevel()

Get the current theory level

Returns:The current theory level. Will be one of: “DFT”, “HF”,, “LMP2” or “Mixed”
Return type:str
class schrodinger.application.jaguar.gui.tabs.base_tab.ProvidesStructuresMixin

Bases: object

A mixin for tabs that allow the user to select structures. This mixin is used to find tabs (via basePanel.getTab()) that can provide structure information.

structureChanged
MULTIPLE_STRUC_JOB_TITLE = 'batch'
getStructureTitleForJobname()

Get the structure title to be used in the job name. If the tab includes multiple structures, then MULTIPLE_STRUC_JOB_TITLE should be returned. If no structures have been specified yet, then None should be returned.

Returns:The structure title
Return type:str or NoneType
__init__

Initialize self. See help(type(self)) for accurate signature.