Uranium
Application Framework
UM.Settings.Models.SettingDefinitionsModel.SettingDefinitionsModel Class Reference

Model that provides a flattened list of the tree of SettingDefinition objects in a DefinitionContainer. More...

Inherits QAbstractListModel.

Public Member Functions

def __init__ (self, parent=None, *args, **kwargs)
 
def setShowAncestors (self, show_ancestors)
 
def showAncestors (self)
 
def setContainerId (self, container_id)
 Set the containerId property.
 
def containerId (self)
 The ID of the DefinitionContainer object this model exposes.
 
def setRootKey (self, key)
 Set the rootKey property.
 
def rootKey (self)
 The SettingDefinition to use as root for the list.
 
def setShowAll (self, show)
 Set the showAll property.
 
def showAll (self)
 Whether or not the model should show all definitions regardless of visibility.
 
def setVisibilityHandler (self, visibility_handler)
 Set the visibilityHandler property.
 
def visibilityHandler (self)
 An instance of SettingVisibilityHandler to use to determine which settings should be visible.
 
def setExclude (self, exclude)
 Set the exclude property.
 
def exclude (self)
 This property indicates which settings should never be visibile.
 
def setExpanded (self, expanded)
 Set the expanded property.
 
def expanded (self)
 This property indicates which settings should never be visibile.
 
def visibleCount (self)
 
def categoryCount (self)
 
def setFilter (self, filter_dict)
 Set the filter of this model based on a string. More...
 
def filter (self)
 
def expand (self, key)
 Show the children of a specified SettingDefinition.
 
def expandAll (self, key)
 Show the children of a specified SettingDefinition and all children of those settings as well.
 
def collapse (self, key)
 Hide the children of a specified SettingDefinition.
 
def show (self, key)
 Show a single SettingDefinition.
 
def hide (self, key)
 Hide a single SettingDefinition.
 
def setAllVisible (self, visible)
 
def setVisible (self, key, visible)
 Set a single SettingDefinition's visible state.
 
def getVisible (self, key)
 Get a single SettingDefinition's visible state.
 
def getIndex (self, key)
 
def getRequires (self, key, role=None)
 
def getRequiredBy (self, key, role=None)
 
def rowCount (self, parent=None)
 Reimplemented from QAbstractListModel Note that rowCount() is overridden from QAbstractItemModel. More...
 
def data (self, index, role)
 Reimplemented from QAbstractListModel.
 
def roleNames (self)
 Reimplemented from QAbstractListModel.
 
def forceUpdate (self)
 Force updating the model.
 

Static Public Attributes

int KeyRole = Qt.UserRole + 1
 
int DepthRole = Qt.UserRole + 2
 
int VisibleRole = Qt.UserRole + 3
 
int ExpandedRole = Qt.UserRole + 4
 
 showAncestorsChanged = pyqtSignal()
 Emitted whenever the showAncestors property changes.
 
 containerIdChanged = pyqtSignal()
 Emitted whenever the containerId property changes.
 
 rootKeyChanged = pyqtSignal()
 Emitted when the rootKey property changes.
 
 showAllChanged = pyqtSignal()
 Emitted when the showAll property changes.
 
 visibilityChanged = pyqtSignal()
 
 visibilityHandlerChanged = pyqtSignal()
 Emitted whenever the visibilityHandler property changes.
 
 excludeChanged = pyqtSignal()
 Emitted whenever the exclude property changes.
 
 expandedChanged = pyqtSignal()
 Emitted whenever the exclude property changes.
 
 visibleCountChanged = pyqtSignal()
 
 filterChanged = pyqtSignal()
 

Detailed Description

Model that provides a flattened list of the tree of SettingDefinition objects in a DefinitionContainer.

This model exposes the tree of SettingDefinition objects in a DefinitionContainer as a list of settings. It uses two lists, one is the list of definitions which directly corresponds with the flattened contents of the DefinitionContainer. The other is a list matching rows in the model to indexes in the list of settings. This list can be quite a bit shorter than the list of definitions since all visibility criteria are applied.

Member Function Documentation

◆ rowCount()

def UM.Settings.Models.SettingDefinitionsModel.SettingDefinitionsModel.rowCount (   self,
  parent = None 
)

Reimplemented from QAbstractListModel Note that rowCount() is overridden from QAbstractItemModel.

The signature of the method in that class is "int rowCount(const QModelIndex& parent)" which makes this slot declaration incorrect. TODO: fix the pointer when actually using this parameter.

◆ setFilter()

def UM.Settings.Models.SettingDefinitionsModel.SettingDefinitionsModel.setFilter (   self,
  filter_dict 
)

Set the filter of this model based on a string.

Parameters
filter_dictDictionary to do the filtering by.

The documentation for this class was generated from the following file: