schrodinger.application.jaguar.gui.tabs.scan_tab module

class schrodinger.application.jaguar.gui.tabs.scan_tab.ScanCoordinateColumns

Bases: object

Constants for the full (i.e. hidden as well) table columns

NAMES = ('Atom Indices', 'Coordinate', 'Type', 'Steps', 'Current Value', 'Starting Value', 'Final Value', 'Increment')
NUM_COLS = 8
INDICES = 0
COORD_NAME = 1
COORD_TYPE = 2
STEPS = 3
CURRENT_VAL = 4
START_VAL = 5
FINAL_VAL = 6
INCREMENT = 7
class schrodinger.application.jaguar.gui.tabs.scan_tab.ScanTab(parent, input_selector=None)

Bases: schrodinger.application.jaguar.gui.tabs.coordinates.CoordinateTab

NAME = 'Scan'
HELP_TOPIC = 'JAGUAR_TOPIC_SCAN_FOLDER'
UI_MODULES = (<module 'schrodinger.application.jaguar.gui.ui.scan_tab_ui' from '/Users/young/builds/2023-1/build/internal/lib/python3.8/site-packages/schrodinger/application/jaguar/gui/ui/scan_tab_ui.py'>,)
COLUMN = <schrodinger.application.jaguar.gui.tabs.scan_tab.ScanCoordinateColumns object>
MAX_ROW_COUNT = 5
setup()

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

getMmJagKeywords()

This function returns dictionary of mmjag keywords for this tab. Since this tab does not set any keywords it returns an empty dictionary.

Returns

mmjag keywords dictionary

Return type

dict

loadSettings(jag_input)

Restore scan coordinates settings from Jaguar handle.

Parameters

jag_input (schrodinger.application.jaguar.input.JaguarInput) – The Jaguar settings to base the tab settings on

saveSettings(jag_input, eid=None)

Save scan coordinate settings in jaguar handle.

See parent class for argumnet documentation

updateMapperWidgets(selected, deselected)

This slot is called when selection in coordinates table is changed.

Parameters
  • selected (QtCore.QItemSelection) – selected indices

  • deselected (QtCore.QItemSelection) – deselected indices

enableSelectedCoordinates(enable)

This function is called to enable/disable widgets in ‘selected coordinate’ box. When enable argument is False we also clear text in all widgets.

Parameters

enable (bool) – True/False to enable/disable widgets

deleteCurrentRow()

This function is called to delete row which is currently selected from the coordinates table.

deleteAllRows()

This function is called to delete all rows from the coordinates table.

addCoordinate(st, atoms, coordinate_type, start_value=None, final_value=None, increment=None)

Add new coordinate row.

Parameters
  • st (schrodinger.structure.Structure) – structure

  • atoms (list) – atom indices

  • coordinate_type (int) – coordinate type

  • start_value (float) – starting coordinate value

  • final_value (float) – final coordinate value

  • increment (float) – increment value

updateTotalStructures()

Calculate total number of structures to be calculated and update the label.

pickCompleted(atoms)

This slot is called when required number of atoms for the current coordinate type has been picked.

Parameters

atoms (list) – list of atom indices

DrawChildren = 2
DrawWindowBackground = 1
IgnoreMask = 4
class PaintDeviceMetric(value)

Bases: enum.Enum

An enumeration.

PdmWidth = 1
PdmHeight = 2
PdmWidthMM = 3
PdmHeightMM = 4
PdmNumColors = 5
PdmDepth = 6
PdmDpiX = 7
PdmDpiY = 8
PdmPhysicalDpiX = 9
PdmPhysicalDpiY = 10
PdmDevicePixelRatio = 11
PdmDevicePixelRatioScaled = 12
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(value)

Bases: enum.Flag

An enumeration.

DrawWindowBackground = 1
DrawChildren = 2
IgnoreMask = 4
__init__(parent, input_selector=None)

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

Parameters
acceptDrops(self) bool
accessibleDescription(self) str
accessibleName(self) str
actionEvent(self, QActionEvent)
actions(self) List[QAction]
activate()

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

activateWindow(self)
addAction(self, QAction)
addActions(self, Iterable[QAction])
adjustSize(self)
allCoordinatesDeleted
autoFillBackground(self) bool
backgroundRole(self) QPalette.ColorRole
baseSize(self) QSize
blockSignals(self, bool) bool
changeEvent(self, QEvent)
childAt(self, QPoint) QWidget
ScanTab.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
coordinateAdded
coordinateDeleted
coordinateDeselected
coordinateSelected
create(self, window: PyQt6.sip.voidptr = 0, initializeWindow: bool = True, destroyOldWindow: bool = True)
createWindowContainer(QWindow, parent: QWidget = None, flags: Qt.WindowType = Qt.WindowFlags()) QWidget
cursor(self) QCursor
customContextMenuRequested

customContextMenuRequested(self, QPoint) [signal]

customEvent(self, QEvent)
deactivate()

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

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) float
devicePixelRatioF(self) float
devicePixelRatioFScale() float
disconnect(QMetaObject.Connection) bool
disconnect(self) None
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) PyQt6.sip.voidptr
ensurePolished(self)
enterEvent(self, QEnterEvent)
error(msg)

Display an error dialog with the specified message

Parameters

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

event(self, QEvent) bool
eventFilter(self, QObject, QEvent) bool
find(PyQt6.sip.voidptr) QWidget
findChild(self, type, name: str = '', options: Qt.FindChildOption = Qt.FindChildrenRecursively) QObject
findChild(self, Tuple, name: str = '', options: Qt.FindChildOption = Qt.FindChildrenRecursively) QObject
findChildren(self, type, name: str = '', options: Qt.FindChildOption = Qt.FindChildrenRecursively) List[QObject]
findChildren(self, Tuple, name: str = '', options: Qt.FindChildOption = Qt.FindChildrenRecursively) List[QObject]
findChildren(self, type, QRegularExpression, options: Qt.FindChildOption = Qt.FindChildrenRecursively) List[QObject]
findChildren(self, Tuple, QRegularExpression, options: 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
getDefaultKeywords()

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

getMarkerAtoms()

Return a list of atoms that should be marked in the maestro workspace. Returns a list of unique atoms because marker can not be created more than one time on same atom.

Return type

list

getSelectedRowAtoms()

The function returns selected row atoms.

Returns

A list of atom indices

Return type

list

grab(self, rectangle: QRect = QRect(QPoint(0, 0), QSize(- 1, - 1))) QPixmap
grabGesture(self, Qt.GestureType, flags: Qt.GestureFlag = Qt.GestureFlags())
grabKeyboard(self)
grabMouse(self)
grabMouse(self, Union[QCursor, Qt.CursorShape]) None
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.InputMethodHint
inputMethodQuery(self, Qt.InputMethodQuery) Any
ScanTab.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)
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
locale(self) QLocale
logicalDpiX(self) int
logicalDpiY(self) int
lower(self)
mapFrom(self, QWidget, QPoint) QPoint
mapFrom(self, QWidget, QPointF) QPointF
mapFromGlobal(self, QPoint) QPoint
mapFromGlobal(self, QPointF) QPointF
mapFromParent(self, QPoint) QPoint
mapFromParent(self, QPointF) QPointF
mapTo(self, QWidget, QPoint) QPoint
mapTo(self, QWidget, QPointF) QPointF
mapToGlobal(self, QPoint) QPoint
mapToGlobal(self, QPointF) QPointF
mapToParent(self, QPoint) QPoint
mapToParent(self, QPointF) QPointF
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)
ScanTab.move(self, int, int) -> None
moveEvent(self, QMoveEvent)
moveToThread(self, QThread)
nativeEvent(self, QByteArray, PyQt6.sip.voidptr) Tuple[bool, PyQt6.sip.voidptr]
nativeParentWidget(self) QWidget
nextInFocusChain(self) QWidget
normalGeometry(self) QRect
objectName(self) str
objectNameChanged

