Qt widgets for data sets

Dialog boxes for DataSet editing and showing

class guidata.dataset.qtwidgets.DataSetEditDialog(instance: Union[DataSet, DataSetGroup], icon: Union[str, QIcon] = '', parent: Optional[QWidget] = None, apply: Optional[Callable] = None, wordwrap: bool = True, size: Optional[Union[QSize, Tuple[int, int]]] = None)

Bases: QDialog

Dialog box for DataSet editing

setup_instance(instance: Any) None

Construct main layout

layout_factory(instance: DataSet, grid: QGridLayout) DataSetEditLayout

A factory method that produces instances of DataSetEditLayout

or derived classes (see DataSetShowDialog)

child_title(item: DataItemVariable) str

Return data item title combined with QApplication title

accept() None

Validate inputs

class guidata.dataset.qtwidgets.DataSetShowDialog(instance: Union[DataSet, DataSetGroup], icon: Union[str, QIcon] = '', parent: Optional[QWidget] = None, apply: Optional[Callable] = None, wordwrap: bool = True, size: Optional[Union[QSize, Tuple[int, int]]] = None)

Bases: DataSetEditDialog

Read-only dialog box

layout_factory(instance: DataSet, grid: QGridLayout) DataSetShowLayout

Override DataSetEditDialog method

class guidata.dataset.qtwidgets.DataSetGroupEditDialog(instance: Union[DataSet, DataSetGroup], icon: Union[str, QIcon] = '', parent: Optional[QWidget] = None, apply: Optional[Callable] = None, wordwrap: bool = True, size: Optional[Union[QSize, Tuple[int, int]]] = None)

Bases: DataSetEditDialog

Tabbed dialog box for DataSet editing

setup_instance(instance: DataSetGroup) None

Override DataSetEditDialog method

Layouts for DataSet editing and showing

class guidata.dataset.qtwidgets.DataSetEditLayout(parent: Optional[QWidget], instance: DataSet, layout: QGridLayout, items: Optional[List[DataItem]] = None, first_line: int = 0, change_callback: Optional[Callable] = None)

Bases: object

Layout in which data item widgets are placed

classmethod register(item_type: Type, factory: Any) None

Register a factory for a new item_type

transform_items(items: List[DataItem]) List[DataItem]

Handle group of items: transform items into a GroupItem instance if they are located between BeginGroup and EndGroup

check_all_values() bool

Check input of all widgets

accept_changes() None

Accept changes made to widget inputs

setup_layout(items: List[DataItem]) None

Place items on layout

add_row(widget: DataSetShowWidget) None

Add widget to row

refresh_widgets() None

Refresh the status of all widgets

update_dataitems() None

Refresh the content of all data items

update_widgets(except_this_one: Optional[Union[QWidget, AbstractDataSetWidget]] = None) None

Refresh the content of all widgets

widget_value_changed() None

Method called when any widget’s value has changed

class guidata.dataset.qtwidgets.DataSetShowLayout(parent: Optional[QWidget], instance: DataSet, layout: QGridLayout, items: Optional[List[DataItem]] = None, first_line: int = 0, change_callback: Optional[Callable] = None)

Bases: DataSetEditLayout

Read-only layout