monomer-1.3.0.0: A GUI library for writing native Haskell applications.
Copyright(c) 2018 Francisco Vallarino
LicenseBSD-3-Clause (see the LICENSE file)
Maintainerfjvallarino@gmail.com
Stabilityexperimental
Portabilitynon-portable
Safe HaskellNone
LanguageHaskell2010

Monomer.Widgets.Singles.OptionButton

Description

Option button widget, used for choosing one value from a fixed set. Each instance of optionButton will be associated with a single value.

Its behavior is equivalent to Radio and LabeledRadio, with a different visual representation.

This widget, and the associated ToggleButton, uses two separate styles for the On and Off states which can be modified individually for the theme. If you use any of the the standard style functions (styleBasic, styleHover, etc) in an optionButton/toggleButton these changes will apply to both On and Off states, except for the color related styles. The reason for this is that, in general, you will want to use the same font and padding for both states, but colors will usually differ. For changing the colors of the Off state you can use optionButtonOffStyle, that receives a Style instance. The values set here are higher priority than any inherited style from the theme or node text style.

Style instances can be created this way:

newStyle :: Style = def
  styleBasic [textSize 20]
  styleHover [textColor white]
Synopsis

Configuration

type OptionButtonValue a = (Eq a, Typeable a) Source #

Constraints for numeric types accepted by the optionButton widget.

data OptionButtonCfg s e a Source #

Configuration options for optionButton:

Instances

Instances details
Semigroup (OptionButtonCfg s e a) Source # 
Instance details

Defined in Monomer.Widgets.Singles.OptionButton

Methods

(<>) :: OptionButtonCfg s e a -> OptionButtonCfg s e a -> OptionButtonCfg s e a #

sconcat :: NonEmpty (OptionButtonCfg s e a) -> OptionButtonCfg s e a #

stimes :: Integral b => b -> OptionButtonCfg s e a -> OptionButtonCfg s e a #

Monoid (OptionButtonCfg s e a) Source # 
Instance details

Defined in Monomer.Widgets.Singles.OptionButton

Default (OptionButtonCfg s e a) Source # 
Instance details

Defined in Monomer.Widgets.Singles.OptionButton

Methods

def :: OptionButtonCfg s e a #

CmbIgnoreTheme (OptionButtonCfg s e a) Source # 
Instance details

Defined in Monomer.Widgets.Singles.OptionButton

CmbResizeFactorDim (OptionButtonCfg s e a) Source # 
Instance details

Defined in Monomer.Widgets.Singles.OptionButton

CmbResizeFactor (OptionButtonCfg s e a) Source # 
Instance details

Defined in Monomer.Widgets.Singles.OptionButton

CmbTrimSpaces (OptionButtonCfg s e a) Source # 
Instance details

Defined in Monomer.Widgets.Singles.OptionButton

CmbEllipsis (OptionButtonCfg s e a) Source # 
Instance details

Defined in Monomer.Widgets.Singles.OptionButton

CmbMultiline (OptionButtonCfg s e a) Source # 
Instance details

Defined in Monomer.Widgets.Singles.OptionButton

CmbMaxLines (OptionButtonCfg s e a) Source # 
Instance details

Defined in Monomer.Widgets.Singles.OptionButton

Methods

maxLines :: Int -> OptionButtonCfg s e a Source #

WidgetEvent e => CmbOnChange (OptionButtonCfg s e a) a e Source # 
Instance details

Defined in Monomer.Widgets.Singles.OptionButton

Methods

onChange :: (a -> e) -> OptionButtonCfg s e a Source #

WidgetEvent e => CmbOnBlur (OptionButtonCfg s e a) e Path Source # 
Instance details

Defined in Monomer.Widgets.Singles.OptionButton

Methods

onBlur :: (Path -> e) -> OptionButtonCfg s e a Source #

WidgetEvent e => CmbOnFocus (OptionButtonCfg s e a) e Path Source # 
Instance details

Defined in Monomer.Widgets.Singles.OptionButton

Methods

onFocus :: (Path -> e) -> OptionButtonCfg s e a Source #

CmbOnChangeReq (OptionButtonCfg s e a) s e a Source # 
Instance details

Defined in Monomer.Widgets.Singles.OptionButton

Methods

onChangeReq :: (a -> WidgetRequest s e) -> OptionButtonCfg s e a Source #

CmbOnBlurReq (OptionButtonCfg s e a) s e Path Source # 
Instance details

Defined in Monomer.Widgets.Singles.OptionButton

Methods

onBlurReq :: (Path -> WidgetRequest s e) -> OptionButtonCfg s e a Source #

CmbOnFocusReq (OptionButtonCfg s e a) s e Path Source # 
Instance details

Defined in Monomer.Widgets.Singles.OptionButton

Methods

onFocusReq :: (Path -> WidgetRequest s e) -> OptionButtonCfg s e a Source #

optionButtonOffStyle :: Style -> OptionButtonCfg s e a Source #

Sets the style for the Off state of the option button.

Constructors

optionButton :: OptionButtonValue a => Text -> a -> ALens' s a -> WidgetNode s e Source #

Creates an optionButton using the given lens.

optionButton_ :: OptionButtonValue a => Text -> a -> ALens' s a -> [OptionButtonCfg s e a] -> WidgetNode s e Source #

Creates an optionButton using the given lens. Accepts config.

optionButtonV :: (OptionButtonValue a, WidgetEvent e) => Text -> a -> a -> (a -> e) -> WidgetNode s e Source #

Creates an optionButton using the given value and onChange event handler.

optionButtonV_ :: (OptionButtonValue a, WidgetEvent e) => Text -> a -> a -> (a -> e) -> [OptionButtonCfg s e a] -> WidgetNode s e Source #

Creates an optionButton using the given value and onChange event handler. Accepts config.

optionButtonD_ :: OptionButtonValue a => Text -> a -> WidgetData s a -> [OptionButtonCfg s e a] -> WidgetNode s e Source #

Creates an optionButton providing a WidgetData instance and config.

Internal