srsgui.ui.commandtree package
srsgui.ui.commandtree package visualizes an instance of
Instrument class
containing multiple components and commands using
Qt Model/View programming.
The visualization helps the hierarchical structure of a command can be used more easily in the command terminal and writing the Python scripts.
srsgui.ui.commandtree.commanditem module
- class srsgui.ui.commandtree.commanditem.Index
- Bases: - object
- class srsgui.ui.commandtree.commanditem.CommandItem(parent: CommandItem | None = None)
- Bases: - object- Command item corresponding to a line in QTreeView. It encapsulates Component, Command, and Index class used in srsgui.Instrument class. - appendChild(item: CommandItem)
- Add item as a child 
 - child(row: int) CommandItem
- Return the child of the current item from the given row 
 - parent() CommandItem
- Return the parent of the current item 
 - childCount() int
- Return the number of children of the current item 
 - row() int
- Return the row where the current item occupies in the parent 
 - property value
- Return the value of the current item 
 - query_value()
 - set_value(value)
- Set value to the instrument and update the value of the item 
 - is_editable()
- Return True if the item is editable 
 - get_formatted_value()
- Return formatted value of a float 
 - construct_set_command_string(value)
- Construct python command string corresponding to the item 
 - get_name_string(item)
 - classmethod load(comp, parent: CommandItem | None = None) CommandItem
- Create a ‘root’ CommandItem from a Component and populate its subcomponent and commands recursively. - Returns:
- CommandItem 
- Return type:
- root_item 
 
 
srsgui.ui.commandtree.commandmodel module
- class srsgui.ui.commandtree.commandmodel.CommandModel(parent: QObject | None = None)
- Bases: - QAbstractItemModel- An editable model of Command and Component - query_requested
 - set_requested
 - set_command_sent
 - clear()
- Clear data from the model 
 - load(document: Component)
- Load model from a ComponentItem instance returned by CommandItem.loads() - Parameters:
- document – Component instance 
 
 - data(index: ~PySide2.QtCore.QModelIndex, role: <class 'PySide2.QtCore.Qt.ItemDataRole'>) Any
- Override from QAbstractItemModel - Return data from an item according index and role 
 - setData(index: ~PySide2.QtCore.QModelIndex, value: ~typing.Any, role: <class 'PySide2.QtCore.Qt.ItemDataRole'>)
- Override from QAbstractItemModel - Set CommandItem according to index and role - Parameters:
- index (QModelIndex) 
- value (Any) 
- role (Qt.ItemDataRole) 
 
 
 - headerData(section: int, orientation: <class 'PySide2.QtCore.Qt.Orientation'>, role: <class 'PySide2.QtCore.Qt.ItemDataRole'>)
- Override from QAbstractItemModel - it returns only data for columns (orientation = Horizontal) 
 - index(row: int, column: int, parent=<PySide2.QtCore.QModelIndex(-1, -1, 0x0, QObject(0x0))>) QModelIndex
- Override from QAbstractItemModel - Return index according row, column and parent 
 - parent(index: QModelIndex) QModelIndex
- Override from QAbstractItemModel - Return parent index of index 
 - rowCount(parent=<PySide2.QtCore.QModelIndex(-1, -1, 0x0, QObject(0x0))>)
- Override from QAbstractItemModel - Return row count from parent index 
 - columnCount(parent=<PySide2.QtCore.QModelIndex(-1, -1, 0x0, QObject(0x0))>)
- Override from QAbstractItemModel - Return column number. For the model, it always return 2 columns 
 - flags(index: QModelIndex) ItemFlags
- Override from QAbstractItemModel - Return flags of index 
 - is_item_editable(index: QModelIndex) bool
- Return True if item is editable, False otherwise 
 - handle_command(cmd_tuple)
- External command processor calls this slot once a command is processed 
 - staticMetaObject = <PySide2.QtCore.QMetaObject object>
 
srsgui.ui.commandtree.commandhandler module
srsgui.ui.commandtree.commanddelegate module
- class srsgui.ui.commandtree.commanddelegate.CommandDelegate(parent=None)
- Bases: - QStyledItemDelegate- A custom delegate for editing CommandItem - createEditor(self, parent: PySide2.QtWidgets.QWidget, option: PySide2.QtWidgets.QStyleOptionViewItem, index: PySide2.QtCore.QModelIndex) PySide2.QtWidgets.QWidget
 - setEditorData(self, editor: PySide2.QtWidgets.QWidget, index: PySide2.QtCore.QModelIndex) None
 - setModelData(self, editor: PySide2.QtWidgets.QWidget, model: PySide2.QtCore.QAbstractItemModel, index: PySide2.QtCore.QModelIndex) None
 - updateEditorGeometry(self, editor: PySide2.QtWidgets.QWidget, option: PySide2.QtWidgets.QStyleOptionViewItem, index: PySide2.QtCore.QModelIndex) None
 - staticMetaObject = <PySide2.QtCore.QMetaObject object>
 
srsgui.ui.commandtree.commandspinbox module
- class srsgui.ui.commandtree.commandspinbox.IntegerSpinBox
- Bases: - QSpinBox- Adjust step size depending on the cursor position - stepBy(self, steps: int) None
 - staticMetaObject = <PySide2.QtCore.QMetaObject object>
 
- class srsgui.ui.commandtree.commandspinbox.FloatSpinBox(*args, **kwargs)
- Bases: - QDoubleSpinBox- Adjust step size depending on the cursor position - set_minimum_step(value)
 - set_significant_figures(value)
 - valueFromText(self, text: str) float
 - textFromValue(self, val: float) str
 - stepBy(self, steps: int) None
 - staticMetaObject = <PySide2.QtCore.QMetaObject object>
 
srsgui.ui.commandtree.commandtreeview module
- class srsgui.ui.commandtree.commandtreeview.CommandTreeView(parent=None)
- Bases: - QTreeView- update_item_display(parent=<PySide2.QtCore.QModelIndex(-1, -1, 0x0, QObject(0x0))>)
 - connect_methods_to_buttons(parent=<PySide2.QtCore.QModelIndex(-1, -1, 0x0, QObject(0x0))>)
 - staticMetaObject = <PySide2.QtCore.QMetaObject object>
 
srsgui.ui.commandtree.commandtreewidget module
- class srsgui.ui.commandtree.commandtreewidget.CommandTreeWidget(parent=None)
- Bases: - QWidget,- Ui_CommandTreeWidget- CommandTreeWidget is used to display an Instrument class in a tree view based on Qt Model/View architecture. - set_inst(name, inst)
 - on_query_only_changed(state)
 - on_set_only_changed(state)
 - on_excluded_changed(state)
 - on_method_changed(state)
 - on_raw_command_changed(state)
 - on_capture_clicked()
 - on_expand_clicked()
 - on_collapse_clicked()
 - closeEvent(self, event: PySide2.QtGui.QCloseEvent) None
 - staticMetaObject = <PySide2.QtCore.QMetaObject object>