objectNameChanged(self, str) [signal]

overrideWindowFlags(self, Qt.WindowType)
overrideWindowState(self, 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
refreshMarkers
releaseKeyboard(self)
releaseMouse(self)
releaseShortcut(self, int)
removeAction(self, QAction)
removeCoordinate(atoms, coordinate_type)

Remove atoms from model class.

Parameters
  • atoms (list) – atom indices

  • coordinate_type (int) – coordinate type

removeEventFilter(self, QObject)
render(self, QPaintDevice, targetOffset: QPoint = QPoint(), sourceRegion: QRegion = QRegion(), flags: QWidget.RenderFlag = QWidget.RenderFlags(QWidget.DrawWindowBackground | QWidget.DrawChildren))
render(self, QPainter, targetOffset: QPoint = QPoint(), sourceRegion: QRegion = QRegion(), flags: QWidget.RenderFlag = QWidget.RenderFlags(QWidget.DrawWindowBackground | QWidget.DrawChildren)) None
repaint(self)
ScanTab.repaint(self, int, int, int, int) -> None
repaint(self, QRect) None
repaint(self, QRegion) None
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.

resize(self, QSize)
ScanTab.resize(self, int, int) -> None
resizeEvent(self, QResizeEvent)
restoreGeometry(self, QByteArray) bool
saveGeometry(self) QByteArray
screen(self) QScreen
ScanTab.scroll(self, int, int)
ScanTab.scroll(self, int, int, QRect) -> None
sender(self) QObject
senderSignalIndex(self) int
setAcceptDrops(self, bool)
setAcceptableContraintEids(eids, picking_err)

Set the constraint picking restrictions

Parameters
  • eids (set) – The entry ids for which coordinate picking is acceptable.

  • picking_err (str or NoneType) – If picking should not be allowed at all, this is the text of the error that will displayed to the user. If picking is allowed, should be None.

setAccessibleDescription(self, str)
setAccessibleName(self, str)
setAttribute(self, Qt.WidgetAttribute, on: bool = True)
setAutoFillBackground(self, bool)
setBackgroundRole(self, QPalette.ColorRole)
ScanTab.setBaseSize(self, int, int)
setBaseSize(self, QSize) None
ScanTab.setContentsMargins(self, int, int, int, int)
setContentsMargins(self, QMargins) None
setContextMenuPolicy(self, Qt.ContextMenuPolicy)
setCursor(self, Union[QCursor, Qt.CursorShape])
setDisabled(self, bool)
setEnabled(self, bool)
setFixedHeight(self, int)
setFixedSize(self, QSize)
ScanTab.setFixedSize(self, int, int) -> None
setFixedWidth(self, int)
setFocus(self)
setFocus(self, Qt.FocusReason) None
setFocusPolicy(self, Qt.FocusPolicy)
setFocusProxy(self, QWidget)
setFont(self, QFont)
setForegroundRole(self, QPalette.ColorRole)
setGeometry(self, QRect)
ScanTab.setGeometry(self, int, int, int, int) -> None
setGraphicsEffect(self, QGraphicsEffect)
setHidden(self, bool)
setInputMethodHints(self, Qt.InputMethodHint)
setLayout(self, QLayout)
setLayoutDirection(self, Qt.LayoutDirection)
setLocale(self, QLocale)
setMask(self, QBitmap)
setMask(self, QRegion) None
setMaximumHeight(self, int)
ScanTab.setMaximumSize(self, int, int)
setMaximumSize(self, QSize) None
setMaximumWidth(self, int)
setMinimumHeight(self, int)
ScanTab.setMinimumSize(self, int, int)
setMinimumSize(self, QSize) None
setMinimumWidth(self, int)
setMouseTracking(self, bool)
setObjectName(self, str)
setPalette(self, QPalette)
setParent(self, QWidget)
setParent(self, QWidget, Qt.WindowType) None
setProperty(self, str, Any) bool
setScreen(self, QScreen)
setShortcutAutoRepeat(self, int, enabled: bool = True)
setShortcutEnabled(self, int, enabled: bool = True)
ScanTab.setSizeIncrement(self, int, int)
setSizeIncrement(self, QSize) None
setSizePolicy(self, QSizePolicy)
setSizePolicy(self, QSizePolicy.Policy, QSizePolicy.Policy) None
setStatusTip(self, str)
setStyle(self, QStyle)
setStyleSheet(self, str)
ScanTab.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, Qt.WindowType)
setWindowIcon(self, QIcon)
setWindowIconText(self, str)
setWindowModality(self, Qt.WindowModality)
setWindowModified(self, bool)
setWindowOpacity(self, float)
setWindowRole(self, str)
setWindowState(self, 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 = <PyQt6.QtCore.QMetaObject object>
statusTip(self) str
stopPicking()

Stop constraint picking

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(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) None
update(self, QRegion) None
ScanTab.update(self, int, int, int, int) -> None
updateGeometry(self)
updateMicroFocus(self, query: Qt.InputMethodQuery = Qt.ImQueryAll)
updatesEnabled(self) bool
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

visibleRegion(self) QRegion
warning(msg)

Display a warning dialog with the specified message

Parameters

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

whatsThis(self) str
wheelEvent(self, QWheelEvent)
width(self) int
widthMM(self) int
winId(self) PyQt6.sip.voidptr
window(self) QWidget
windowFilePath(self) str
windowFlags(self) Qt.WindowType
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.WindowState
windowTitle(self) str
windowTitleChanged

windowTitleChanged(self, str) [signal]

windowType(self) Qt.WindowType
x(self) int
y(self) int
class schrodinger.application.jaguar.gui.tabs.scan_tab.ScanTabNextGeom(parent, input_selector=None)

Bases: schrodinger.application.jaguar.gui.tabs.scan_tab.ScanTab

A scan tab that allows the user to configure how the determine the next initial geometry

UI_MODULES = (<module 'schrodinger.application.jaguar.gui.ui.scan_tab_ui' from '/Users/young/builds/2023-1/build/internal/lib/python3.8/site-packages/schrodinger/application/jaguar/gui/ui/scan_tab_ui.py'>, <module 'schrodinger.application.jaguar.gui.ui.scan_tab_nextgeom_ui' from '/Users/young/builds/2023-1/build/internal/lib/python3.8/site-packages/schrodinger/application/jaguar/gui/ui/scan_tab_nextgeom_ui.py'>)
class NextGeomFrom(value)

Bases: enum.Enum

An enumeration.

Init = 1
Prev = 2
setup()

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

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.

nextGeom()

Return the setting for the next initial geometry

Returns

The next initial geometry settings

Return type

NextGeomFrom

COLUMN = <schrodinger.application.jaguar.gui.tabs.scan_tab.ScanCoordinateColumns object>
DrawChildren = 2
DrawWindowBackground = 1
HELP_TOPIC = 'JAGUAR_TOPIC_SCAN_FOLDER'
IgnoreMask = 4
MAX_ROW_COUNT = 5
NAME = 'Scan'
class PaintDeviceMetric(value)

Bases: enum.Enum

An enumeration.

PdmWidth = 1
PdmHeight = 2
PdmWidthMM = 3
PdmHeightMM = 4
PdmNumColors = 5
PdmDepth = 6
PdmDpiX = 7
PdmDpiY = 8
PdmPhysicalDpiX = 9
PdmPhysicalDpiY = 10
PdmDevicePixelRatio = 11
PdmDevicePixelRatioScaled = 12
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(value)

Bases: enum.Flag

An enumeration.

DrawWindowBackground = 1
DrawChildren = 2
IgnoreMask = 4
__init__(parent, input_selector=None)

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

Parameters
acceptDrops(self) bool
accessibleDescription(self) str
accessibleName(self) str
actionEvent(self, QActionEvent)
actions(self) List[QAction]
activate()

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

activateWindow(self)
addAction(self, QAction)
addActions(self, Iterable[QAction])
addCoordinate(st, atoms, coordinate_type, start_value=None, final_value=None, increment=None)

Add new coordinate row.

Parameters
  • st (schrodinger.structure.Structure) – structure

  • atoms (list) – atom indices

  • coordinate_type (int) – coordinate type

  • start_value (float) – starting coordinate value

  • final_value (float) – final coordinate value

  • increment (float) – increment value

adjustSize(self)
allCoordinatesDeleted
autoFillBackground(self) bool
backgroundRole(self) QPalette.ColorRole
baseSize(self) QSize
blockSignals(self, bool) bool
changeEvent(self, QEvent)
childAt(self, QPoint) QWidget
ScanTabNextGeom.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
coordinateAdded
coordinateDeleted
coordinateDeselected
coordinateSelected
create(self, window: PyQt6.sip.voidptr = 0, initializeWindow: bool = True, destroyOldWindow: bool = True)
createWindowContainer(QWindow, parent: QWidget = None, flags: Qt.WindowType = Qt.WindowFlags()) QWidget
cursor(self) QCursor
customContextMenuRequested

customContextMenuRequested(self, QPoint) [signal]

customEvent(self, QEvent)
deactivate()

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

deleteAllRows()

This function is called to delete all rows from the coordinates table.

deleteCurrentRow()

This function is called to delete row which is currently selected from the coordinates table.

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) float
devicePixelRatioF(self) float
devicePixelRatioFScale() float
disconnect(QMetaObject.Connection) bool
disconnect(self) None
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) PyQt6.sip.voidptr
enableSelectedCoordinates(enable)

