fsleyes_widgets.floatspin
This module provides the FloatSpinCtrl class, a spin control for
modifying a floating point value.
- class fsleyes_widgets.floatspin.SpinButton(parent, style=4, upLabel='+', downLabel='−')[source]
Bases:
ControlReplacement for
wx.SpinButton.A control which contains up and down buttons, and which emits events
EVT_SPIN_UPandEVT_SPIN_DOWNevents when they are pressed.This is used by the
FloatSpinCtrlinstead of thewx.SpinButtonbecause:The``wx.SpinButton`` internally stores the current value as a signed 32 bit integer. It is much easier for the
FloatSpinCtrlto keep track of its own floating point value and limits.The
FloatSpinCtrldisplays its own text area, but on some GTK versions, thewx.SpinButtondisplays a text area, I think due to some latent bugs in wxwidgets - see e.g. https://github.com/wxWidgets/wxWidgets/issues/17847
Create a
SpinButton.- Parameters:
parent –
wxparent objectstyle – Button orientation - either
wx.HORIZONTALorwx.VERTICALupLabel – Up button label
downLabel – Down button label
- property upButton
Returns a reference to the up button.
- property downButton
Returns a reference to the down button.
- fsleyes_widgets.floatspin.EVT_SPIN_UP = <wx.core.PyEventBinder object>
Identifier for the
SpinUpEventevent.
- fsleyes_widgets.floatspin.EVT_SPIN_DOWN = <wx.core.PyEventBinder object>
Identifier for the
SpinDownEventevent.
- fsleyes_widgets.floatspin.SpinUpEvent
Event emitted when by a
SpinButtonwhen its up button is pushed.
- fsleyes_widgets.floatspin.SpinDownEvent
Event emitted when by a
SpinButtonwhen its down button is pushed.
- class fsleyes_widgets.floatspin.FloatSpinCtrl(parent, minValue=None, maxValue=None, increment=None, value=None, style=None, width=None, evDelta=None, precision=None)[source]
Bases:
ControlA
FloatSpinCtrlis awx.Controlwhich contains awx.TextCtrland awx.SpinButton, allowing the user to modify a floating point (or integer) value.The
FloatSpinCtrlis an alternative towx.SpinCtrl,wx.SpinCtrlDouble, andwx.lib.agw.floatspin.FloatSpin.wx.SpinCtrlDouble: Under Linux/GTK, this widget does not allowthe user to enter values that are not a multiple of the increment.
wx.lib.agw.floatspin.FloatSpin. Differs from thewx.SpinCtrlAPI in various annoying ways, and formatting is a pain.
Create a
FloatSpinCtrl.- The following style flags are available:
If set, mouse wheel events on the control will change the value.
If set, the control stores an integer value, rather than a floating point value.
If set, the control will allow the user to enter values that are outside of the current minimum/maximum limits.
- Parameters:
parent – The parent of this control (e.g. a
wx.Panel).minValue – Initial minimum value.
maxValue – Initial maximum value.
increment – Default increment to apply when the user changes the value via the spin button or mouse wheel.
value – Initial value.
style – Style flags - a combination of
FSC_MOUSEWHEEL,FSC_INTEGER, andFSC_NO_LIMIT.width – If provided, desired text control width (in characters).
evDelta –
Deprecated, has no effect.
This has the side effect that if the user clicks and holds on the spin button, they have to wait <delta> seconds between increments/decrements.
precision – The desired precision to the right of the decimal value. Ignored if the
FSC_INTEGERstyle is active.
- property textCtrl
Returns a reference to the
TextCtrlcontained in thisFloatSpinCtrl.
- property spinButton
Returns a reference to the
SpinButtoncontained in thisFloatSpinCtrl.
- fsleyes_widgets.floatspin.EVT_FLOATSPIN = <wx.core.PyEventBinder object>
Identifier for the
FloatSpinEventevent.
- fsleyes_widgets.floatspin.FloatSpinEvent
Event emitted when the floating point value is changed by the user. A
FloatSpinEventhas the following attributes:value: The new value.
- fsleyes_widgets.floatspin.FSC_MOUSEWHEEL = 1
If set, mouse wheel events on the control will change the value.
- fsleyes_widgets.floatspin.FSC_INTEGER = 2
If set, the control stores an integer value, rather than a floating point value.
- fsleyes_widgets.floatspin.FSC_NO_LIMIT = 4
If set, the control will allow the user to enter values that are outside of the current minimum/maximum limits.