schrodinger.application.phase.featureselector module

Widget for letting the user show/hide or enable/disable features in a hypothesis. All features are shown in a grid, and each has a checkbox next to it.

class schrodinger.application.phase.featureselector.FeatureSelector(parent=None)[source]

Bases: PyQt5.QtWidgets.QScrollArea

This frame contains widgets for selecting one or more features in a hypothesis (e.g. A1, A2, H1, etc.). The editor has a checkbox for each feature. This frame is intended to be embedded in a layout.

selectionChanged
__init__(parent=None)[source]
reset()[source]

Unchecks all available checkboxes.

clear()[source]

Remove all checkboxes from the features layout.

setFeatures(feature_names)[source]

Initialize the editor with checkbox for each specified feature.

getFeatureCheckbox(feature_name)[source]

Return the checkbox for the feature.

Parameters

feature_name (str) – The name of the feature (e.g. “A2”)

setSelectedFeatures(features)[source]
Parameters

features (set of str) – The features to select/check.

Checks the checkboxes corresponding to the given set of feature, and unchecks the other checkboxes.

getSelectedFeatures()[source]

Return a set of selected features (their names).

AdjustIgnored = 0
AdjustToContents = 2
AdjustToContentsOnFirstShow = 1
Box = 1
DrawChildren = 2
DrawWindowBackground = 1
HLine = 4
IgnoreMask = 4
NoFrame = 0
class PaintDeviceMetric

Bases: int

Panel = 2
PdmDepth = 6
PdmDevicePixelRatio = 11
PdmDevicePixelRatioScaled = 12
PdmDpiX = 7
PdmDpiY = 8
PdmHeight = 2
PdmHeightMM = 4
PdmNumColors = 5
PdmPhysicalDpiX = 9
PdmPhysicalDpiY = 10
PdmWidth = 1
PdmWidthMM = 3
Plain = 16
Raised = 32
class RenderFlag

Bases: int

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

Bases: sip.simplewrapper

__init__(*args, **kwargs)
class Shadow

Bases: int

Shadow_Mask = 240
class Shape

Bases: int

Shape_Mask = 15
class SizeAdjustPolicy

Bases: int

class StyleMask

Bases: int

