magicclass.widgets package¶
Subpackages¶
Submodules¶
magicclass.widgets.containers module¶
magicclass.widgets.misc module¶
- class magicclass.widgets.misc.CheckButton(text: str | None = None, **kwargs)[source]¶
Bases:
magicgui.widgets.PushButton
A checkable button.
- class magicclass.widgets.misc.ConsoleTextEdit(*args, **kwargs)[source]¶
Bases:
magicgui.widgets.TextEdit
A text edit with console-like setting.
- property selected: str¶
Return selected string.
- property tab_size¶
- class magicclass.widgets.misc.Figure(nrows: int = 1, ncols: int = 1, figsize: tuple[int, int] = (4, 3), style=None, **kwargs)[source]¶
Bases:
magicclass.widgets.utils.FreeWidget
A matplotlib figure canvas.
- property ax: Axes¶
- property axes: list[Axes]¶
magicclass.widgets.separator module¶
- class magicclass.widgets.separator.Separator(orientation: str = 'horizontal', text: str = '', name: str = '', button: bool = False)[source]¶
Bases:
magicclass.widgets.utils.FreeWidget
A Separator widget that can be used in both widgets and menus.
- btn_clicked¶
- property btn_text¶
magicclass.widgets.sequence module¶
- class magicclass.widgets.sequence.ListDataView(widget: magicgui.widgets.ListEdit)[source]¶
Bases:
object
Data view of ListEdit.
magicclass.widgets.utils module¶
Module contents¶
Advanced widgets for magic class GUI.
These widgets are all compatible with the append
method of Container widgets.
- class magicclass.widgets.ButtonContainer(name: str = '', annotation: Any = None, label: str = None, tooltip: str | None = None, visible: bool | None = None, enabled: bool = True, gui_only=False, backend_kwargs={}, layout: str = 'vertical', widgets: Sequence[Widget] = (), labels=True)¶
Bases:
magicgui.widgets._bases.widget.Widget
,magicgui.widgets._bases.mixins._OrientationMixin
,MutableSequence
[magicgui.widgets._bases.widget.Widget
]A Container Widget hidden in a button.
- Parameters
name (str) -- The name of the parameter represented by this widget. by default ""
annotation (Any) -- The type annotation for the parameter represented by the widget, by default
None
label (str) -- A string to use for an associated Label widget (if this widget is being shown in a
Container
widget, and labels are on). By default,name
will be used. Note:name
refers the name of the parameter, as might be used in a signature, whereas label is just the label for that widget in the GUI.tooltip (str) -- A tooltip to display when hovering over the widget.
visible (bool) -- Whether the widget is visible, by default
True
.backend_kwargs (dict) -- keyword argument to pass to the backend widget constructor.
- property btn_text¶
- class magicclass.widgets.CheckButton(text: str | None = None, **kwargs)[source]¶
Bases:
magicgui.widgets.PushButton
A checkable button.
- class magicclass.widgets.CollapsibleContainer(name: str = '', annotation: Any = None, label: str = None, tooltip: str | None = None, visible: bool | None = None, enabled: bool = True, gui_only=False, backend_kwargs={}, layout: str = 'vertical', widgets: Sequence[Widget] = (), labels=True)¶
Bases:
magicgui.widgets._bases.widget.Widget
,magicgui.widgets._bases.mixins._OrientationMixin
,MutableSequence
[magicgui.widgets._bases.widget.Widget
]A collapsible Container Widget.
- Parameters
name (str) -- The name of the parameter represented by this widget. by default ""
annotation (Any) -- The type annotation for the parameter represented by the widget, by default
None
label (str) -- A string to use for an associated Label widget (if this widget is being shown in a
Container
widget, and labels are on). By default,name
will be used. Note:name
refers the name of the parameter, as might be used in a signature, whereas label is just the label for that widget in the GUI.tooltip (str) -- A tooltip to display when hovering over the widget.
visible (bool) -- Whether the widget is visible, by default
True
.backend_kwargs (dict) -- keyword argument to pass to the backend widget constructor.
- property btn_text¶
- property collapsed: bool¶
- class magicclass.widgets.ConsoleTextEdit(*args, **kwargs)[source]¶
Bases:
magicgui.widgets.TextEdit
A text edit with console-like setting.
- property selected: str¶
Return selected string.
- property tab_size¶
- class magicclass.widgets.DictWidget(value=None, **kwargs)[source]¶
Bases:
magicclass.widgets.pywidgets.object.BaseWidget
,MutableMapping
- items() magicclass.widgets.pywidgets.dict.DictItemView [source]¶
Return the view of dictionary keys and values as strings and Python objects.
- property value: dict[str, typing.Any]¶
- values() magicclass.widgets.pywidgets.dict.DictValueView [source]¶
Return the view of dictionary values as Python objects.
- class magicclass.widgets.DraggableContainer(name: str = '', annotation: Any = None, label: str = None, tooltip: str | None = None, visible: bool | None = None, enabled: bool = True, gui_only=False, backend_kwargs={}, layout: str = 'vertical', widgets: Sequence[Widget] = (), labels=True)¶
Bases:
magicgui.widgets._bases.widget.Widget
,magicgui.widgets._bases.mixins._OrientationMixin
,MutableSequence
[magicgui.widgets._bases.widget.Widget
]A draggable Container Widget.
- Parameters
name (str) -- The name of the parameter represented by this widget. by default ""
annotation (Any) -- The type annotation for the parameter represented by the widget, by default
None
label (str) -- A string to use for an associated Label widget (if this widget is being shown in a
Container
widget, and labels are on). By default,name
will be used. Note:name
refers the name of the parameter, as might be used in a signature, whereas label is just the label for that widget in the GUI.tooltip (str) -- A tooltip to display when hovering over the widget.
visible (bool) -- Whether the widget is visible, by default
True
.backend_kwargs (dict) -- keyword argument to pass to the backend widget constructor.
- class magicclass.widgets.Figure(nrows: int = 1, ncols: int = 1, figsize: tuple[int, int] = (4, 3), style=None, **kwargs)[source]¶
Bases:
magicclass.widgets.utils.FreeWidget
A matplotlib figure canvas.
- property ax: Axes¶
- property axes: list[Axes]¶
- class magicclass.widgets.FrameContainer(name: str = '', annotation: Any = None, label: str = None, tooltip: str | None = None, visible: bool | None = None, enabled: bool = True, gui_only=False, backend_kwargs={}, layout: str = 'vertical', widgets: Sequence[Widget] = (), labels=True)¶
Bases:
magicgui.widgets._bases.widget.Widget
,magicgui.widgets._bases.mixins._OrientationMixin
,MutableSequence
[magicgui.widgets._bases.widget.Widget
]A QGroupBox like container without title.
- Parameters
name (str) -- The name of the parameter represented by this widget. by default ""
annotation (Any) -- The type annotation for the parameter represented by the widget, by default
None
label (str) -- A string to use for an associated Label widget (if this widget is being shown in a
Container
widget, and labels are on). By default,name
will be used. Note:name
refers the name of the parameter, as might be used in a signature, whereas label is just the label for that widget in the GUI.tooltip (str) -- A tooltip to display when hovering over the widget.
visible (bool) -- Whether the widget is visible, by default
True
.backend_kwargs (dict) -- keyword argument to pass to the backend widget constructor.
- class magicclass.widgets.FreeWidget(layout='vertical', **kwargs)[source]¶
Bases:
magicgui.widgets._bases.widget.Widget
A Widget class with any QWidget as a child.
- class magicclass.widgets.GroupBoxContainer(name: str = '', annotation: Any = None, label: str = None, tooltip: str | None = None, visible: bool | None = None, enabled: bool = True, gui_only=False, backend_kwargs={}, layout: str = 'vertical', widgets: Sequence[Widget] = (), labels=True)¶
Bases:
magicgui.widgets._bases.widget.Widget
,magicgui.widgets._bases.mixins._OrientationMixin
,MutableSequence
[magicgui.widgets._bases.widget.Widget
]A QGroupBox like container
- Parameters
name (str) -- The name of the parameter represented by this widget. by default ""
annotation (Any) -- The type annotation for the parameter represented by the widget, by default
None
label (str) -- A string to use for an associated Label widget (if this widget is being shown in a
Container
widget, and labels are on). By default,name
will be used. Note:name
refers the name of the parameter, as might be used in a signature, whereas label is just the label for that widget in the GUI.tooltip (str) -- A tooltip to display when hovering over the widget.
visible (bool) -- Whether the widget is visible, by default
True
.backend_kwargs (dict) -- keyword argument to pass to the backend widget constructor.
- property name¶
- class magicclass.widgets.HCollapsibleContainer(name: str = '', annotation: Any = None, label: str = None, tooltip: str | None = None, visible: bool | None = None, enabled: bool = True, gui_only=False, backend_kwargs={}, layout: str = 'vertical', widgets: Sequence[Widget] = (), labels=True)¶
Bases:
magicgui.widgets._bases.widget.Widget
,magicgui.widgets._bases.mixins._OrientationMixin
,MutableSequence
[magicgui.widgets._bases.widget.Widget
]A collapsible Container Widget.
- Parameters
name (str) -- The name of the parameter represented by this widget. by default ""
annotation (Any) -- The type annotation for the parameter represented by the widget, by default
None
label (str) -- A string to use for an associated Label widget (if this widget is being shown in a
Container
widget, and labels are on). By default,name
will be used. Note:name
refers the name of the parameter, as might be used in a signature, whereas label is just the label for that widget in the GUI.tooltip (str) -- A tooltip to display when hovering over the widget.
visible (bool) -- Whether the widget is visible, by default
True
.backend_kwargs (dict) -- keyword argument to pass to the backend widget constructor.
- property btn_text¶
- property collapsed: bool¶
- class magicclass.widgets.ListContainer(name: str = '', annotation: Any = None, label: str = None, tooltip: str | None = None, visible: bool | None = None, enabled: bool = True, gui_only=False, backend_kwargs={}, layout: str = 'vertical', widgets: Sequence[Widget] = (), labels=True)¶
Bases:
magicgui.widgets._bases.widget.Widget
,magicgui.widgets._bases.mixins._OrientationMixin
,MutableSequence
[magicgui.widgets._bases.widget.Widget
]A Container Widget that support drag and drop.
- Parameters
name (str) -- The name of the parameter represented by this widget. by default ""
annotation (Any) -- The type annotation for the parameter represented by the widget, by default
None
label (str) -- A string to use for an associated Label widget (if this widget is being shown in a
Container
widget, and labels are on). By default,name
will be used. Note:name
refers the name of the parameter, as might be used in a signature, whereas label is just the label for that widget in the GUI.tooltip (str) -- A tooltip to display when hovering over the widget.
visible (bool) -- Whether the widget is visible, by default
True
.backend_kwargs (dict) -- keyword argument to pass to the backend widget constructor.
- property current_index¶
- class magicclass.widgets.ListEdit(name: str = '', annotation: Any = None, label: str = None, tooltip: str | None = None, visible: bool | None = None, enabled: bool = True, gui_only=False, backend_kwargs={}, layout: str = 'horizontal', widgets: Sequence[Widget] = (), labels=True, value: Iterable[_V] | _Unset = UNSET, options: WidgetOptions = None)¶
Bases:
magicgui.widgets._bases.widget.Widget
,magicgui.widgets._bases.mixins._OrientationMixin
,MutableSequence
[magicgui.widgets._bases.widget.Widget
]A widget to represent a list of values.
A ListEdit container can create a list with multiple objects of same type. It will contain many child widgets and their value is represented as a Python list object. If a list is given as the initial value, types of child widgets are determined from the contents. Number of contents can be adjusted with +/- buttons.
- Parameters
name (str) -- The name of the parameter represented by this widget. by default ""
annotation (Any) -- The type annotation for the parameter represented by the widget, by default
None
label (str) -- A string to use for an associated Label widget (if this widget is being shown in a
Container
widget, and labels are on). By default,name
will be used. Note:name
refers the name of the parameter, as might be used in a signature, whereas label is just the label for that widget in the GUI.tooltip (str) -- A tooltip to display when hovering over the widget.
visible (bool) -- Whether the widget is visible, by default
True
.backend_kwargs (dict) -- keyword argument to pass to the backend widget constructor.
name -- The name of the parameter represented by this widget. by default ""
annotation -- The type annotation for the parameter represented by the widget, by default
None
label -- A string to use for an associated Label widget (if this widget is being shown in a
Container
widget, and labels are on). By default,name
will be used. Note:name
refers the name of the parameter, as might be used in a signature, whereas label is just the label for that widget in the GUI.tooltip -- A tooltip to display when hovering over the widget.
visible -- Whether the widget is visible, by default
True
.backend_kwargs -- keyword argument to pass to the backend widget constructor.
options (WidgetOptions) -- Widget options of child widgets.
- property annotation¶
Return type annotation for the parameter represented by the widget.
ForwardRefs will be resolve when setting the annotation. For ListEdit, annotation will be like 'list[str]'.
- property value: magicclass.widgets.sequence.ListDataView¶
Return a data view of current value.
- class magicclass.widgets.ListWidget(value: Optional[Iterable[Any]] = None, dragdrop: bool = True, **kwargs)[source]¶
Bases:
magicclass.widgets.pywidgets.object.BaseWidget
,MutableSequence
- index(obj: Any, start: int = 0, stop: Optional[int] = None) int [source]¶
Find object or list widget item from the list widget.
- Parameters
obj (Any) -- Object to find. If a PyListWidgetItem is given, the index of the item (not the tagged object) is searched for.
start (int, optional) -- Starting index, by default 0
stop (int, optional) -- Index to stop searching.
- Returns
Index of object.
- Return type
int
- Raises
ValueError -- If object was not found.
- property value: list[typing.Any]¶
Get all the contents as a Python list.
- Returns
Contents of the list widget.
- Return type
list
- class magicclass.widgets.ScrollableContainer(name: str = '', annotation: Any = None, label: str = None, tooltip: str | None = None, visible: bool | None = None, enabled: bool = True, gui_only=False, backend_kwargs={}, layout: str = 'vertical', widgets: Sequence[Widget] = (), labels=True)¶
Bases:
magicgui.widgets._bases.widget.Widget
,magicgui.widgets._bases.mixins._OrientationMixin
,MutableSequence
[magicgui.widgets._bases.widget.Widget
]A scrollable Container Widget.
- Parameters
name (str) -- The name of the parameter represented by this widget. by default ""
annotation (Any) -- The type annotation for the parameter represented by the widget, by default
None
label (str) -- A string to use for an associated Label widget (if this widget is being shown in a
Container
widget, and labels are on). By default,name
will be used. Note:name
refers the name of the parameter, as might be used in a signature, whereas label is just the label for that widget in the GUI.tooltip (str) -- A tooltip to display when hovering over the widget.
visible (bool) -- Whether the widget is visible, by default
True
.backend_kwargs (dict) -- keyword argument to pass to the backend widget constructor.
- class magicclass.widgets.Separator(orientation: str = 'horizontal', text: str = '', name: str = '', button: bool = False)[source]¶
Bases:
magicclass.widgets.utils.FreeWidget
A Separator widget that can be used in both widgets and menus.
- btn_clicked¶
- property btn_text¶
- central_widget: QWidget¶
- name: str¶
- class magicclass.widgets.SplitterContainer(name: str = '', annotation: Any = None, label: str = None, tooltip: str | None = None, visible: bool | None = None, enabled: bool = True, gui_only=False, backend_kwargs={}, layout: str = 'vertical', widgets: Sequence[Widget] = (), labels=True)¶
Bases:
magicgui.widgets._bases.widget.Widget
,magicgui.widgets._bases.mixins._OrientationMixin
,MutableSequence
[magicgui.widgets._bases.widget.Widget
]A Container equipped with splitter
- Parameters
name (str) -- The name of the parameter represented by this widget. by default ""
annotation (Any) -- The type annotation for the parameter represented by the widget, by default
None
label (str) -- A string to use for an associated Label widget (if this widget is being shown in a
Container
widget, and labels are on). By default,name
will be used. Note:name
refers the name of the parameter, as might be used in a signature, whereas label is just the label for that widget in the GUI.tooltip (str) -- A tooltip to display when hovering over the widget.
visible (bool) -- Whether the widget is visible, by default
True
.backend_kwargs (dict) -- keyword argument to pass to the backend widget constructor.
- class magicclass.widgets.StackedContainer(name: str = '', annotation: Any = None, label: str = None, tooltip: str | None = None, visible: bool | None = None, enabled: bool = True, gui_only=False, backend_kwargs={}, layout: str = 'vertical', widgets: Sequence[Widget] = (), labels=True)¶
Bases:
magicgui.widgets._bases.widget.Widget
,magicgui.widgets._bases.mixins._OrientationMixin
,MutableSequence
[magicgui.widgets._bases.widget.Widget
]A stacked Container Widget
- Parameters
name (str) -- The name of the parameter represented by this widget. by default ""
annotation (Any) -- The type annotation for the parameter represented by the widget, by default
None
label (str) -- A string to use for an associated Label widget (if this widget is being shown in a
Container
widget, and labels are on). By default,name
will be used. Note:name
refers the name of the parameter, as might be used in a signature, whereas label is just the label for that widget in the GUI.tooltip (str) -- A tooltip to display when hovering over the widget.
visible (bool) -- Whether the widget is visible, by default
True
.backend_kwargs (dict) -- keyword argument to pass to the backend widget constructor.
- property current_index¶
- class magicclass.widgets.SubWindowsContainer(name: str = '', annotation: Any = None, label: str = None, tooltip: str | None = None, visible: bool | None = None, enabled: bool = True, gui_only=False, backend_kwargs={}, layout: str = 'vertical', widgets: Sequence[Widget] = (), labels=True)¶
Bases:
magicgui.widgets._bases.widget.Widget
,magicgui.widgets._bases.mixins._OrientationMixin
,MutableSequence
[magicgui.widgets._bases.widget.Widget
]A window-in-window container
- Parameters
name (str) -- The name of the parameter represented by this widget. by default ""
annotation (Any) -- The type annotation for the parameter represented by the widget, by default
None
label (str) -- A string to use for an associated Label widget (if this widget is being shown in a
Container
widget, and labels are on). By default,name
will be used. Note:name
refers the name of the parameter, as might be used in a signature, whereas label is just the label for that widget in the GUI.tooltip (str) -- A tooltip to display when hovering over the widget.
visible (bool) -- Whether the widget is visible, by default
True
.backend_kwargs (dict) -- keyword argument to pass to the backend widget constructor.
- class magicclass.widgets.TabbedContainer(name: str = '', annotation: Any = None, label: str = None, tooltip: str | None = None, visible: bool | None = None, enabled: bool = True, gui_only=False, backend_kwargs={}, layout: str = 'vertical', widgets: Sequence[Widget] = (), labels=True)¶
Bases:
magicgui.widgets._bases.widget.Widget
,magicgui.widgets._bases.mixins._OrientationMixin
,MutableSequence
[magicgui.widgets._bases.widget.Widget
]A tab categorized Container Widget.
- Parameters
name (str) -- The name of the parameter represented by this widget. by default ""
annotation (Any) -- The type annotation for the parameter represented by the widget, by default
None
label (str) -- A string to use for an associated Label widget (if this widget is being shown in a
Container
widget, and labels are on). By default,name
will be used. Note:name
refers the name of the parameter, as might be used in a signature, whereas label is just the label for that widget in the GUI.tooltip (str) -- A tooltip to display when hovering over the widget.
visible (bool) -- Whether the widget is visible, by default
True
.backend_kwargs (dict) -- keyword argument to pass to the backend widget constructor.
- property current_index¶
- class magicclass.widgets.ToolBoxContainer(name: str = '', annotation: Any = None, label: str = None, tooltip: str | None = None, visible: bool | None = None, enabled: bool = True, gui_only=False, backend_kwargs={}, layout: str = 'vertical', widgets: Sequence[Widget] = (), labels=True)¶
Bases:
magicgui.widgets._bases.widget.Widget
,magicgui.widgets._bases.mixins._OrientationMixin
,MutableSequence
[magicgui.widgets._bases.widget.Widget
]A Tool box Widget.
- Parameters
name (str) -- The name of the parameter represented by this widget. by default ""
annotation (Any) -- The type annotation for the parameter represented by the widget, by default
None
label (str) -- A string to use for an associated Label widget (if this widget is being shown in a
Container
widget, and labels are on). By default,name
will be used. Note:name
refers the name of the parameter, as might be used in a signature, whereas label is just the label for that widget in the GUI.tooltip (str) -- A tooltip to display when hovering over the widget.
visible (bool) -- Whether the widget is visible, by default
True
.backend_kwargs (dict) -- keyword argument to pass to the backend widget constructor.
- property current_index¶
- class magicclass.widgets.TupleEdit(name: str = '', annotation: Any = None, label: str = None, tooltip: str | None = None, visible: bool | None = None, enabled: bool = True, gui_only=False, backend_kwargs={}, layout: str = 'horizontal', widgets: Sequence[Widget] = (), labels=True, value: Iterable[_V] | _Unset = UNSET, options: WidgetOptions = None)¶
Bases:
magicgui.widgets._bases.widget.Widget
,magicgui.widgets._bases.mixins._OrientationMixin
,MutableSequence
[magicgui.widgets._bases.widget.Widget
]A widget to represent a tuple of values.
A TupleEdit container has several child widgets of different type. Their value is represented as a Python tuple object. If a tuple is given as the initial value, types of child widgets are determined one by one. Unlike ListEdit, number of contents is not editable.
- Parameters
name (str) -- The name of the parameter represented by this widget. by default ""
annotation (Any) -- The type annotation for the parameter represented by the widget, by default
None
label (str) -- A string to use for an associated Label widget (if this widget is being shown in a
Container
widget, and labels are on). By default,name
will be used. Note:name
refers the name of the parameter, as might be used in a signature, whereas label is just the label for that widget in the GUI.tooltip (str) -- A tooltip to display when hovering over the widget.
visible (bool) -- Whether the widget is visible, by default
True
.backend_kwargs (dict) -- keyword argument to pass to the backend widget constructor.
name -- The name of the parameter represented by this widget. by default ""
annotation -- The type annotation for the parameter represented by the widget, by default
None
label -- A string to use for an associated Label widget (if this widget is being shown in a
Container
widget, and labels are on). By default,name
will be used. Note:name
refers the name of the parameter, as might be used in a signature, whereas label is just the label for that widget in the GUI.tooltip -- A tooltip to display when hovering over the widget.
visible -- Whether the widget is visible, by default
True
.backend_kwargs -- keyword argument to pass to the backend widget constructor.
options (WidgetOptions) -- Widget options of child widgets.
- property annotation¶
Return type annotation for the parameter represented by the widget.
ForwardRefs will be resolve when setting the annotation. For TupleEdit, annotation will be like 'tuple[str, int]'.
- property value: tuple¶
Return current value as a tuple.