This function is called to enable/disable widgets in ‘selected coordinate’ box. When enable argument is False we also clear text in all widgets.

Parameters

enable (bool) – True/False to enable/disable widgets

ensurePolished(self)
enterEvent(self, QEnterEvent)
error(msg)

Display an error dialog with the specified message

Parameters

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

event(self, QEvent) bool
eventFilter(self, QObject, QEvent) bool
find(PyQt6.sip.voidptr) QWidget
findChild(self, type, name: str = '', options: Qt.FindChildOption = Qt.FindChildrenRecursively) QObject
findChild(self, Tuple, name: str = '', options: Qt.FindChildOption = Qt.FindChildrenRecursively) QObject
findChildren(self, type, name: str = '', options: Qt.FindChildOption = Qt.FindChildrenRecursively) List[QObject]
findChildren(self, Tuple, name: str = '', options: Qt.FindChildOption = Qt.FindChildrenRecursively) List[QObject]
findChildren(self, type, QRegularExpression, options: Qt.FindChildOption = Qt.FindChildrenRecursively) List[QObject]
findChildren(self, Tuple, QRegularExpression, options: 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
getDefaultKeywords()

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

getMarkerAtoms()

Return a list of atoms that should be marked in the maestro workspace. Returns a list of unique atoms because marker can not be created more than one time on same atom.

Return type

list

getMmJagKeywords()

This function returns dictionary of mmjag keywords for this tab. Since this tab does not set any keywords it returns an empty dictionary.

Returns

mmjag keywords dictionary

Return type

dict

getSelectedRowAtoms()

The function returns selected row atoms.

Returns

A list of atom indices

Return type

list

grab(self, rectangle: QRect = QRect(QPoint(0, 0), QSize(- 1, - 1))) QPixmap
grabGesture(self, Qt.GestureType, flags: Qt.GestureFlag = Qt.GestureFlags())
grabKeyboard(self)
grabMouse(self)
grabMouse(self, Union[QCursor, Qt.CursorShape]) None
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.InputMethodHint
inputMethodQuery(self, Qt.InputMethodQuery) Any
ScanTabNextGeom.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)
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
loadSettings(jag_input)

Restore scan coordinates settings from Jaguar handle.

Parameters

jag_input (schrodinger.application.jaguar.input.JaguarInput) – The Jaguar settings to base the tab settings on

locale(self) QLocale
logicalDpiX(self) int
logicalDpiY(self) int
lower(self)
mapFrom(self, QWidget, QPoint) QPoint
mapFrom(self, QWidget, QPointF) QPointF
mapFromGlobal(self, QPoint) QPoint
mapFromGlobal(self, QPointF) QPointF
mapFromParent(self, QPoint) QPoint
mapFromParent(self, QPointF) QPointF
mapTo(self, QWidget, QPoint) QPoint
mapTo(self, QWidget, QPointF) QPointF
mapToGlobal(self, QPoint) QPoint
mapToGlobal(self, QPointF) QPointF
mapToParent(self, QPoint) QPoint
mapToParent(self, QPointF) QPointF
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)
ScanTabNextGeom.move(self, int, int) -> None
moveEvent(self, QMoveEvent)
moveToThread(self, QThread)
nativeEvent(self, QByteArray, PyQt6.sip.voidptr) Tuple[bool, PyQt6.sip.voidptr]
nativeParentWidget(self) QWidget
nextInFocusChain(self) QWidget
normalGeometry(self) QRect
objectName(self) str
objectNameChanged

objectNameChanged(self, str) [signal]