StyledPanel = 6
Sunken = 48
VLine = 5
WinPanel = 3
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])
addScrollBarWidget(self, QWidget, Union[Qt.Alignment, Qt.AlignmentFlag])
adjustSize(self)
alignment(self) Qt.Alignment
autoFillBackground(self) bool
backgroundRole(self) QPalette.ColorRole
baseSize(self) QSize
blockSignals(self, bool) bool
changeEvent(self, QEvent)
childAt(self, QPoint) QWidget
FeatureSelector.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
cornerWidget(self) QWidget
create(self, window: PyQt5.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(QMetaObject.Connection) bool
disconnect(self) None
disconnectNotify(self, QMetaMethod)
dragEnterEvent(self, QDragEnterEvent)
dragLeaveEvent(self, QDragLeaveEvent)
dragMoveEvent(self, QDragMoveEvent)
drawFrame(self, QPainter)
dropEvent(self, QDropEvent)
dumpObjectInfo(self)
dumpObjectTree(self)
dynamicPropertyNames(self) List[QByteArray]
effectiveWinId(self) PyQt5.sip.voidptr
ensurePolished(self)
FeatureSelector.ensureVisible(self, int, int, xMargin: int = 50, yMargin: int = 50)
ensureWidgetVisible(self, QWidget, xMargin: int = 50, yMargin: int = 50)
enterEvent(self, QEvent)
event(self, QEvent) bool
eventFilter(self, QObject, QEvent) bool
find(PyQt5.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
frameRect(self) QRect
frameShadow(self) QFrame.Shadow
frameShape(self) QFrame.Shape
frameSize(self) QSize
frameStyle(self) int
frameWidth(self) int
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]) 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)
horizontalScrollBar(self) QScrollBar
horizontalScrollBarPolicy(self) Qt.ScrollBarPolicy
inherits(self, str) bool
initPainter(self, QPainter)
initStyleOption(self, QStyleOptionFrame)
inputMethodEvent(self, QInputMethodEvent)
inputMethodHints(self) Qt.InputMethodHints
inputMethodQuery(self, Qt.InputMethodQuery) Any
FeatureSelector.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)
lineWidth(self) int
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
maximumViewportSize(self) QSize
maximumWidth(self) int
metaObject(self) QMetaObject
metric(self, QPaintDevice.PaintDeviceMetric) int
midLineWidth(self) 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)
FeatureSelector.move(self, int, int) -> None
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.RenderFlag.DrawWindowBackground | QWidget.RenderFlag.DrawChildren))
render(self, QPainter, targetOffset: QPoint = QPoint(), sourceRegion: QRegion = QRegion(), flags: Union[QWidget.RenderFlags, QWidget.RenderFlag] = QWidget.RenderFlags(QWidget.RenderFlag.DrawWindowBackground | QWidget.RenderFlag.DrawChildren)) None
repaint(self)
FeatureSelector.repaint(self, int, int, int, int) -> None
repaint(self, QRect) None
repaint(self, QRegion) None
resize(self, QSize)
FeatureSelector.resize(self, int, int) -> None
resizeEvent(self, QResizeEvent)
restoreGeometry(self, Union[QByteArray, bytes, bytearray]) bool
saveGeometry(self) QByteArray
FeatureSelector.scroll(self, int, int)
FeatureSelector.scroll(self, int, int, QRect) -> None
scrollBarWidgets(self, Union[Qt.Alignment, Qt.AlignmentFlag]) List[QWidget]
FeatureSelector.scrollContentsBy(self, int, int)
sender(self) QObject
senderSignalIndex(self) int
setAcceptDrops(self, bool)
setAccessibleDescription(self, str)
setAccessibleName(self, str)
setAlignment(self, Union[Qt.Alignment, Qt.AlignmentFlag])
setAttribute(self, Qt.WidgetAttribute, on: bool = True)
setAutoFillBackground(self, bool)
setBackgroundRole(self, QPalette.ColorRole)
FeatureSelector.setBaseSize(self, int, int)
setBaseSize(self, QSize) None
FeatureSelector.setContentsMargins(self, int, int, int, int)
setContentsMargins(self, QMargins) None
setContextMenuPolicy(self, Qt.ContextMenuPolicy)
setCornerWidget(self, QWidget)
setCursor(self, Union[QCursor, Qt.CursorShape])
setDisabled(self, bool)
setEnabled(self, bool)
setFixedHeight(self, int)
setFixedSize(self, QSize)
FeatureSelector.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)
setFrameRect(self, QRect)
setFrameShadow(self, QFrame.Shadow)
setFrameShape(self, QFrame.Shape)
setFrameStyle(self, int)
setGeometry(self, QRect)
FeatureSelector.setGeometry(self, int, int, int, int) -> None
setGraphicsEffect(self, QGraphicsEffect)
setHidden(self, bool)
setHorizontalScrollBar(self, QScrollBar)
setHorizontalScrollBarPolicy(self, Qt.ScrollBarPolicy)
setInputMethodHints(self, Union[Qt.InputMethodHints, Qt.InputMethodHint])
setLayout(self, QLayout)
setLayoutDirection(self, Qt.LayoutDirection)
setLineWidth(self, int)
setLocale(self, QLocale)
setMask(self, QBitmap)
setMask(self, QRegion) None
setMaximumHeight(self, int)
FeatureSelector.setMaximumSize(self, int, int)
setMaximumSize(self, QSize) None
setMaximumWidth(self, int)
setMidLineWidth(self, int)
setMinimumHeight(self, int)
FeatureSelector.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, Union[Qt.WindowFlags, Qt.WindowType]) None
setProperty(self, str, Any) bool
setShortcutAutoRepeat(self, int, enabled: bool = True)
setShortcutEnabled(self, int, enabled: bool = True)
setSizeAdjustPolicy(self, QAbstractScrollArea.SizeAdjustPolicy)
FeatureSelector.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)
FeatureSelector.setTabOrder(QWidget, QWidget)
setTabletTracking(self, bool)
setToolTip(self, str)
setToolTipDuration(self, int)
setUpdatesEnabled(self, bool)
setVerticalScrollBar(self, QScrollBar)
setVerticalScrollBarPolicy(self, Qt.ScrollBarPolicy)
setViewport(self, QWidget)
FeatureSelector.setViewportMargins(self, int, int, int, int)
setViewportMargins(self, QMargins) None
setVisible(self, bool)
setWhatsThis(self, str)
setWidget(self, QWidget)
setWidgetResizable(self, bool)
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)
setupViewport(self, QWidget)
sharedPainter(self) QPainter
show(self)
showEvent(self, QShowEvent)
showFullScreen(self)
showMaximized(self)
showMinimized(self)
showNormal(self)
signalsBlocked(self) bool
size(self) QSize
sizeAdjustPolicy(self) QAbstractScrollArea.SizeAdjustPolicy
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)
takeWidget(self) QWidget
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) None
update(self, QRegion) None
FeatureSelector.update(self, int, int, int, int) -> None
updateGeometry(self)
updateMicroFocus(self)
updatesEnabled(self) bool
verticalScrollBar(self) QScrollBar
verticalScrollBarPolicy(self) Qt.ScrollBarPolicy
viewport(self) QWidget
viewportEvent(self, QEvent) bool
viewportMargins(self) QMargins
viewportSizeHint(self) QSize
visibleRegion(self) QRegion
whatsThis(self) str
wheelEvent(self, QWheelEvent)
widget(self) QWidget
widgetResizable(self) bool
width(self) int
widthMM(self) int
winId(self) PyQt5.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.phase.featureselector.FeatureRow(hypo_eid, hypo_name, feature_name, is_xvol, use_feature)[source]

