schrodinger.ui.qt.mapperwidgets.plptable module¶
Framework to simplify creating Qt tables based on parameters.ParamListParam (PLP). A PLP is a type of list param where each element is itself a compound param. These can be naturally represented as tables where each item in the list is a row in the table, and individual subparams (fields) of the item are shown as cells in the row. See scripts/examples/models/plptable_gui.py for an example.
To create a plptable, you first need a model object with a ParamListParam that contains the source data. Each item in the list corresponds to a row in the table, and the cells in that row are based on the fields in that item. For example:
class Contact(parameters.CompoundParam):
name = parameters.StringParam()
phone_number = parameters.StringParam()
email = parameters.StringParam()
class Model(parameters.CompoundParam):
contacts = parameters.ParamListParam(item_class=Contact)
In the simplest case, a PLPTableWidget can be instantiated with autospec=True, resulting in a very basic table with one column for each field in the PLP item class:
model = Model()
table = plptable.PLPTableWidget(plp=model.contacts, autospec=True)
Typically, it is desirable to customize the column contents and how the data in the list item is used to populate the columns. This is accomplished by sub- classing the TableSpec class to create a table specification. A table spec defines the columns in a table and provides the data methods used to populate the cells in each column.
In the example above, we might want to split the name into separate first and last name columns and turn the email into a hyperlink. This could be done with the following table spec:
class ContactTableSpec(plptable.TableSpec):
@plptable.FieldColumn(Contact.name)
def first_name(self, field):
return field.split()[0]
@plptable.FieldColumn(Contact.name)
def last_name(self, field):
return field.split()[-1]
phone_number = plptable.FieldColumn(Contact.phone_number)
@plptable.FieldColumn(Contact.email)
def email(self, field):
return f'<a href = "mailto: {field}">{field}</a>'
Notice that there are two ways to declare a column - either with a class attribute or a decorated data method.
Once a spec is defined, it can be applied to a PLPTableWidget
using the
setSpec
method.
For more information, see TableSpec
as well as the various column classes.
-
class
schrodinger.ui.qt.mapperwidgets.plptable.
FieldColumn
(field, **kwargs)¶ Bases:
schrodinger.ui.qt.mapperwidgets.plptable._BaseColumn
A FieldColumn is a column in which each cell receives the data from a single subparam (i.e. field) of one item in the PLP.
@FieldColumn(ItemClass.subparam) def my_data_method(self, field)
field: the value of the param field associated with this row-
__init__
(field, **kwargs)¶ Parameters: field (parameters.Param) – An abstract param representing the field this column represents or uses.
-
setData
(all_rows, this_row, data, role=2)¶
-
data
(all_rows, this_row, role=0)¶ Get the corresponding data for the column for the specified role.
-
data_method
(*roles, role=0)¶ A decorator that marks a method to be used as a data method for the column. The method will be used as the data method whenever data for
role
orroles
is requested.Parameters: - roles – The roles that this data method should be used for. All
positional arguments will be considered a part of
roles
and should be hashable. - role (Hashable) – Keyword-only argument. The role to assign to the data method. Usually enums are used for roles but theoretically any hashable object can be used.
- roles – The roles that this data method should be used for. All
positional arguments will be considered a part of
-
generateColumn
(table_spec)¶ Creates a copy of this column to be used as instance members of TableSpec instances. This allows separate instances and subclasses of a TableSpec to modify columns without altering the original class attribute, which is considered an “abstract” column.
Parameters: table_spec (TableSpec) – the table spec instance that will own the generated column instance.
-
getNumColumns
(all_rows)¶ Get the number of columns this column has. Generally this is just one but some children classes define more than one column.
Parameters: all_rows (list(parameters.CompoundParam)) – A list of the rows that make up the table. Returns: The number of columns. :rtype : int
-
headerData
(all_rows, role=0)¶
-
headerData_method
(*roles, role=0)¶ A decorator that marks a method to be used as a header data method for the column. The method will be used as the data method whenever data for
role
orroles
is requested for the header row. Header data methods are passed the entire PLP.Parameters: - roles – The roles that this data method should be used for. All
positional arguments will be considered a part of
roles
and should be hashable. - role (Hashable) – Keyword-only argument. The role to assign to the data method. Usually enums are used for roles but theoretically any hashable object can be used.
- roles – The roles that this data method should be used for. All
positional arguments will be considered a part of
-
setData_method
(role=2)¶ A decorator for specifying a setData method for the column.
-
-
class
schrodinger.ui.qt.mapperwidgets.plptable.
ParamColumn
(title=None, editable=False, tooltip=None, sample_data='')¶ Bases:
schrodinger.ui.qt.mapperwidgets.plptable._BaseColumn
A ParamColumn is a column in which each cell receives one entire item from the PLP. It’s up to the data method to decide how to convert the item into something that can be used by the cell.
@ParamColumn() def my_data_method(self, this_row)
this_row: the model object for this row.-
__init__
(title=None, editable=False, tooltip=None, sample_data='')¶ Parameters: - title (str or None) – The title of the column. This string will be shown
in the header cell of the column. If
None
, the title will default to the variable name the column is set to. - editable (bool) – Whether the cells in the column are editable. If
editable
is set toTrue
, then double clicking a cell in the column will allow the user to input a string. - tooltip (str or None) – The string to populate the tooltip with.
- title (str or None) – The title of the column. This string will be shown
in the header cell of the column. If
-
data
(all_rows, this_row, role=0)¶ Get the corresponding data for the column for the specified role.
-
data_method
(*roles, role=0)¶ A decorator that marks a method to be used as a data method for the column. The method will be used as the data method whenever data for
role
orroles
is requested.Parameters: - roles – The roles that this data method should be used for. All
positional arguments will be considered a part of
roles
and should be hashable. - role (Hashable) – Keyword-only argument. The role to assign to the data method. Usually enums are used for roles but theoretically any hashable object can be used.
- roles – The roles that this data method should be used for. All
positional arguments will be considered a part of
-
generateColumn
(table_spec)¶ Creates a copy of this column to be used as instance members of TableSpec instances. This allows separate instances and subclasses of a TableSpec to modify columns without altering the original class attribute, which is considered an “abstract” column.
Parameters: table_spec (TableSpec) – the table spec instance that will own the generated column instance.
-
getNumColumns
(all_rows)¶ Get the number of columns this column has. Generally this is just one but some children classes define more than one column.
Parameters: all_rows (list(parameters.CompoundParam)) – A list of the rows that make up the table. Returns: The number of columns. :rtype : int
-
headerData
(all_rows, role=0)¶
-
headerData_method
(*roles, role=0)¶ A decorator that marks a method to be used as a header data method for the column. The method will be used as the data method whenever data for
role
orroles
is requested for the header row. Header data methods are passed the entire PLP.Parameters: - roles – The roles that this data method should be used for. All
positional arguments will be considered a part of
roles
and should be hashable. - role (Hashable) – Keyword-only argument. The role to assign to the data method. Usually enums are used for roles but theoretically any hashable object can be used.
- roles – The roles that this data method should be used for. All
positional arguments will be considered a part of
-
setData
(all_rows, this_row, data, role=2)¶
-
setData_method
(role=2)¶ A decorator for specifying a setData method for the column.
-
-
class
schrodinger.ui.qt.mapperwidgets.plptable.
PLPColumn
(title=None, editable=False, tooltip=None, sample_data='')¶ Bases:
schrodinger.ui.qt.mapperwidgets.plptable._BaseColumn
A PLPColumn is a column in which each cell receives the entire PLP (i.e. the entire table’s data). This allows each cell’s contents to account for data in other rows in the table. It’s up to the data method to decide how to use the entire table data in each individual cell.
@PLPColumn() def my_data_method(self, all_rows, this_row):
all_rows: a list where each element is the model object for one row this_row: the model object for this row-
__init__
(title=None, editable=False, tooltip=None, sample_data='')¶ Parameters: - title (str or None) – The title of the column. This string will be shown
in the header cell of the column. If
None
, the title will default to the variable name the column is set to. - editable (bool) – Whether the cells in the column are editable. If
editable
is set toTrue
, then double clicking a cell in the column will allow the user to input a string. - tooltip (str or None) – The string to populate the tooltip with.
- title (str or None) – The title of the column. This string will be shown
in the header cell of the column. If
-
data
(all_rows, this_row, role=0)¶ Get the corresponding data for the column for the specified role.
-
data_method
(*roles, role=0)¶ A decorator that marks a method to be used as a data method for the column. The method will be used as the data method whenever data for
role
orroles
is requested.Parameters: - roles – The roles that this data method should be used for. All
positional arguments will be considered a part of
roles
and should be hashable. - role (Hashable) – Keyword-only argument. The role to assign to the data method. Usually enums are used for roles but theoretically any hashable object can be used.
- roles – The roles that this data method should be used for. All
positional arguments will be considered a part of
-
generateColumn
(table_spec)¶ Creates a copy of this column to be used as instance members of TableSpec instances. This allows separate instances and subclasses of a TableSpec to modify columns without altering the original class attribute, which is considered an “abstract” column.
Parameters: table_spec (TableSpec) – the table spec instance that will own the generated column instance.
-
getNumColumns
(all_rows)¶ Get the number of columns this column has. Generally this is just one but some children classes define more than one column.
Parameters: all_rows (list(parameters.CompoundParam)) – A list of the rows that make up the table. Returns: The number of columns. :rtype : int
-
headerData
(all_rows, role=0)¶
-
headerData_method
(*roles, role=0)¶ A decorator that marks a method to be used as a header data method for the column. The method will be used as the data method whenever data for
role
orroles
is requested for the header row. Header data methods are passed the entire PLP.Parameters: - roles – The roles that this data method should be used for. All
positional arguments will be considered a part of
roles
and should be hashable. - role (Hashable) – Keyword-only argument. The role to assign to the data method. Usually enums are used for roles but theoretically any hashable object can be used.
- roles – The roles that this data method should be used for. All
positional arguments will be considered a part of
-
setData
(all_rows, this_row, data, role=2)¶
-
setData_method
(role=2)¶ A decorator for specifying a setData method for the column.
-
-
class
schrodinger.ui.qt.mapperwidgets.plptable.
ColumnSeries
(title=None, editable=False, tooltip=None, sample_data='')¶ Bases:
schrodinger.ui.qt.mapperwidgets.plptable.PLPColumn
A ColumnSeries is a dynamically generated series of columns for which each cell receives the entire plp, the item corresponding to cell’s row, and an index indicating which column in the ColumnSeries this cell belongs to.
The number of columns is determined by column_count decorated method.
- def my_data_method(self, col_idx, all_rows, this_row)
- col_idx: the relative index of the column with the column series all_rows: a list where each element is the model object for one row this_row: the model object for this row
Example:
class FamilyTableSpec(TableSpec): siblings = ColumnSeries() @siblings.column_count() def numColumns(self, all_rows): return max(len(row.siblings) for row in all_rows) @siblings.data_method() def getSibling(self, col_idx, all_rows, this_row): try: return this_row.siblings[col_idx] except IndexError: return ''
-
getNumColumns
(all_rows)¶ Call the
column_count
method to see how many columns make up the series.Parameters: all_rows (list(parameters.CompoundParam)) – A list of the rows that make up the table. Returns: The number of columns in the series :rtype : int
-
column_count
(len_func)¶ Decorator to designate a function to calculate the number of columns in the series.
Parameters: len_func (callable) – Function to calculate the number of columns. Should take in one argument: the ParamListParam
representing the table.
-
data
(col_idx, all_rows, this_row, role=0)¶ Get the corresponding data for the column for the specified role.
-
setData
(all_rows, this_row, data, role=2)¶
-
headerData
(col_idx, all_rows, role=0)¶
-
__init__
(title=None, editable=False, tooltip=None, sample_data='')¶ Parameters: - title (str or None) – The title of the column. This string will be shown
in the header cell of the column. If
None
, the title will default to the variable name the column is set to. - editable (bool) – Whether the cells in the column are editable. If
editable
is set toTrue
, then double clicking a cell in the column will allow the user to input a string. - tooltip (str or None) – The string to populate the tooltip with.
- title (str or None) – The title of the column. This string will be shown
in the header cell of the column. If
-
data_method
(*roles, role=0)¶ A decorator that marks a method to be used as a data method for the column. The method will be used as the data method whenever data for
role
orroles
is requested.Parameters: - roles – The roles that this data method should be used for. All
positional arguments will be considered a part of
roles
and should be hashable. - role (Hashable) – Keyword-only argument. The role to assign to the data method. Usually enums are used for roles but theoretically any hashable object can be used.
- roles – The roles that this data method should be used for. All
positional arguments will be considered a part of
-
generateColumn
(table_spec)¶ Creates a copy of this column to be used as instance members of TableSpec instances. This allows separate instances and subclasses of a TableSpec to modify columns without altering the original class attribute, which is considered an “abstract” column.
Parameters: table_spec (TableSpec) – the table spec instance that will own the generated column instance.
-
headerData_method
(*roles, role=0)¶ A decorator that marks a method to be used as a header data method for the column. The method will be used as the data method whenever data for
role
orroles
is requested for the header row. Header data methods are passed the entire PLP.Parameters: - roles – The roles that this data method should be used for. All
positional arguments will be considered a part of
roles
and should be hashable. - role (Hashable) – Keyword-only argument. The role to assign to the data method. Usually enums are used for roles but theoretically any hashable object can be used.
- roles – The roles that this data method should be used for. All
positional arguments will be considered a part of
-
setData_method
(role=2)¶ A decorator for specifying a setData method for the column.
-
class
schrodinger.ui.qt.mapperwidgets.plptable.
TableSpec
¶ Bases:
schrodinger.models.parameters.CompoundParam
A class that represents the specification of a
PLPTable
. The spec’s role is to specify what columns to display, in what order, and with what data.To create a table spec, subclass TableSpec and add columns and data methods to define the behavior of the table.
-
__init__
()¶ Initialize self. See help(type(self)) for accurate signature.
-
columns
¶ A Param to represent lists. Values of this param will have a
mutated
signal that will be emitted whenever any mutation method is called.The constructor optionally takes a
item_class
keyword argument to specify what type of class the items in the list will be. This information will be used for jsonifying the list if specified.
-
headerData
(col_idx, all_rows, role)¶
-
data
(col_idx, all_rows, this_row, role)¶
-
setData
(col_idx, all_rows, this_row, value, role=2)¶
-
getColumn
(col_idx, all_rows)¶
-
getNumColumns
(all_rows)¶
-
DataClass
¶ alias of
builtins.object
-
classmethod
addSubParam
(name, param, update_owner=True)¶
-
blockSignals
(self, bool) → bool¶
-
block_signal_propagation
()¶
-
childEvent
(self, QChildEvent)¶
-
children
(self) → List[QObject]¶
-
columnsChanged
¶
-
columnsReplaced
¶
-
classmethod
configureParam
()¶ Override this class method to set up the abstract param class (e.g. setParamReference on child params.)
-
connectNotify
(self, QMetaMethod)¶
-
customEvent
(self, QEvent)¶
-
classmethod
defaultValue
(*args, **kwargs)¶
-
deleteLater
(self)¶
-
destroyed
¶ destroyed(self, object: QObject = None) [signal]
-
disconnect
(self)¶
-
disconnectNotify
(self, QMetaMethod)¶
-
dumpObjectInfo
(self)¶
-
dumpObjectTree
(self)¶
-
dynamicPropertyNames
(self) → List[QByteArray]¶
-
event
(self, QEvent) → bool¶
-
eventFilter
(self, QObject, QEvent) → bool¶
-
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]
-
classmethod
fromJson
(json_obj)¶ A factory method which constructs a new object from a given dict loaded from a json string or file.
Parameters: json_obj (dict) – A json-loaded dictionary to create an object from. Returns: An instance of this class. :rtype : cls
-
classmethod
fromJsonImplementation
(json_dict)¶ Sets the value of this compound param value object from a JSON dict.
-
getAbstractParam
(*args, **kwargs)¶
-
classmethod
getJsonBlacklist
()¶ Override to customize what params are serialized.
Implementations should return a list of abstract params that should be omitted from serialization.
- ..NOTE
- Returned abstract params must be direct child params of
cls
, e.g.cls.name
, notcls.coord.x
.
-
classmethod
getParamSignal
(*args, **kwargs)¶
-
classmethod
getParamValue
(*args, **kwargs)¶
-
classmethod
getSubParam
(name)¶ Get the value of a subparam using the string name:
c = Coord() assert c.getSubParam('x') == 0
Note
Using the string name to accss params is generally discouraged, but can be useful for serializing/deserializing param data.
Parameters: name (str) – The name of the subparam to get the value for.
-
classmethod
getSubParams
()¶ Return a dictionary mapping subparam names to their values.
-
get_version
()¶ Method to get the version of a particular object. Defaults to the current version of mmshare. This class can be overridden for custom versioning behavior.
-
inherits
(self, str) → bool¶
-
initAbstract
()¶
-
initConcrete
()¶ Override to customize initialization of concrete params.
-
initializeValue
()¶ Override to dynamically set up the default value of the param. Useful for default values that are determined at runtime. This is called any time the param is reset.
-
installEventFilter
(self, QObject)¶
-
classmethod
isAbstract
()¶ Whether the param is an “abstract” param.
-
isDefault
(*args, **kwargs)¶
-
isSignalConnected
(self, QMetaMethod) → bool¶
-
isWidgetType
(self) → bool¶
-
isWindowType
(self) → bool¶
-
killTimer
(self, int)¶
-
metaObject
(self) → QMetaObject¶
-
moveToThread
(self, QThread)¶
-
objectName
(self) → str¶
-
objectNameChanged
¶ objectNameChanged(self, str) [signal]
-
classmethod
owner
()¶ Get the owner of the param:
# Can be called on an abstract param: assert Coord.x.owner() == Coord # ...or on an instance of a CompoundParam a = Atom() assert a.coord.owner() == a
-
classmethod
ownerChain
()¶ Returns a list of param owners starting from the toplevel param and ending with self. Examples:
foo.bar.atom.coord.ownerChain()
will return[foo, bar, atom, coord]
where every item is a concrete param.Foo.bar.atom.coord.x.ownerChain()
will return[Foo, Foo.bar, Foo.atom.coord, Foo.atom.coord.x]
where every item is an abstract params.
-
classmethod
paramName
()¶ Get the name of the param:
# Can be called on an abstract param: print(Coord.x.paramName()) # 'x' # ...or on an instance of a CompoundParam a = Atom() a.coord.paramName() # 'coord'
-
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)¶
-
reset
(*args, **kwargs)¶
-
sender
(self) → QObject¶
-
senderSignalIndex
(self) → int¶
-
setObjectName
(self, str)¶
-
classmethod
setParamValue
(*args, **kwargs)¶
-
setParent
(self, QObject)¶
-
setProperty
(self, str, Any) → bool¶
-
classmethod
setReference
(param1, param2)¶ Call this class method from configureParam to indicate that two params should be kept in sync. The initial values will start with the default value of
param1
. Example:class Square(CompoundParam): width: float = 5 height: float = 10 @classmethod def configureParam(cls): super().configureParam() cls.setReference(cls.width, cls.height) square = Square() assert square.width == square.height == 5 # Default value of width # takes priority square.height = 7 assert square.width == square.height == 7 square.width = 6 assert square.width == square.height == 6
Parameters: - param1 – The first abstract param to keep synced
- param2 – The second abstract param. After instantiation, this param will take on the value of param1.
-
setValue
(*args, **kwargs)¶
-
signalsBlocked
(self) → bool¶
-
skip_eq_check
()¶
-
startTimer
(self, int, timerType: Qt.TimerType = Qt.CoarseTimer) → int¶
-
staticMetaObject
= <PyQt5.QtCore.QMetaObject object>¶
-
thread
(self) → QThread¶
-
timerEvent
(self, QTimerEvent)¶
-
toDict
(*args, **kwargs)¶
-
toJson
(_mark_version=True)¶ Create and returns a data structure made up of jsonable items.
Return type: An instance of one the classes from NATIVE_JSON_DATATYPES
-
toJsonImplementation
(*args, **kwargs)¶
-
tr
(self, str, disambiguation: str = None, n: int = -1) → str¶
-
valueChanged
¶
-
-
class
schrodinger.ui.qt.mapperwidgets.plptable.
PLPTableWidget
(*args, spec=None, autospec=False, plp=None, view=None, **kwargs)¶ Bases:
schrodinger.models.mappers.TargetMixin
,schrodinger.ui.qt.basewidgets.BaseWidget
A table widget for displaying data in a ParamListParam. Compatible with mappers.TargetParamMapper and mappers.MapperMixin.
Typically this class is instantiated directly, and defining the behavior of the table is done by creating a custom TableSpec subclass.
-
__init__
(*args, spec=None, autospec=False, plp=None, view=None, **kwargs)¶ Parameters: - spec (TableSpec) – Table specification. Will be ignored if autospec is True.
- autospec (bool) – Whether to automatically generate the table specification from the PLP item fields.
- plp (parameters.ParamListParam) – ParamListParam containing data. It is more common to set the plp using mappers.
- view (QtWidgets.QTableView) – Custom table view instance. If None, an instance of table_helper.SampleDataTableView will be created.
-
spec
¶
-
setSpec
(new_spec)¶ Apply a new table specification to this table.
Parameters: new_spec (TableSpec or None) – the new table spec
-
initSetUp
()¶ Creates widget from
ui
and stores itui_widget
.Suggested subclass use: create and initialize subwidgets, and connect signals.
-
initLayOut
()¶ Create a vertical layout for the widget (
widget_layout
) and populate it with two vertical sub-layouts:main_layout
andbottom_layout
.If the user has specified the
ui
data member, insert the resultantui_widget
intomain_layout
.If the widget already has a layout defined, this method will produce a warning (but not a traceback).
main_layout
andbottom_layout
will be inserted into the existing widget layout, which will not be the same aswidget_layout
. It is therefore recommended that this mixin is used only with widgets that do not already have a layout.Suggested subclass use: create, initialize, and populate layouts.
-
addProxy
(proxy_model)¶
-
targetGetValue
()¶ Implementation of an abstract method in TargetMixin.
-
targetSetValue
(value)¶ Implementation of an abstract method in TargetMixin.
Creates a table model based on the spec, loads the PLP as data, and sets the newly created table model on the view.
-
makeAutoSpec
(plp)¶
-
loadPLP
(plp)¶ Replace the current contents of the table PLP with the contents of the supplied
plp
argument.Parameters: plp (parameters.ParamListParam) – a ParamListParam
of the same type that is used as the domain model for this table
-
setPLP
(plp)¶ Set the supplied PLP as the new model for the table.
Parameters: plp (list(parameters.CompoundParam)) – The PLP representing the table data.
-
selectedParams
()¶
-
removeSelectedParams
()¶ Delete deletes parameters if they are selected in the table.
-
setSelectedParams
(params)¶ Selects the table rows corresponding to the specified params.
Parameters: params – a list of params to select
-
removeRow
(row_num)¶
-
exportToCsv
(filename)¶
-
DrawChildren
= 2¶
-
DrawWindowBackground
= 1¶
-
IgnoreMask
= 4¶
-
class
PaintDeviceMetric
¶ Bases:
int
-
__init__
= <method-wrapper '__init__' of sip.enumtype object at 0x1e76988>¶
-
-
PdmDepth
= 6¶
-
PdmDevicePixelRatio
= 11¶
-
PdmDevicePixelRatioScaled
= 12¶
-
PdmDpiX
= 7¶
-
PdmDpiY
= 8¶
-
PdmHeight
= 2¶
-
PdmHeightMM
= 4¶
-
PdmNumColors
= 5¶
-
PdmPhysicalDpiX
= 9¶
-
PdmPhysicalDpiY
= 10¶
-
PdmWidth
= 1¶
-
PdmWidthMM
= 3¶
-
class
RenderFlag
¶ Bases:
int
-
__init__
= <method-wrapper '__init__' of sip.enumtype object at 0x1cbf268>¶
-
-
class
RenderFlags
¶ Bases:
sip.simplewrapper
QWidget.RenderFlags(Union[QWidget.RenderFlags, QWidget.RenderFlag]) QWidget.RenderFlags(QWidget.RenderFlags)
-
__init__
¶ Initialize self. See help(type(self)) for accurate signature.
-
-
SHOW_AS_WINDOW
= False¶
-
acceptDrops
(self) → bool¶
-
accepted
¶
-
accessibleDescription
(self) → str¶
-
accessibleName
(self) → str¶
-
actionEvent
(self, QActionEvent)¶
-
actions
(self) → List[QAction]¶
-
activateWindow
(self)¶
-
addAction
(self, QAction)¶
-
addActions
(self, Iterable[QAction])¶
-
adjustSize
(self)¶
-
autoFillBackground
(self) → bool¶
-
auto_update_model
= True¶
-
auto_update_target
= True¶
-
backgroundRole
(self) → QPalette.ColorRole¶
-
baseSize
(self) → QSize¶
-
blockSignals
(self, bool) → bool¶
-
changeEvent
(self, QEvent)¶
-
childAt
(self, QPoint) → QWidget¶ childAt(self, int, int) -> QWidget
-
childEvent
(self, QChildEvent)¶
-
children
(self) → List[QObject]¶
-
childrenRect
(self) → QRect¶
-
childrenRegion
(self) → QRegion¶
-
clearFocus
(self)¶
-
clearMask
(self)¶
-
close
(self) → bool¶
-
closeEvent
(event)¶ Ensures proper handling of OK, Cancel, and [X] button clicks
-
colorCount
(self) → int¶
-
connectNotify
(self, QMetaMethod)¶
-
contentsMargins
(self) → QMargins¶
-
contentsRect
(self) → QRect¶
-
contextMenuEvent
(self, QContextMenuEvent)¶
-
contextMenuPolicy
(self) → Qt.ContextMenuPolicy¶
-
create
(self, window: sip.voidptr = 0, initializeWindow: bool = True, destroyOldWindow: bool = True)¶
-
createWindowContainer
(QWindow, parent: QWidget = None, flags: Union[Qt.WindowFlags, Qt.WindowType] = 0) → QWidget¶
-
cursor
(self) → QCursor¶
-
customContextMenuRequested
¶ customContextMenuRequested(self, QPoint) [signal]
-
customEvent
(self, QEvent)¶
-
debug
()¶
-
deleteLater
(self)¶
-
depth
(self) → int¶
-
destroy
(self, destroyWindow: bool = True, destroySubWindows: bool = True)¶
-
destroyed
¶ destroyed(self, object: QObject = None) [signal]
-
devType
(self) → int¶
-
devicePixelRatio
(self) → int¶
-
devicePixelRatioF
(self) → float¶
-
devicePixelRatioFScale
() → float¶
-
disconnect
(self)¶
-
disconnectNotify
(self, QMetaMethod)¶
-
dragEnterEvent
(self, QDragEnterEvent)¶
-
dragLeaveEvent
(self, QDragLeaveEvent)¶
-
dragMoveEvent
(self, QDragMoveEvent)¶
-
dropEvent
(self, QDropEvent)¶
-
dumpObjectInfo
(self)¶
-
dumpObjectTree
(self)¶
-
dynamicPropertyNames
(self) → List[QByteArray]¶
-
effectiveWinId
(self) → sip.voidptr¶
-
ensurePolished
(self)¶
-
enterEvent
(self, QEvent)¶
-
error
(*args, **kwargs)¶ Shows a popup error message box. For parameter documentation see
messagebox.MessageBox
.
-
event
(self, QEvent) → bool¶
-
eventFilter
(self, QObject, QEvent) → bool¶
-
find
(sip.voidptr) → QWidget¶
-
findChild
(self, type, name: str = '', options: Union[Qt.FindChildOptions, Qt.FindChildOption] = Qt.FindChildrenRecursively) → QObject¶ findChild(self, Tuple, name: str = ‘’, options: Union[Qt.FindChildOptions, Qt.FindChildOption] = Qt.FindChildrenRecursively) -> QObject
-
findChildren
(self, type, name: str = '', options: Union[Qt.FindChildOptions, Qt.FindChildOption] = Qt.FindChildrenRecursively) → List[QObject]¶ findChildren(self, Tuple, name: str = ‘’, options: Union[Qt.FindChildOptions, Qt.FindChildOption] = Qt.FindChildrenRecursively) -> List[QObject] findChildren(self, type, QRegExp, options: Union[Qt.FindChildOptions, Qt.FindChildOption] = Qt.FindChildrenRecursively) -> List[QObject] findChildren(self, Tuple, QRegExp, options: Union[Qt.FindChildOptions, Qt.FindChildOption] = Qt.FindChildrenRecursively) -> List[QObject] findChildren(self, type, QRegularExpression, options: Union[Qt.FindChildOptions, Qt.FindChildOption] = Qt.FindChildrenRecursively) -> List[QObject] findChildren(self, Tuple, QRegularExpression, options: Union[Qt.FindChildOptions, Qt.FindChildOption] = Qt.FindChildrenRecursively) -> List[QObject]
-
focusInEvent
(self, QFocusEvent)¶
-
focusNextChild
(self) → bool¶
-
focusNextPrevChild
(self, bool) → bool¶
-
focusOutEvent
(self, QFocusEvent)¶
-
focusPolicy
(self) → Qt.FocusPolicy¶
-
focusPreviousChild
(self) → bool¶
-
focusProxy
(self) → QWidget¶
-
focusWidget
(self) → QWidget¶
-
font
(self) → QFont¶
-
fontInfo
(self) → QFontInfo¶
-
fontMetrics
(self) → QFontMetrics¶
-
foregroundRole
(self) → QPalette.ColorRole¶
-
forgetMessageBoxResponse
(key)¶ Forgets any previously saved response that was stored via a save_response_key.
Parameters: key – the key for the response to forget
-
frameGeometry
(self) → QRect¶
-
frameSize
(self) → QSize¶
-
geometry
(self) → QRect¶
-
getContentsMargins
(self) → Tuple[int, int, int, int]¶
-
grab
(self, rectangle: QRect = QRect(QPoint(0, 0), QSize(-1, -1))) → QPixmap¶
-
grabGesture
(self, Qt.GestureType, flags: Union[Qt.GestureFlags, Qt.GestureFlag] = Qt.GestureFlags())¶
-
grabKeyboard
(self)¶
-
grabMouse
(self)¶ grabMouse(self, Union[QCursor, Qt.CursorShape])
-
grabShortcut
(self, Union[QKeySequence, QKeySequence.StandardKey, str, int], context: Qt.ShortcutContext = Qt.WindowShortcut) → int¶
-
graphicsEffect
(self) → QGraphicsEffect¶
-
graphicsProxyWidget
(self) → QGraphicsProxyWidget¶
-
hasFocus
(self) → bool¶
-
hasHeightForWidth
(self) → bool¶
-
hasMouseTracking
(self) → bool¶
-
hasTabletTracking
(self) → bool¶
-
height
(self) → int¶
-
heightForWidth
(self, int) → int¶
-
heightMM
(self) → int¶
-
hide
(self)¶
-
hideEvent
(self, QHideEvent)¶
-
info
(*args, **kwargs)¶ Shows a popup information message box. For parameter documentation see
messagebox.MessageBox
.
-
inherits
(self, str) → bool¶
-
initFinalize
()¶ Suggested subclass use: perform any remaining initialization.
-
initPainter
(self, QPainter)¶
-
initSetDefaults
()¶ Set widget to its default state. If the widget uses a model/mapper, it’s preferable to reset the widget state by resetting the model.
-
initSetOptions
()¶ Suggested subclass use: set instance variables, excluding layouts and subwidgets.
-
inputMethodEvent
(self, QInputMethodEvent)¶
-
inputMethodHints
(self) → Qt.InputMethodHints¶
-
inputMethodQuery
(self, Qt.InputMethodQuery) → Any¶
-
insertAction
(self, QAction, QAction)¶
-
insertActions
(self, QAction, Iterable[QAction])¶
-
installEventFilter
(self, QObject)¶
-
isActiveWindow
(self) → bool¶
-
isAncestorOf
(self, QWidget) → bool¶
-
isEnabled
(self) → bool¶
-
isEnabledTo
(self, QWidget) → bool¶
-
isFullScreen
(self) → bool¶
-
isHidden
(self) → bool¶
-
isLeftToRight
(self) → bool¶
-
isMaximized
(self) → bool¶
-
isMinimized
(self) → bool¶
-
isModal
(self) → bool¶
-
isRightToLeft
(self) → bool¶
-
isSignalConnected
(self, QMetaMethod) → bool¶
-
isVisible
(self) → bool¶
-
isVisibleTo
(self, QWidget) → bool¶
-
isWidgetType
(self) → bool¶
-
isWindow
(self) → bool¶
-
isWindowModified
(self) → bool¶
-
isWindowType
(self) → bool¶
-
keyPressEvent
(self, QKeyEvent)¶
-
keyReleaseEvent
(self, QKeyEvent)¶
-
keyboardGrabber
() → QWidget¶
-
killTimer
(self, int)¶
-
layout
(self) → QLayout¶
-
layoutDirection
(self) → Qt.LayoutDirection¶
-
leaveEvent
(self, QEvent)¶
-
locale
(self) → QLocale¶
-
logicalDpiX
(self) → int¶
-
logicalDpiY
(self) → int¶
-
lower
(self)¶
-
mapFrom
(self, QWidget, QPoint) → QPoint¶
-
mapFromGlobal
(self, QPoint) → QPoint¶
-
mapFromParent
(self, QPoint) → QPoint¶
-
mapTo
(self, QWidget, QPoint) → QPoint¶
-
mapToGlobal
(self, QPoint) → QPoint¶
-
mapToParent
(self, QPoint) → QPoint¶
-
mask
(self) → QRegion¶
-
maximumHeight
(self) → int¶
-
maximumSize
(self) → QSize¶
-
maximumWidth
(self) → int¶
-
metaObject
(self) → QMetaObject¶
-
metric
(self, QPaintDevice.PaintDeviceMetric) → int¶
-
minimumHeight
(self) → int¶
-
minimumSize
(self) → QSize¶
-
minimumSizeHint
(self) → QSize¶
-
minimumWidth
(self) → int¶
-
mouseDoubleClickEvent
(self, QMouseEvent)¶
-
mouseGrabber
() → QWidget¶
-
mouseMoveEvent
(self, QMouseEvent)¶
-
mousePressEvent
(self, QMouseEvent)¶
-
mouseReleaseEvent
(self, QMouseEvent)¶
-
move
(self, QPoint)¶ move(self, int, int)
-
moveEvent
(self, QMoveEvent)¶
-
moveToThread
(self, QThread)¶
-
nativeEvent
(self, Union[QByteArray, bytes, bytearray], sip.voidptr) → Tuple[bool, int]¶
-
nativeParentWidget
(self) → QWidget¶
-
nextInFocusChain
(self) → QWidget¶
-
normalGeometry
(self) → QRect¶
-
objectName
(self) → str¶
-
objectNameChanged
¶ objectNameChanged(self, str) [signal]
-
overrideWindowFlags
(self, Union[Qt.WindowFlags, Qt.WindowType])¶
-
overrideWindowState
(self, Union[Qt.WindowStates, Qt.WindowState])¶
-
paintEngine
(self) → QPaintEngine¶
-
paintEvent
(self, QPaintEvent)¶
-
paintingActive
(self) → bool¶
-
palette
(self) → QPalette¶
-
parent
(self) → QObject¶
-
parentWidget
(self) → QWidget¶
-
physicalDpiX
(self) → int¶
-
physicalDpiY
(self) → int¶
-
pos
(self) → QPoint¶
-
previousInFocusChain
(self) → QWidget¶
-
property
(self, str) → Any¶
-
pyqtConfigure
(...)¶ Each keyword argument is either the name of a Qt property or a Qt signal. For properties the property is set to the given value which should be of an appropriate type. For signals the signal is connected to the given value which should be a callable.
-
question
(*args, **kwargs)¶ Shows a popup question message box. For parameter documentation see
messagebox.QuestionMessageBox
.
-
raise_
(self)¶
-
receivers
(self, PYQT_SIGNAL) → int¶
-
rect
(self) → QRect¶
-
releaseKeyboard
(self)¶
-
releaseMouse
(self)¶
-
releaseShortcut
(self, int)¶
-
removeAction
(self, QAction)¶
-
removeEventFilter
(self, QObject)¶
-
render
(self, QPaintDevice, targetOffset: QPoint = QPoint(), sourceRegion: QRegion = QRegion(), flags: Union[QWidget.RenderFlags, QWidget.RenderFlag] = QWidget.RenderFlags(QWidget.DrawWindowBackground|QWidget.DrawChildren))¶ render(self, QPainter, targetOffset: QPoint = QPoint(), sourceRegion: QRegion = QRegion(), flags: Union[QWidget.RenderFlags, QWidget.RenderFlag] = QWidget.RenderFlags(QWidget.DrawWindowBackground|QWidget.DrawChildren))
-
repaint
(self)¶ repaint(self, int, int, int, int) repaint(self, QRect) repaint(self, QRegion)
-
reportValidation
(results)¶ Present validation messages to the user. This is an implmentation of the
ValidationMixin
interface and does not need to be called directly.This method assumes that
error
andquestion
methods have been defined in the subclass, as in e.g.widget_mixins.MessageBoxMixin
.Parameters: results ( validation.ValidationResults
) – Set of validation results generated byvalidate
Returns: if True, there were no validation errors and the user decided to continue despite any warnings. If False, there was at least one validation error or the user decided to abort when faced with a warning.
-
resize
(self, QSize)¶ resize(self, int, int)
-
resizeEvent
(self, QResizeEvent)¶
-
restoreGeometry
(self, Union[QByteArray, bytes, bytearray]) → bool¶
-
run
(blocking=False, modal=False, finished_callback=None)¶ Show this widget, while optionally blocking, making the widget window modal, and registering a callback for when the widget is closed again.
Parameters: - blocking (bool) – if True, block progress in the calling method until the widget is closed again.
- modal (bool) – if True, open this widget as window modal. Otherwise, open this widget as nonmodal.
- finished_callback (a callable object) – an object that will be called with no arguments when this widget is closed.
-
runValidation
(silent=False, validate_children=True, stop_on_fail=True)¶ Runs validation and reports the results (unless run silently).
Parameters: - silent (bool) – run without any reporting (i.e. error messages to the
user). This is useful if we want to programmatically test validity.
Changes return value of this method from
ValidationResults
to a boolean. - validate_children (bool) – run validation on all child objects. See
_validateChildren
for documentation on what this entails. - stop_on_fail (bool) – stop validation when first failure is encountered
Returns: if silent is False, returns the validation results. If silent is True, returns a boolean generated by
reportValidation
.Return type: ValidationResults
or bool- silent (bool) – run without any reporting (i.e. error messages to the
user). This is useful if we want to programmatically test validity.
Changes return value of this method from
-
saveGeometry
(self) → QByteArray¶
-
scroll
(self, int, int)¶ scroll(self, int, int, QRect)
-
sender
(self) → QObject¶
-
senderSignalIndex
(self) → int¶
-
setAcceptDrops
(self, bool)¶
-
setAccessibleDescription
(self, str)¶
-
setAccessibleName
(self, str)¶
-
setAttribute
(self, Qt.WidgetAttribute, on: bool = True)¶
-
setAutoFillBackground
(self, bool)¶
-
setBackgroundRole
(self, QPalette.ColorRole)¶
-
setBaseSize
(self, int, int)¶ setBaseSize(self, QSize)
-
setContentsMargins
(self, int, int, int, int)¶ setContentsMargins(self, QMargins)
-
setContextMenuPolicy
(self, Qt.ContextMenuPolicy)¶
-
setCursor
(self, Union[QCursor, Qt.CursorShape])¶
-
setDisabled
(self, bool)¶
-
setEnabled
(self, bool)¶
-
setFixedHeight
(self, int)¶
-
setFixedSize
(self, QSize)¶ setFixedSize(self, int, int)
-
setFixedWidth
(self, int)¶
-
setFocus
(self)¶ setFocus(self, Qt.FocusReason)
-
setFocusPolicy
(self, Qt.FocusPolicy)¶
-
setFocusProxy
(self, QWidget)¶
-
setFont
(self, QFont)¶
-
setForegroundRole
(self, QPalette.ColorRole)¶
-
setGeometry
(self, QRect)¶ setGeometry(self, int, int, int, int)
-
setGraphicsEffect
(self, QGraphicsEffect)¶
-
setHidden
(self, bool)¶
-
setInputMethodHints
(self, Union[Qt.InputMethodHints, Qt.InputMethodHint])¶
-
setLayout
(self, QLayout)¶
-
setLayoutDirection
(self, Qt.LayoutDirection)¶
-
setLocale
(self, QLocale)¶
-
setMask
(self, QBitmap)¶ setMask(self, QRegion)
-
setMaximumHeight
(self, int)¶
-
setMaximumSize
(self, int, int)¶ setMaximumSize(self, QSize)
-
setMaximumWidth
(self, int)¶
-
setMinimumHeight
(self, int)¶
-
setMinimumSize
(self, int, int)¶ setMinimumSize(self, QSize)
-
setMinimumWidth
(self, int)¶
-
setMouseTracking
(self, bool)¶
-
setObjectName
(self, str)¶
-
setPalette
(self, QPalette)¶
-
setParent
(self, QWidget)¶ setParent(self, QWidget, Union[Qt.WindowFlags, Qt.WindowType])
-
setProperty
(self, str, Any) → bool¶
-
setShortcutAutoRepeat
(self, int, enabled: bool = True)¶
-
setShortcutEnabled
(self, int, enabled: bool = True)¶
-
setSizeIncrement
(self, int, int)¶ setSizeIncrement(self, QSize)
-
setSizePolicy
(self, QSizePolicy)¶ setSizePolicy(self, QSizePolicy.Policy, QSizePolicy.Policy)
-
setStatusTip
(self, str)¶
-
setStyle
(self, QStyle)¶
-
setStyleSheet
(self, str)¶
-
setTabOrder
(QWidget, QWidget)¶
-
setTabletTracking
(self, bool)¶
-
setToolTip
(self, str)¶
-
setToolTipDuration
(self, int)¶
-
setUpdatesEnabled
(self, bool)¶
-
setVisible
(set_visible)¶
-
setWhatsThis
(self, str)¶
-
setWidgetLayout
()¶ Set the widget layout
-
setWindowFilePath
(self, str)¶
-
setWindowFlag
(self, Qt.WindowType, on: bool = True)¶
-
setWindowFlags
(flags=None)¶
-
setWindowFlagsForRun
()¶
-
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)¶
-
show
()¶ Override the show method to clear and previous value of self.accepted
-
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¶
-
sshowMessageBox
(*args, **kwargs)¶ Shows a popup message box. For parameter documentation see
messagebox.MessageBox
.
-
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)¶
-
targetValueChanged
¶
-
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¶
-
ui_module
= None¶
-
underMouse
(self) → bool¶
-
ungrabGesture
(self, Qt.GestureType)¶
-
unsetCursor
(self)¶
-
unsetLayoutDirection
(self)¶
-
unsetLocale
(self)¶
-
update
(self)¶ update(self, QRect) update(self, QRegion) update(self, int, int, int, int)
-
updateGeometry
(self)¶
-
updateMicroFocus
(self)¶
-
updatesEnabled
(self) → bool¶
-
visibleRegion
(self) → QRegion¶
-
warning
(*args, **kwargs)¶ Shows a popup warning message box. For parameter documentation see
messagebox.MessageBox
.
-
whatsThis
(self) → str¶
-
wheelEvent
(self, QWheelEvent)¶
-
width
(self) → int¶
-
widthMM
(self) → int¶
-
winId
(self) → sip.voidptr¶
-
window
(self) → QWidget¶
-
windowFilePath
(self) → str¶
-
windowFlags
(self) → Qt.WindowFlags¶
-
windowHandle
(self) → QWindow¶
-
windowIcon
(self) → QIcon¶
-
windowIconChanged
¶ windowIconChanged(self, QIcon) [signal]
-
windowIconText
(self) → str¶
-
windowIconTextChanged
¶ windowIconTextChanged(self, str) [signal]
-
windowModality
(self) → Qt.WindowModality¶
-
windowOpacity
(self) → float¶
-
windowRole
(self) → str¶
-
windowState
(self) → Qt.WindowStates¶
-
windowTitle
(self) → str¶
-
windowTitleChanged
¶ windowTitleChanged(self, str) [signal]
-
windowType
(self) → Qt.WindowType¶
-
x
(self) → int¶
-
y
(self) → int¶
-