overrideWindowFlags(self, Qt.WindowType)
overrideWindowState(self, 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
pickCompleted(atoms)

This slot is called when required number of atoms for the current coordinate type has been picked.

Parameters

atoms (list) – list of atom indices

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
refreshMarkers
releaseKeyboard(self)
releaseMouse(self)
releaseShortcut(self, int)
removeAction(self, QAction)
removeCoordinate(atoms, coordinate_type)

Remove atoms from model class.

Parameters
  • atoms (list) – atom indices

  • coordinate_type (int) – coordinate type

removeEventFilter(self, QObject)
render(self, QPaintDevice, targetOffset: QPoint = QPoint(), sourceRegion: QRegion = QRegion(), flags: QWidget.RenderFlag = QWidget.RenderFlags(QWidget.DrawWindowBackground | QWidget.DrawChildren))
render(self, QPainter, targetOffset: QPoint = QPoint(), sourceRegion: QRegion = QRegion(), flags: QWidget.RenderFlag = QWidget.RenderFlags(QWidget.DrawWindowBackground | QWidget.DrawChildren)) None
repaint(self)
ScanTabNextGeom.repaint(self, int, int, int, int) -> None
repaint(self, QRect) None
repaint(self, QRegion) None
resize(self, QSize)
ScanTabNextGeom.resize(self, int, int) -> None
resizeEvent(self, QResizeEvent)
restoreGeometry(self, QByteArray) bool
saveGeometry(self) QByteArray
saveSettings(jag_input, eid=None)

Save scan coordinate settings in jaguar handle.

See parent class for argumnet documentation

screen(self) QScreen
ScanTabNextGeom.scroll(self, int, int)
ScanTabNextGeom.scroll(self, int, int, QRect) -> None
sender(self) QObject
senderSignalIndex(self) int
setAcceptDrops(self, bool)
setAcceptableContraintEids(eids, picking_err)

Set the constraint picking restrictions

Parameters
  • eids (set) – The entry ids for which coordinate picking is acceptable.

  • picking_err (str or NoneType) – If picking should not be allowed at all, this is the text of the error that will displayed to the user. If picking is allowed, should be None.

setAccessibleDescription(self, str)
setAccessibleName(self, str)
setAttribute(self, Qt.WidgetAttribute, on: bool = True)
setAutoFillBackground(self, bool)
setBackgroundRole(self, QPalette.ColorRole)
ScanTabNextGeom.setBaseSize(self, int, int)
setBaseSize(self, QSize) None
ScanTabNextGeom.setContentsMargins(self, int, int, int, int)
setContentsMargins(self, QMargins) None
setContextMenuPolicy(self, Qt.ContextMenuPolicy)
setCursor(self, Union[QCursor, Qt.CursorShape])
setDisabled(self, bool)
setEnabled(self, bool)
setFixedHeight(self, int)
setFixedSize(self, QSize)
ScanTabNextGeom.setFixedSize(self, int, int) -> None
setFixedWidth(self, int)
setFocus(self)
setFocus(self, Qt.FocusReason) None
setFocusPolicy(self, Qt.FocusPolicy)
setFocusProxy(self, QWidget)
setFont(self, QFont)
setForegroundRole(self, QPalette.ColorRole)
setGeometry(self, QRect)
ScanTabNextGeom.setGeometry(self, int, int, int, int) -> None
setGraphicsEffect(self, QGraphicsEffect)
setHidden(self, bool)
setInputMethodHints(self, Qt.InputMethodHint)
setLayout(self, QLayout)
setLayoutDirection(self, Qt.LayoutDirection)
setLocale(self, QLocale)
setMask(self, QBitmap)
setMask(self, QRegion) None
setMaximumHeight(self, int)
ScanTabNextGeom.setMaximumSize(self, int, int)
setMaximumSize(self, QSize) None
setMaximumWidth(self, int)
setMinimumHeight(self, int)
ScanTabNextGeom.setMinimumSize(self, int, int)
setMinimumSize(self, QSize) None
setMinimumWidth(self, int)
setMouseTracking(self, bool)
setObjectName(self, str)
setPalette(self, QPalette)
setParent(self, QWidget)
setParent(self, QWidget, Qt.WindowType) None
setProperty(self, str, Any) bool
setScreen(self, QScreen)
setShortcutAutoRepeat(self, int, enabled: bool = True)
setShortcutEnabled(self, int, enabled: bool = True)
ScanTabNextGeom.setSizeIncrement(self, int, int)
setSizeIncrement(self, QSize) None
setSizePolicy(self, QSizePolicy)
setSizePolicy(self, QSizePolicy.Policy, QSizePolicy.Policy) None
setStatusTip(self, str)
setStyle(self, QStyle)
setStyleSheet(self, str)
ScanTabNextGeom.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, Qt.WindowType)
setWindowIcon(self, QIcon)
setWindowIconText(self, str)
setWindowModality(self, Qt.WindowModality)
setWindowModified(self, bool)
setWindowOpacity(self, float)
setWindowRole(self, str)
setWindowState(self, 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 = <PyQt6.QtCore.QMetaObject object>
statusTip(self) str
stopPicking()

Stop constraint picking

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(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) None
update(self, QRegion) None
ScanTabNextGeom.update(self, int, int, int, int) -> None
updateGeometry(self)
updateMapperWidgets(selected, deselected)

This slot is called when selection in coordinates table is changed.

Parameters
  • selected (QtCore.QItemSelection) – selected indices

  • deselected (QtCore.QItemSelection) – deselected indices

updateMicroFocus(self, query: Qt.InputMethodQuery = Qt.ImQueryAll)
updateTotalStructures()

Calculate total number of structures to be calculated and update the label.

updatesEnabled(self) bool
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

visibleRegion(self) QRegion
warning(msg)

Display a warning dialog with the specified message

Parameters

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

whatsThis(self) str
wheelEvent(self, QWheelEvent)
width(self) int
widthMM(self) int
winId(self) PyQt6.sip.voidptr
window(self) QWidget
windowFilePath(self) str
windowFlags(self) Qt.WindowType
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.WindowState
windowTitle(self) str
windowTitleChanged

windowTitleChanged(self, str) [signal]

windowType(self) Qt.WindowType
x(self) int
y(self) int
class schrodinger.application.jaguar.gui.tabs.scan_tab.ScanCoordinateData(st, atoms, coordinate_type, start_value=None, final_value=None, increment=None)

Bases: schrodinger.application.jaguar.gui.tabs.coordinates.CoordinateData

This class stores all data for a single scan coordinate.

Variables
  • COORDINATE_FUNCS (dict) – dictionary that maps coordinate type to mmct function uses to calculate coordinate value.

  • st (schrodinger.structure.Structure) – ct structure for which coordinates are defined

  • atom_indices (list) – indices of atoms, which define this coordinate

  • coordinate_name (str) – name of this coordinate based on atom indices

  • coordinate_type (int) – coordinate type

  • num_steps (int) – number of steps

  • current_value (float) – current value of this coordinate

  • start_value (float) – starting coordinate value

  • final_value (float) – final coordinate value

  • increment (float) – increment value

COORDINATE_FUNCS = {0: <built-in function mmct_atom_get_x>, 1: <built-in function mmct_atom_get_y>, 2: <built-in function mmct_atom_get_z>, 4: <built-in function mmct_atom_get_distance>, 5: <built-in function mmct_atom_get_bond_angle>, 6: <built-in function mmct_atom_get_dihedral_angle>}
COORDINATE_DISTANCE_OFFSET = 0.2
COORDINATE_DISTANCE_INCREMENT = 0.1
COORDINATE_ANGLE_OFFSET = 20.0
COORDINATE_ANGLE_INCREMENT = 5.0
__init__(st, atoms, coordinate_type, start_value=None, final_value=None, increment=None)

Initialize coordinates data given a structure, set of atom indices and coordinate type.

Parameters
  • st (schrodinger.structure.Structure) – structure

  • atoms (list) – atom indices

  • coordinate_type (int) – coordinate type

  • start_value (float) – starting coordinate value

  • final_value (float) – final coordinate value

  • increment (float) – increment value

validate()

This function checks that atom indices contain correct number of elements for a given coordinate type. If thats not the case ValueError exception is raised.

class schrodinger.application.jaguar.gui.tabs.scan_tab.ScanCoordinatesDelegate

Bases: PyQt6.QtWidgets.QItemDelegate

This delegate is used to define how float coordinate values are displayed in a line edit widget. This class is needed for mapping between table view and other widgets as defined via QDataWidgetMapper.

COLUMN = <schrodinger.application.jaguar.gui.tabs.scan_tab.ScanCoordinateColumns object>
setEditorData(editor, index)

This function is used to initialize editor with the relevant data.

Parameters
  • editor (QtWidgets.QWidget) – editor

  • index (QtCore.QModelIndex) – index of data in source model

setModelData(editor, model, index)

This function is responsible for transferring data from the editors back to the model. So, here we convert text string into float number.

Parameters
  • editor (QtWidgets.QWidget) – editor

  • model (QtCore.QAbstractItemModel) – data model

  • index (QtCore.QModelIndex) – index of data in source model

EditNextItem = 1
EditPreviousItem = 2
class EndEditHint(value)

Bases: enum.Enum

An enumeration.

NoHint = 0
EditNextItem = 1
EditPreviousItem = 2
SubmitModelCache = 3
RevertModelCache = 4
NoHint = 0
RevertModelCache = 4
SubmitModelCache = 3
__init__(*args, **kwargs)
blockSignals(self, bool) bool
childEvent(self, QChildEvent)
children(self) List[QObject]
closeEditor

closeEditor(self, QWidget, hint: QAbstractItemDelegate.EndEditHint = QAbstractItemDelegate.NoHint) [signal]

commitData

commitData(self, QWidget) [signal]

connectNotify(self, QMetaMethod)
createEditor(self, QWidget, QStyleOptionViewItem, QModelIndex) QWidget
customEvent(self, QEvent)
deleteLater(self)
destroyEditor(self, QWidget, QModelIndex)
destroyed

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

disconnect(QMetaObject.Connection) bool
disconnect(self) None
disconnectNotify(self, QMetaMethod)
drawBackground(self, QPainter, QStyleOptionViewItem, QModelIndex)
drawCheck(self, QPainter, QStyleOptionViewItem, QRect, Qt.CheckState)
drawDecoration(self, QPainter, QStyleOptionViewItem, QRect, QPixmap)
drawDisplay(self, QPainter, QStyleOptionViewItem, QRect, str)
drawFocus(self, QPainter, QStyleOptionViewItem, QRect)
dumpObjectInfo(self)
dumpObjectTree(self)
dynamicPropertyNames(self) List[QByteArray]
editorEvent(self, QEvent, QAbstractItemModel, QStyleOptionViewItem, QModelIndex) bool
event(self, QEvent) bool
eventFilter(self, QObject, QEvent) bool
findChild(self, type, name: str = '', options: Qt.FindChildOption = Qt.FindChildrenRecursively) QObject
findChild(self, Tuple, name: str = '', options: Qt.FindChildOption = Qt.FindChildrenRecursively) QObject
findChildren(self, type, name: str = '', options: Qt.FindChildOption = Qt.FindChildrenRecursively) List[QObject]
findChildren(self, Tuple, name: str = '', options: Qt.FindChildOption = Qt.FindChildrenRecursively) List[QObject]
findChildren(self, type, QRegularExpression, options: Qt.FindChildOption = Qt.FindChildrenRecursively) List[QObject]
findChildren(self, Tuple, QRegularExpression, options: Qt.FindChildOption = Qt.FindChildrenRecursively) List[QObject]
hasClipping(self) bool
helpEvent(self, QHelpEvent, QAbstractItemView, QStyleOptionViewItem, QModelIndex) bool
inherits(self, str) bool
installEventFilter(self, QObject)
isSignalConnected(self, QMetaMethod) bool
isWidgetType(self) bool
isWindowType(self) bool
itemEditorFactory(self) QItemEditorFactory
killTimer(self, int)
metaObject(self) QMetaObject
moveToThread(self, QThread)
objectName(self) str
objectNameChanged

objectNameChanged(self, str) [signal]

paint(self, QPainter, QStyleOptionViewItem, QModelIndex)
parent(self) QObject
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.

receivers(self, PYQT_SIGNAL) int
removeEventFilter(self, QObject)
sender(self) QObject
senderSignalIndex(self) int
setClipping(self, bool)
setItemEditorFactory(self, QItemEditorFactory)
setObjectName(self, str)
setParent(self, QObject)
setProperty(self, str, Any) bool
signalsBlocked(self) bool
sizeHint(self, QStyleOptionViewItem, QModelIndex) QSize
sizeHintChanged

sizeHintChanged(self, QModelIndex) [signal]

startTimer(self, int, timerType: Qt.TimerType = Qt.CoarseTimer) int
staticMetaObject = <PyQt6.QtCore.QMetaObject object>
thread(self) QThread
timerEvent(self, QTimerEvent)
tr(str, disambiguation: str = None, n: int = - 1) str
updateEditorGeometry(self, QWidget, QStyleOptionViewItem, QModelIndex)
class schrodinger.application.jaguar.gui.tabs.scan_tab.ScanCoordinatesProxyModel(parent)

Bases: PyQt6.QtCore.QSortFilterProxyModel

A proxy model that allows to hide columns.

COLUMN = <schrodinger.application.jaguar.gui.tabs.scan_tab.ScanCoordinateColumns object>
__init__(parent)
filterAcceptsColumn(column, index)

Modified from the parent class to define columns that should be visible.

Parameters
  • column (int) – the column index

  • index (QModelIndex) – Unused, but kept for PyQt compatibility

class CheckIndexOption(value)

Bases: enum.Flag

An enumeration.

NoOption = 0
IndexIsValid = 1
DoNotUseParent = 2
ParentIsInvalid = 4
HorizontalSortHint = 2
class LayoutChangeHint(value)

Bases: enum.Enum

An enumeration.

NoLayoutChangeHint = 0
VerticalSortHint = 1
HorizontalSortHint = 2
NoLayoutChangeHint = 0
VerticalSortHint = 1
autoAcceptChildRows(self) bool
autoAcceptChildRowsChanged

autoAcceptChildRowsChanged(self, bool) [signal]

ScanCoordinatesProxyModel.beginInsertColumns(self, QModelIndex, int, int)
ScanCoordinatesProxyModel.beginInsertRows(self, QModelIndex, int, int)
ScanCoordinatesProxyModel.beginMoveColumns(self, QModelIndex, int, int, QModelIndex, int) -> bool
ScanCoordinatesProxyModel.beginMoveRows(self, QModelIndex, int, int, QModelIndex, int) -> bool
ScanCoordinatesProxyModel.beginRemoveColumns(self, QModelIndex, int, int)
ScanCoordinatesProxyModel.beginRemoveRows(self, QModelIndex, int, int)
beginResetModel(self)
blockSignals(self, bool) bool
buddy(self, QModelIndex) QModelIndex
canDropMimeData(self, QMimeData, Qt.DropAction, int, int, QModelIndex) bool
canFetchMore(self, QModelIndex) bool
ScanCoordinatesProxyModel.changePersistentIndex(self, QModelIndex, QModelIndex)
changePersistentIndexList(self, Iterable[QModelIndex], Iterable[QModelIndex])
checkIndex(self, QModelIndex, options: QAbstractItemModel.CheckIndexOption = QAbstractItemModel.CheckIndexOption.NoOption) bool
childEvent(self, QChildEvent)
children(self) List[QObject]
clearItemData(self, QModelIndex) bool
columnCount(self, parent: QModelIndex = QModelIndex()) int
columnsAboutToBeInserted

columnsAboutToBeInserted(self, QModelIndex, int, int) [signal]

columnsAboutToBeMoved

columnsAboutToBeMoved(self, QModelIndex, int, int, QModelIndex, int) [signal]

columnsAboutToBeRemoved

columnsAboutToBeRemoved(self, QModelIndex, int, int) [signal]

columnsInserted

columnsInserted(self, QModelIndex, int, int) [signal]

columnsMoved

columnsMoved(self, QModelIndex, int, int, QModelIndex, int) [signal]

columnsRemoved

columnsRemoved(self, QModelIndex, int, int) [signal]

connectNotify(self, QMetaMethod)
ScanCoordinatesProxyModel.createIndex(self, int, int, object: object = 0) -> QModelIndex
customEvent(self, QEvent)
data(self, QModelIndex, role: int = Qt.DisplayRole) Any
dataChanged

dataChanged(self, QModelIndex, QModelIndex, roles: Iterable[int] = []) [signal]

ScanCoordinatesProxyModel.decodeData(self, int, int, QModelIndex, QDataStream) -> bool
deleteLater(self)
destroyed

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

disconnect(QMetaObject.Connection) bool
disconnect(self) None
disconnectNotify(self, QMetaMethod)
dropMimeData(self, QMimeData, Qt.DropAction, int, int, QModelIndex) bool
dumpObjectInfo(self)
dumpObjectTree(self)
dynamicPropertyNames(self) List[QByteArray]
dynamicSortFilter(self) bool
dynamicSortFilterChanged

dynamicSortFilterChanged(self, bool) [signal]

encodeData(self, Iterable[QModelIndex], QDataStream)
endInsertColumns(self)
endInsertRows(self)
endMoveColumns(self)
endMoveRows(self)
endRemoveColumns(self)
endRemoveRows(self)
endResetModel(self)
event(self, QEvent) bool
eventFilter(self, QObject, QEvent) bool
fetchMore(self, QModelIndex)
filterAcceptsRow(self, int, QModelIndex) bool
filterCaseSensitivity(self) Qt.CaseSensitivity
filterCaseSensitivityChanged

filterCaseSensitivityChanged(self, Qt.CaseSensitivity) [signal]

filterKeyColumn(self) int
filterRegularExpression(self) QRegularExpression
filterRole(self) int
filterRoleChanged

filterRoleChanged(self, int) [signal]

findChild(self, type, name: str = '', options: Qt.FindChildOption = Qt.FindChildrenRecursively) QObject
findChild(self, Tuple, name: str = '', options: Qt.FindChildOption = Qt.FindChildrenRecursively) QObject
findChildren(self, type, name: str = '', options: Qt.FindChildOption = Qt.FindChildrenRecursively) List[QObject]
findChildren(self, Tuple, name: str = '', options: Qt.FindChildOption = Qt.FindChildrenRecursively) List[QObject]
findChildren(self, type, QRegularExpression, options: Qt.FindChildOption = Qt.FindChildrenRecursively) List[QObject]
findChildren(self, Tuple, QRegularExpression, options: Qt.FindChildOption = Qt.FindChildrenRecursively) List[QObject]
flags(self, QModelIndex) Qt.ItemFlag
hasChildren(self, parent: QModelIndex = QModelIndex()) bool
ScanCoordinatesProxyModel.hasIndex(self, int, int, parent: QModelIndex = QModelIndex()) -> bool
headerData(self, int, Qt.Orientation, role: int = Qt.DisplayRole) Any
headerDataChanged

headerDataChanged(self, Qt.Orientation, int, int) [signal]

ScanCoordinatesProxyModel.index(self, int, int, parent: QModelIndex = QModelIndex()) -> QModelIndex
inherits(self, str) bool
insertColumn(self, int, parent: QModelIndex = QModelIndex()) bool
ScanCoordinatesProxyModel.insertColumns(self, int, int, parent: QModelIndex = QModelIndex()) -> bool
insertRow(self, int, parent: QModelIndex = QModelIndex()) bool
ScanCoordinatesProxyModel.insertRows(self, int, int, parent: QModelIndex = QModelIndex()) -> bool
installEventFilter(self, QObject)
invalidate(self)
invalidateColumnsFilter(self)
invalidateFilter(self)
invalidateRowsFilter(self)
isRecursiveFilteringEnabled(self) bool
isSignalConnected(self, QMetaMethod) bool
isSortLocaleAware(self) bool
isWidgetType(self) bool
isWindowType(self) bool
itemData(self, QModelIndex) Dict[int, Any]
killTimer(self, int)
layoutAboutToBeChanged

layoutAboutToBeChanged(self, parents: Iterable[QPersistentModelIndex] = [], hint: QAbstractItemModel.LayoutChangeHint = QAbstractItemModel.NoLayoutChangeHint) [signal]

layoutChanged

layoutChanged(self, parents: Iterable[QPersistentModelIndex] = [], hint: QAbstractItemModel.LayoutChangeHint = QAbstractItemModel.NoLayoutChangeHint) [signal]

ScanCoordinatesProxyModel.lessThan(self, QModelIndex, QModelIndex) -> bool
mapFromSource(self, QModelIndex) QModelIndex
mapSelectionFromSource(self, QItemSelection) QItemSelection
mapSelectionToSource(self, QItemSelection) QItemSelection
mapToSource(self, QModelIndex) QModelIndex
match(self, QModelIndex, int, Any, hits: int = 1, flags: Qt.MatchFlag = Qt.MatchFlags(Qt.MatchStartsWith | Qt.MatchWrap)) List[QModelIndex]
metaObject(self) QMetaObject
mimeData(self, Iterable[QModelIndex]) QMimeData
mimeTypes(self) List[str]
modelAboutToBeReset

modelAboutToBeReset(self) [signal]

modelReset

modelReset(self) [signal]

ScanCoordinatesProxyModel.moveColumn(self, QModelIndex, int, QModelIndex, int) -> bool
ScanCoordinatesProxyModel.moveColumns(self, QModelIndex, int, int, QModelIndex, int) -> bool
ScanCoordinatesProxyModel.moveRow(self, QModelIndex, int, QModelIndex, int) -> bool
ScanCoordinatesProxyModel.moveRows(self, QModelIndex, int, int, QModelIndex, int) -> bool
moveToThread(self, QThread)
objectName(self) str
objectNameChanged

objectNameChanged(self, str) [signal]

parent(self, QModelIndex) QModelIndex
parent(self) QObject
persistentIndexList(self) List[QModelIndex]
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.

receivers(self, PYQT_SIGNAL) int
recursiveFilteringEnabledChanged

recursiveFilteringEnabledChanged(self, bool) [signal]

removeColumn(self, int, parent: QModelIndex = QModelIndex()) bool
ScanCoordinatesProxyModel.removeColumns(self, int, int, parent: QModelIndex = QModelIndex()) -> bool
removeEventFilter(self, QObject)
removeRow(self, int, parent: QModelIndex = QModelIndex()) bool
ScanCoordinatesProxyModel.removeRows(self, int, int, parent: QModelIndex = QModelIndex()) -> bool
resetInternalData(self)
revert(self)
roleNames(self) Dict[int, QByteArray]
rowCount(self, parent: QModelIndex = QModelIndex()) int
rowsAboutToBeInserted

rowsAboutToBeInserted(self, QModelIndex, int, int) [signal]

rowsAboutToBeMoved

rowsAboutToBeMoved(self, QModelIndex, int, int, QModelIndex, int) [signal]

rowsAboutToBeRemoved

rowsAboutToBeRemoved(self, QModelIndex, int, int) [signal]

rowsInserted

rowsInserted(self, QModelIndex, int, int) [signal]

rowsMoved

rowsMoved(self, QModelIndex, int, int, QModelIndex, int) [signal]

rowsRemoved

rowsRemoved(self, QModelIndex, int, int) [signal]

sender(self) QObject
senderSignalIndex(self) int
setAutoAcceptChildRows(self, bool)
setData(self, QModelIndex, Any, role: int = Qt.EditRole) bool
setDynamicSortFilter(self, bool)
setFilterCaseSensitivity(self, Qt.CaseSensitivity)
setFilterFixedString(self, str)
setFilterKeyColumn(self, int)
setFilterRegularExpression(self, QRegularExpression)
setFilterRegularExpression(self, str) None
setFilterRole(self, int)
setFilterWildcard(self, str)
setHeaderData(self, int, Qt.Orientation, Any, role: int = Qt.EditRole) bool
setItemData(self, QModelIndex, Dict[int, Any]) bool
setObjectName(self, str)
setParent(self, QObject)
setProperty(self, str, Any) bool
setRecursiveFilteringEnabled(self, bool)
setSortCaseSensitivity(self, Qt.CaseSensitivity)
setSortLocaleAware(self, bool)
setSortRole(self, int)
setSourceModel(self, QAbstractItemModel)
ScanCoordinatesProxyModel.sibling(self, int, int, QModelIndex) -> QModelIndex
signalsBlocked(self) bool
sort(self, int, order: Qt.SortOrder = Qt.AscendingOrder)
sortCaseSensitivity(self) Qt.CaseSensitivity
sortCaseSensitivityChanged

sortCaseSensitivityChanged(self, Qt.CaseSensitivity) [signal]

sortColumn(self) int
sortLocaleAwareChanged

sortLocaleAwareChanged(self, bool) [signal]

sortOrder(self) Qt.SortOrder
sortRole(self) int
sortRoleChanged

sortRoleChanged(self, int) [signal]

sourceModel(self) QAbstractItemModel
sourceModelChanged

sourceModelChanged(self) [signal]

span(self, QModelIndex) QSize
startTimer(self, int, timerType: Qt.TimerType = Qt.CoarseTimer) int
staticMetaObject = <PyQt6.QtCore.QMetaObject object>
submit(self) bool
supportedDragActions(self) Qt.DropAction
supportedDropActions(self) Qt.DropAction
thread(self) QThread
timerEvent(self, QTimerEvent)
tr(str, disambiguation: str = None, n: int = - 1) str
class schrodinger.application.jaguar.gui.tabs.scan_tab.ScanCoordinatesModel(parent=None)

Bases: schrodinger.application.jaguar.gui.tabs.coordinates.CoordinatesModel

A model to store scan tab coordinates data.

COLUMN = <schrodinger.application.jaguar.gui.tabs.scan_tab.ScanCoordinateColumns object>
addCoordinate(st, atoms, coordinate_type, start_value=None, final_value=None, increment=None)

Add new coordinate row.

Parameters
  • st (schrodinger.structure.Structure) – structure

  • atoms (list) – atom indices

  • coordinate_type (int) – coordinate type

  • start_value (float) – starting coordinate value

  • final_value (float) – final coordinate value

  • increment (float) – increment value

Returns

returns True if this is a new coordinate and False otherwise.

Return type

bool

data(index, role=ItemDataRole.DisplayRole)

Retrieve the requested data

Parameters
  • index (PyQt5.QtCore.QModelIndex) – The index to retrieve data for

  • role (int) – The role to retrieve data for

Returns

The requested data

class CheckIndexOption(value)

Bases: enum.Flag

An enumeration.

NoOption = 0
IndexIsValid = 1
DoNotUseParent = 2
ParentIsInvalid = 4
HorizontalSortHint = 2
class LayoutChangeHint(value)

Bases: enum.Enum

An enumeration.

NoLayoutChangeHint = 0
VerticalSortHint = 1
HorizontalSortHint = 2
NoLayoutChangeHint = 0
VerticalSortHint = 1
__init__(parent=None)
ScanCoordinatesModel.beginInsertColumns(self, QModelIndex, int, int)
ScanCoordinatesModel.beginInsertRows(self, QModelIndex, int, int)
ScanCoordinatesModel.beginMoveColumns(self, QModelIndex, int, int, QModelIndex, int) -> bool
ScanCoordinatesModel.beginMoveRows(self, QModelIndex, int, int, QModelIndex, int) -> bool
ScanCoordinatesModel.beginRemoveColumns(self, QModelIndex, int, int)
ScanCoordinatesModel.beginRemoveRows(self, QModelIndex, int, int)
beginResetModel(self)
blockSignals(self, bool) bool
buddy(self, QModelIndex) QModelIndex
canDropMimeData(self, QMimeData, Qt.DropAction, int, int, QModelIndex) bool
canFetchMore(self, QModelIndex) bool
ScanCoordinatesModel.changePersistentIndex(self, QModelIndex, QModelIndex)
changePersistentIndexList(self, Iterable[QModelIndex], Iterable[QModelIndex])
checkIndex(self, QModelIndex, options: QAbstractItemModel.CheckIndexOption = QAbstractItemModel.CheckIndexOption.NoOption) bool
checkNewCoordinate(atoms, coordinate_type)

This function check whether this coordinate is already present in this model.

Parameters
  • atoms (list) – atom indices

  • coordinate_type (int) – coordinate type

Returns

True if this coordinate has not been found and False otherwise.

Return type

bool

childEvent(self, QChildEvent)
children(self) List[QObject]
clearItemData(self, QModelIndex) bool
columnCount(parent=None)

Return the number of columns in the model

Parameters

parent – Unused, but preset for PyQt compatibility

Returns

The number of columns in the model.

Return type

int

columnsAboutToBeInserted

columnsAboutToBeInserted(self, QModelIndex, int, int) [signal]

columnsAboutToBeMoved

columnsAboutToBeMoved(self, QModelIndex, int, int, QModelIndex, int) [signal]

columnsAboutToBeRemoved

columnsAboutToBeRemoved(self, QModelIndex, int, int) [signal]

columnsInserted

columnsInserted(self, QModelIndex, int, int) [signal]

columnsMoved

columnsMoved(self, QModelIndex, int, int, QModelIndex, int) [signal]

columnsRemoved

columnsRemoved(self, QModelIndex, int, int) [signal]

connectNotify(self, QMetaMethod)
ScanCoordinatesModel.createIndex(self, int, int, object: object = 0) -> QModelIndex
customEvent(self, QEvent)
dataChanged

dataChanged(self, QModelIndex, QModelIndex, roles: Iterable[int] = []) [signal]

ScanCoordinatesModel.decodeData(self, int, int, QModelIndex, QDataStream) -> bool
deleteLater(self)
destroyed

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

disconnect(QMetaObject.Connection) bool
disconnect(self) None
disconnectNotify(self, QMetaMethod)
dropMimeData(self, QMimeData, Qt.DropAction, int, int, QModelIndex) bool
dumpObjectInfo(self)
dumpObjectTree(self)
dynamicPropertyNames(self) List[QByteArray]
encodeData(self, Iterable[QModelIndex], QDataStream)
endInsertColumns(self)
endInsertRows(self)
endMoveColumns(self)
endMoveRows(self)
endRemoveColumns(self)
endRemoveRows(self)
endResetModel(self)
event(self, QEvent) bool
eventFilter(self, QObject, QEvent) bool
fetchMore(self, QModelIndex)
findChild(self, type, name: str = '', options: Qt.FindChildOption = Qt.FindChildrenRecursively) QObject
findChild(self, Tuple, name: str = '', options: Qt.FindChildOption = Qt.FindChildrenRecursively) QObject
findChildren(self, type, name: str = '', options: Qt.FindChildOption = Qt.FindChildrenRecursively) List[QObject]
findChildren(self, Tuple, name: str = '', options: Qt.FindChildOption = Qt.FindChildrenRecursively) List[QObject]
findChildren(self, type, QRegularExpression, options: Qt.FindChildOption = Qt.FindChildrenRecursively) List[QObject]
findChildren(self, Tuple, QRegularExpression, options: Qt.FindChildOption = Qt.FindChildrenRecursively) List[QObject]
findCoordinate(atoms, coordinate_type)

This function searches for coordinate defined by atoms list and coordinate type. If match is found this function returns row index and None otherwise.

Parameters
  • atoms (list) – atom indices

  • coordinate_type (int) – coordinate type

Returns

row index if this coordinate has been found and None otherwise.

Return type

int or None

flags(self, QModelIndex) Qt.ItemFlag
hasChildren(self, parent: QModelIndex = QModelIndex()) bool
ScanCoordinatesModel.hasIndex(self, int, int, parent: QModelIndex = QModelIndex()) -> bool
headerData(section, orientation, role)

Retrieve the requested header data. This data is used to show Qt view column/row headers.

Parameters
  • section (int) – The row/column number to retrieve header data for

  • orientation (int) – The orientation of the header (Qt.Horizontal or Qt.Vertical) to retrieve data for

  • role (int) – The role to retrieve header data for

headerDataChanged

headerDataChanged(self, Qt.Orientation, int, int) [signal]

ScanCoordinatesModel.index(self, int, int, parent: QModelIndex = QModelIndex()) -> QModelIndex
inherits(self, str) bool
insertColumn(self, int, parent: QModelIndex = QModelIndex()) bool
ScanCoordinatesModel.insertColumns(self, int, int, parent: QModelIndex = QModelIndex()) -> bool
insertRow(self, int, parent: QModelIndex = QModelIndex()) bool
ScanCoordinatesModel.insertRows(self, int, int, parent: QModelIndex = QModelIndex()) -> bool
installEventFilter(self, QObject)
isSignalConnected(self, QMetaMethod) bool
isWidgetType(self) bool
isWindowType(self) bool
itemData(self, QModelIndex) Dict[int, Any]
killTimer(self, int)
layoutAboutToBeChanged

layoutAboutToBeChanged(self, parents: Iterable[QPersistentModelIndex] = [], hint: QAbstractItemModel.LayoutChangeHint = QAbstractItemModel.NoLayoutChangeHint) [signal]

layoutChanged

layoutChanged(self, parents: Iterable[QPersistentModelIndex] = [], hint: QAbstractItemModel.LayoutChangeHint = QAbstractItemModel.NoLayoutChangeHint) [signal]

match(self, QModelIndex, int, Any, hits: int = 1, flags: Qt.MatchFlag = Qt.MatchFlags(Qt.MatchStartsWith | Qt.MatchWrap)) List[QModelIndex]
metaObject(self) QMetaObject
mimeData(self, Iterable[QModelIndex]) QMimeData
mimeTypes(self) List[str]
modelAboutToBeReset

modelAboutToBeReset(self) [signal]

modelReset

modelReset(self) [signal]

ScanCoordinatesModel.moveColumn(self, QModelIndex, int, QModelIndex, int) -> bool
ScanCoordinatesModel.moveColumns(self, QModelIndex, int, int, QModelIndex, int) -> bool
ScanCoordinatesModel.moveRow(self, QModelIndex, int, QModelIndex, int) -> bool
ScanCoordinatesModel.moveRows(self, QModelIndex, int, int, QModelIndex, int) -> bool
moveToThread(self, QThread)
objectName(self) str
objectNameChanged

objectNameChanged(self, str) [signal]

parent(self) QObject
persistentIndexList(self) List[QModelIndex]
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.

receivers(self, PYQT_SIGNAL) int
removeColumn(self, int, parent: QModelIndex = QModelIndex()) bool
ScanCoordinatesModel.removeColumns(self, int, int, parent: QModelIndex = QModelIndex()) -> bool
removeCoordinate(atoms, coordinate_type)

This function searches for a given coordinate. If match is found coordinate is removed.

Parameters
  • atoms (list) – atom indices

  • coordinate_type (int) – coordinate type

Returns

True if this coordinate was found and removed, False otherwise.

Return type

bool

removeEventFilter(self, QObject)
removeRow(row, parent=<PyQt6.QtCore.QModelIndex object>)

Removes the given row from the child items of the parent specified. Returns true if the row is removed; otherwise returns false.

Parameters
  • row (int) – row index

  • index (QtCore.QModelIndex) – parent index

Returns

True or False

Return type

bool

ScanCoordinatesModel.removeRows(self, int, int, parent: QModelIndex = QModelIndex()) -> bool
reset()

Remove any existing data

resetInternalData(self)
revert(self)
roleNames(self) Dict[int, QByteArray]
rowCount(parent=None)

Return the number of rows in the model

Parameters

parent – Unused, but preset for PyQt compatibility

Returns

The number of rows in the model.

Return type

int

rowsAboutToBeInserted

rowsAboutToBeInserted(self, QModelIndex, int, int) [signal]

rowsAboutToBeMoved

rowsAboutToBeMoved(self, QModelIndex, int, int, QModelIndex, int) [signal]

rowsAboutToBeRemoved

rowsAboutToBeRemoved(self, QModelIndex, int, int) [signal]

rowsInserted

rowsInserted(self, QModelIndex, int, int) [signal]

rowsMoved

rowsMoved(self, QModelIndex, int, int, QModelIndex, int) [signal]

rowsRemoved

rowsRemoved(self, QModelIndex, int, int) [signal]

sender(self) QObject
senderSignalIndex(self) int
setData(index, value, role=ItemDataRole.EditRole)

Modify coordinate values.

Parameters
  • index (QtCore.QModelIndex) – the index of table cell

  • value – new value

  • role (int) – The role to set data for.

setHeaderData(self, int, Qt.Orientation, Any, role: int = Qt.EditRole) bool
setItemData(self, QModelIndex, Dict[int, Any]) bool
setObjectName(self, str)
setParent(self, QObject)
setProperty(self, str, Any) bool
ScanCoordinatesModel.sibling(self, int, int, QModelIndex) -> QModelIndex
signalsBlocked(self) bool
sort(self, int, order: Qt.SortOrder = Qt.AscendingOrder)
span(self, QModelIndex) QSize
startTimer(self, int, timerType: Qt.TimerType = Qt.CoarseTimer) int
staticMetaObject = <PyQt6.QtCore.QMetaObject object>
submit(self) bool
supportedDragActions(self) Qt.DropAction
supportedDropActions(self) Qt.DropAction
thread(self) QThread
timerEvent(self, QTimerEvent)
tr(str, disambiguation: str = None, n: int = - 1) str