Bases: object

Data class that contains information about single feature in a hypothesis. This can be a regular feature or excluded volume.

__init__(hypo_eid, hypo_name, feature_name, is_xvol, use_feature)[source]

Initialize feature data.

Parameters
  • hypo_eid (int) – hypothesis entry id

  • hypo_name (str) – hypothesis name. For custom features hypothesis name should be set to None!

  • is_xvol (bool) – True if this is excluded volume and False otherwise

  • feature_name (str) – feature name (empty string in case of excluded volume)

  • use_feature (bool) – indicates whether checkbox for this feature is toggled on or off

class schrodinger.application.phase.featureselector.FeatureModel(parent=None)[source]

Bases: schrodinger.ui.qt.table_helper.RowBasedTableModel

Features model.

Column

alias of <unknown>.FeatureColumns

ROW_CLASS

alias of schrodinger.application.phase.featureselector.FeatureRow

CUSTOM_HYPO_TEXT = 'Custom'
XVOL_TEXT = 'XVols'
featureToggled
getSelectedFeatures(include_pt_feats, include_custom_feats)[source]

Returns dictionary of checked feature names. It is keyed on hypothesis entry ids and contains feature names for each hypothesis.

Parameters
  • include_pt_feats (bool) – indicates that selected features that came from PT hypotheses should be included

  • include_custom_feats (bool) – indicates that selected features that were manually added by the user should be included

Returns

dictionary of checked feature names

Return type

dict

getSelectedExcludedVolumes()[source]

Returns list of hypothesis entry ids which have excluded volumes checked.

Returns

list of hypothesis entry ids, which have have excluded volumes checked

Return type

list

toggleSelection(hypo_eid, feature_name)[source]

Flips use_feature flag for a given feature.

Parameters
  • hypo_eid (int) – feature’s hypothesis entry id

  • feature_name (str) – feature name

clearSelection()[source]

Toggles of ‘use’ check boxes for all features.

selectedFeaturesCount()[source]

Returns total number of selected features (excluding volumes).

getLastCustomFeatureNum()[source]

