Graphics.UI.Gtk.Selectors.HSV

gtk3-0.14.5: Binding to the Gtk+ 3 graphical user interface library

Maintainer | gtk2hs-users@lists.sourceforge.net
Stability | provisional
Portability | portable (depends on GHC)
Safe Haskell | None
Language | Haskell98

Graphics.UI.Gtk.Selectors.HSV

Contents

- Detail
- Class Hierarchy
- Types
- Constructors
- Methods
- Attributes
- Signals

Description

A 'color wheel' widget

- Module available since Gtk+ version 2.14

Synopsis

- data HSV
- class WidgetClass o => HSVClass o
- castToHSV :: GObjectClass obj => obj -> HSV
- toHSV :: HSVClass o => o -> HSV
- hsvNew :: IO HSV
- hsvIsAdjusting :: HSVClass self => self -> IO Bool
- hsvToRgb :: (Double, Double, Double) -> (Double, Double, Double)
- rgbToHsv :: (Double, Double, Double) -> (Double, Double, Double)
- hsvColor :: HSVClass self => Attr self (Double, Double, Double)
- hsvMetrics :: HSVClass self => Attr self (Int, Int)
- hsvChanged :: HSVClass self => Signal self (IO ())
- hsvMove :: HSVClass self => Signal self (DirectionType -> IO ())

# Detail

`HSV` is the 'color wheel' part of a complete color selector widget. It allows to select a color by determining its `HSV` components in an intuitive way. Moving the selection around the outer ring changes the hue, and moving the selection point inside the inner triangle changes value and saturation.

# Class Hierarchy

    | GObject
    | +----Object
    | +----Widget
    | +----HSV

# Types

data HSV #

Instances

Eq HSV # |
Methods (==) :: HSV -> HSV -> Bool # (/=) :: HSV -> HSV -> Bool #
Ord HSV # |
Methods compare :: HSV -> HSV -> Ordering # (<) :: HSV -> HSV -> Bool # (<=) :: HSV -> HSV -> Bool # (>) :: HSV -> HSV -> Bool # (>=) :: HSV -> HSV -> Bool # max :: HSV -> HSV -> HSV # min :: HSV -> HSV -> HSV #
GObjectClass HSV # |
Methods toGObject :: HSV -> GObject # unsafeCastGObject :: GObject -> HSV #
HSVClass HSV # |
WidgetClass HSV # |

class WidgetClass o => HSVClass o #

Instances

HSVClass HSV # |

castToHSV :: GObjectClass obj => obj -> HSV #

toHSV :: HSVClass o => o -> HSV #

# Constructors

hsvNew :: IO HSV #

Creates a new `HSV` color selector.

- Available since 2.14

# Methods

hsvIsAdjusting #

Arguments

:: HSVClass self |
=> self |
-> IO Bool | returns `True` if clients can ignore changes to the color value, since they may be transitory, or `False` if they should consider the color value status to be final.

An `HSV` color selector can be said to be adjusting if multiple rapid changes are being made to its value, for example, when the user is adjusting the value with the mouse. This function queries whether the `HSV` color selector is being adjusted or not.

hsvToRgb #

Arguments

:: (Double, Double, Double) | `(h, s, v)` `h` - value for the hue `s` value for the saturation `v` value for the value
-> (Double, Double, Double) | `(r, g, b)` `r` - Return value for the red component `g` - Return value for the green component `b` - Return value for the blue component

Converts a color from `HSV` space to RGB. Input values must be in the [0.0, 1.0] range; output values will be in the same range.

rgbToHsv #

Arguments

:: (Double, Double, Double) | `(r, g, b)` `r` value for the red component `g` value for the green component `b` value for the blue component
-> (Double, Double, Double) | `(h, s, v)` `h` - Return value for the hue `s` - Return value for the saturation `v` - Return value for the value

Converts a color from RGB space to `HSV`. Input values must be in the [0.0, 1.0] range; output values will be in the same range.

# Attributes

hsvColor :: HSVClass self => Attr self (Double, Double, Double) #

Color in an `HSV` color selector. Color component values must be in the [0.0, 1.0] range.

hsvMetrics :: HSVClass self => Attr self (Int, Int) #

The size and ring width of an `HSV` color selector.

# Signals

hsvChanged :: HSVClass self => Signal self (IO ()) #

hsvMove :: HSVClass self => Signal self (DirectionType -> IO ()) #