fsleyes.controls.controlpanel

This module provides the ControlPanel, ControlToolBar, and SettingsPanel classes, base-classes for all FSLeyes controls.

See the fsleyes package documentation for an overview of FSLeyes views and controls.

The SettingsPanel is a convenience class for certain FSLeyes control panels (see the :fsleyes documentation).

class fsleyes.controls.controlpanel.ControlMixin

Bases: object

Mixin class for the ControlPanel and ControlToolBar.

static supportedViews()

Return the views that this control supports.

This method may be overridden by sub-classes to return a list of the view types that are supported by this control. For example, the OrthoToolBar control is intended to be used solely with the OrthoPanel view.

The default implementation returns None, which is interpreted as being compatible with all views.

__dict__ = mappingproxy({'__module__': 'fsleyes.controls.controlpanel', '__doc__': 'Mixin class for the :class:`ControlPanel` and :class:`ControlToolBar`.\n ', 'supportedViews': <staticmethod object>, '__dict__': <attribute '__dict__' of 'ControlMixin' objects>, '__weakref__': <attribute '__weakref__' of 'ControlMixin' objects>})
__module__ = 'fsleyes.controls.controlpanel'
__weakref__

list of weak references to the object (if defined)

class fsleyes.controls.controlpanel.ControlPanel(parent, overlayList, displayCtx, frame, *args, **kwargs)

Bases: fsleyes.panel.FSLeyesPanel, fsleyes.controls.controlpanel.ControlMixin

The ControlPanel is the base class for all FSLeyes controls.

__module__ = 'fsleyes.controls.controlpanel'
class fsleyes.controls.controlpanel.ControlToolBar(parent, overlayList, displayCtx, frame, height=32, orient=<MagicMock name='mock.HORIZONTAL' id='140655055127832'>, *args, **kwargs)

Bases: fsleyes.toolbar.FSLeyesToolBar, fsleyes.controls.controlpanel.ControlMixin

The ControlToolBar is the base class for all FSLeyes toolbars.

__module__ = 'fsleyes.controls.controlpanel'
class fsleyes.controls.controlpanel.SettingsPanel(*args, **kwargs)

Bases: fsleyes.controls.controlpanel.ControlPanel

The SettingsPanel is a convenience class for FSLeyes control panels which use a fsleyes_widgets.WidgetList to display a collection of controls for the user. When displayed as a dialog/ floating frame, the SettingsPanel will automatically resize itself to fit its contents. See the CanvasSettingsPanel for an example.

__init__(*args, **kwargs)

Create a SettingsPanel. All arguments are passed to the FSLeyesPanel.__init__() method.

getWidgetList()

Returns the fsleyes_widgets.WidgetList which should be used by sub-classes to display content to the user.

_SettingsPanel__widgetListChange(ev)

Called whenever the widget list contents change. If this panel is floating, its parent is autmatically resized.

__module__ = 'fsleyes.controls.controlpanel'