Finds all ‘custom’ features and returns last feature number. For example, if custom features are [‘A1’, ‘D11’, ‘R5’] last custom feature number will be 11.

updateFeatureNames(marker_features)[source]

This function updates feature names in the model so that they are consistent with markers feature names. This is needed when user changes feature type using edit feature dialog. In this case only a single feature row needs to be modified.

Parameters

marker_features – dictionary of feature marker names keyed on hypothesis entry ids.

CHECKABLE_COLS = ()
COLUMN = None
class CheckIndexOption(value)

Bases: enum.IntEnum

An enumeration.

DoNotUseParent = 2
IndexIsValid = 1
NoOption = 0
ParentIsInvalid = 4
class CheckIndexOptions
class CheckIndexOptions(Union[QAbstractItemModel.CheckIndexOptions, QAbstractItemModel.CheckIndexOption]) None
class CheckIndexOptions(QAbstractItemModel.CheckIndexOptions) None

Bases: sip.simplewrapper

__init__(*args, **kwargs)
EDITABLE_COLS = <object object>
HorizontalSortHint = 2
class LayoutChangeHint

Bases: int

NO_DATA_CHANGED = <object object>
NoLayoutChangeHint = 0
ROW_LIST_OFFSET = 0
SHOW_ROW_NUMBERS = False
UNEDITABLE_COLS = <object object>
VerticalSortHint = 1
__init__(parent=None)
af2SettingsGetValue()

This function adds support for the settings mixin. It allows to save table cell values in case this table is included in the settings panel. Returns list of rows if table model is of RowBasedTableModel class type.

Returns

list of rows in tbe table’s model.

Return type

list or None

af2SettingsSetValue(value)

This function adds support for the settings mixin. It allows to set table cell values when this table is included in the settings panel.

Parameters

value (list) – settings value, which is a list of row data here.

appendRow(*args, **kwargs)

Add a row to the table. All arguments are passed to ROW_CLASS initialization.

Returns

The row number of the new row

Return type

int

appendRowObject(row)

Add a row to the table.

Parameters

row (ROW_CLASS) – Row object to add to the table.

Returns

The row number of the new row

Return type

int

FeatureModel.beginInsertColumns(self, QModelIndex, int, int)
FeatureModel.beginInsertRows(self, QModelIndex, int, int)
FeatureModel.beginMoveColumns(self, QModelIndex, int, int, QModelIndex, int) -> bool
FeatureModel.beginMoveRows(self, QModelIndex, int, int, QModelIndex, int) -> bool
FeatureModel.beginRemoveColumns(self, QModelIndex, int, int)
FeatureModel.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
FeatureModel.changePersistentIndex(self, QModelIndex, QModelIndex)
changePersistentIndexList(self, Iterable[QModelIndex], Iterable[QModelIndex])
checkIndex(self, QModelIndex, options: Union[QAbstractItemModel.CheckIndexOptions, QAbstractItemModel.CheckIndexOption] = QAbstractItemModel.CheckIndexOption.NoOption) bool
childEvent(self, QChildEvent)
children(self) List[QObject]
columnChanged(col_number)

Call this method when a specific column object has been modified. Will cause the view to redraw that column.

Parameters

col_number (int) – 0-indexed column number in the model.

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)
FeatureModel.createIndex(self, int, int, object: object = 0) -> QModelIndex
customEvent(self, QEvent)
data(index, role=0)

Provide data for the specified index and role. Classes should not redefine this method. Instead, new methods should be created and decorated with data_method.

See Qt documentation for an explanation of arguments and return value

dataChanged

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

FeatureModel.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: 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]
flags(index)

See Qt documentation for an method documentation.

formatFloat(value, role, digits, fmt='')

Format floating point values for display or sorting. If role is Qt.DisplayRole, then value will be returned as a string with the specified formatting. All other role values are assumed to be a sorting role and value will be returned unchanged.

Parameters
  • value (float) – The floating point value to format

  • role (int) – The Qt data role

  • digits (int) – The number of digits to include after the decimal point for Qt.DisplayRole

  • fmt (str) – Additional floating point formatting options

Returns

The formatted or unmodified value

Return type

str or float

hasChildren(self, parent: QModelIndex = QModelIndex()) bool
FeatureModel.hasIndex(self, int, int, parent: QModelIndex = QModelIndex()) -> bool
headerData(section, orientation, role=0)

Provide column headers, and optionally column tooltips and row numbers.

See Qt documentation for an explanation of arguments and return value

headerDataChanged

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

FeatureModel.index(self, int, int, parent: QModelIndex = QModelIndex()) -> QModelIndex
inherits(self, str) bool
insertColumn(self, int, parent: QModelIndex = QModelIndex()) bool
FeatureModel.insertColumns(self, int, int, parent: QModelIndex = QModelIndex()) -> bool
insertRow(self, int, parent: QModelIndex = QModelIndex()) bool
FeatureModel.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]

loadData(rows)

Load data into the table and replace all existing data.

Parameters

rows (list) – A list of ROW_CLASS objects

match(self, QModelIndex, int, Any, hits: int = 1, flags: Union[Qt.MatchFlags, Qt.MatchFlag] = 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]

modelResetContext()

A context manager for resetting the model. See model_reset_method for a decorator version of this.

FeatureModel.moveColumn(self, QModelIndex, int, QModelIndex, int) -> bool
FeatureModel.moveColumns(self, QModelIndex, int, int, QModelIndex, int) -> bool
FeatureModel.moveRow(self, QModelIndex, int, QModelIndex, int) -> bool
FeatureModel.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
FeatureModel.removeColumns(self, int, int, parent: QModelIndex = QModelIndex()) -> bool
removeEventFilter(self, QObject)
removeRow(self, int, parent: QModelIndex = QModelIndex()) bool
FeatureModel.removeRows(self, int, int, parent: QModelIndex = QModelIndex()) -> bool
removeRowsByIndices(indices)

Remove all rows from the model specified by the given QModelIndex items.

removeRowsByRowNumbers(rows)

Remove the given rows from the model, specified by row number, 0-indexed.

replaceRows(new_rows)

Replace the contents of the model with the contents of the given list. The change will be presented to the view as a series of row insertions and deletions rather than as a model reset. This allows the view to properly update table selections and scroll bar position. This method may only be used if:

  • the ROW_CLASS objects can be compared using < and ==

  • the contents of the model (i.e. self._rows) are sorted in ascending order

  • the contents of new_rows are sorted in ascending order

This method is primarily intended for use when the table contains rows based on project table rows. On every project change, the project table can be reread and used to generate new_list and this method can then properly update the model.

Parameters

new_rows (list) – A list of ROW_CLASS objects

reset()

Remove all data from the model

resetInternalData(self)
revert(self)
roleNames(self) Dict[int, QByteArray]
rowChanged(row_number)

Call this method when a specific row object has been modified. Will cause the view to redraw that row.

Parameters

row_number (int) – 0-indexed row number in the model. Corresponds to the index in the “.rows” iterator.

rowCount(self, parent: QModelIndex = QModelIndex()) int
property rows

Iterate over all rows in the model. If any data is changed, call rowChanged() method with the row’s 0-indexed number to update the view.

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=2)

Set data for the specified index and role. Whenever possible, sub- classes should redefine _setData rather than this method.

See Qt documentation for an explanation of arguments and return value.

setHeaderData(self, int, Qt.Orientation, Any, role: int = Qt.ItemDataRole.EditRole) bool
setItemData(self, QModelIndex, Dict[int, Any]) bool
setObjectName(self, str)
setParent(self, QObject)
setProperty(self, str, Any) bool
FeatureModel.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 = <PyQt5.QtCore.QMetaObject object>
submit(self) bool
supportedDragActions(self) Qt.DropActions
supportedDropActions(self) Qt.DropActions
thread(self) QThread
timerEvent(self, QTimerEvent)
tr(self, str, disambiguation: str = None, n: int = - 1) str