Copyright | Will Thompson Iñaki García Etxebarria and Jonas Platte |
---|---|
License | LGPL-2.1 |
Maintainer | Iñaki García Etxebarria |
Safe Haskell | None |
Language | Haskell2010 |
A RGBA
is used to represent a (possibly translucent)
color, in a way that is compatible with cairo’s notion of color.
Synopsis
- newtype RGBA = RGBA (ManagedPtr RGBA)
- newZeroRGBA :: MonadIO m => m RGBA
- noRGBA :: Maybe RGBA
- rGBACopy :: (HasCallStack, MonadIO m) => RGBA -> m RGBA
- rGBAEqual :: (HasCallStack, MonadIO m) => RGBA -> RGBA -> m Bool
- rGBAFree :: (HasCallStack, MonadIO m) => RGBA -> m ()
- rGBAHash :: (HasCallStack, MonadIO m) => RGBA -> m Word32
- rGBAParse :: (HasCallStack, MonadIO m) => RGBA -> Text -> m Bool
- rGBAToString :: (HasCallStack, MonadIO m) => RGBA -> m Text
- getRGBAAlpha :: MonadIO m => RGBA -> m Double
- setRGBAAlpha :: MonadIO m => RGBA -> Double -> m ()
- getRGBABlue :: MonadIO m => RGBA -> m Double
- setRGBABlue :: MonadIO m => RGBA -> Double -> m ()
- getRGBAGreen :: MonadIO m => RGBA -> m Double
- setRGBAGreen :: MonadIO m => RGBA -> Double -> m ()
- getRGBARed :: MonadIO m => RGBA -> m Double
- setRGBARed :: MonadIO m => RGBA -> Double -> m ()
Exported types
Memory-managed wrapper type.
Methods
Overloaded methods
copy
equal
:: (HasCallStack, MonadIO m) | |
=> RGBA |
|
-> RGBA |
|
-> m Bool | Returns: |
Compares two RGBA colors.
Since: 3.0
free
:: (HasCallStack, MonadIO m) | |
=> RGBA |
|
-> m () |
hash
:: (HasCallStack, MonadIO m) | |
=> RGBA |
|
-> m Word32 | Returns: The hash value for |
A hash function suitable for using for a hash
table that stores GdkRGBAs
.
Since: 3.0
parse
:: (HasCallStack, MonadIO m) | |
=> RGBA |
|
-> Text |
|
-> m Bool | Returns: |
Parses a textual representation of a color, filling in
the red
, green
, blue
and alpha
fields of the rgba
RGBA
.
The string can be either one of:
- A standard name (Taken from the X11 rgb.txt file).
- A hexadecimal value in the form “rrggbb”, “rrrrggggbbbb”
- A RGB color in the form “rgb(r,g,b)” (In this case the color will have full opacity)
- A RGBA color in the form “rgba(r,g,b,a)”
Where “r”, “g”, “b” and “a” are respectively the red, green, blue and alpha color values. In the last two cases, “r”, “g”, and “b” are either integers in the range 0 to 255 or percentage values in the range 0% to 100%, and a is a floating point value in the range 0 to 1.
Since: 3.0
toString
:: (HasCallStack, MonadIO m) | |
=> RGBA |
|
-> m Text | Returns: A newly allocated text string |
Returns a textual specification of rgba
in the form
rgb(r,g,b)
or
rgba(r g,b,a)
,
where “r”, “g”, “b” and “a” represent the red, green,
blue and alpha values respectively. “r”, “g”, and “b” are
represented as integers in the range 0 to 255, and “a”
is represented as a floating point value in the range 0 to 1.
These string forms are string forms that are supported by
the CSS3 colors module, and can be parsed by rGBAParse
.
Note that this string representation may lose some precision, since “r”, “g” and “b” are represented as 8-bit integers. If this is a concern, you should use a different representation.
Since: 3.0
Properties
alpha
The opacity of the color from 0.0 for completely translucent to 1.0 for opaque
getRGBAAlpha :: MonadIO m => RGBA -> m Double Source #
Get the value of the “alpha
” field.
When overloading is enabled, this is equivalent to
get
rGBA #alpha
setRGBAAlpha :: MonadIO m => RGBA -> Double -> m () Source #
Set the value of the “alpha
” field.
When overloading is enabled, this is equivalent to
set
rGBA [ #alpha:=
value ]
blue
The intensity of the blue channel from 0.0 to 1.0 inclusive
getRGBABlue :: MonadIO m => RGBA -> m Double Source #
Get the value of the “blue
” field.
When overloading is enabled, this is equivalent to
get
rGBA #blue
setRGBABlue :: MonadIO m => RGBA -> Double -> m () Source #
Set the value of the “blue
” field.
When overloading is enabled, this is equivalent to
set
rGBA [ #blue:=
value ]
green
The intensity of the green channel from 0.0 to 1.0 inclusive
getRGBAGreen :: MonadIO m => RGBA -> m Double Source #
Get the value of the “green
” field.
When overloading is enabled, this is equivalent to
get
rGBA #green
setRGBAGreen :: MonadIO m => RGBA -> Double -> m () Source #
Set the value of the “green
” field.
When overloading is enabled, this is equivalent to
set
rGBA [ #green:=
value ]
red
The intensity of the red channel from 0.0 to 1.0 inclusive
getRGBARed :: MonadIO m => RGBA -> m Double Source #
Get the value of the “red
” field.
When overloading is enabled, this is equivalent to
get
rGBA #red
setRGBARed :: MonadIO m => RGBA -> Double -> m () Source #
Set the value of the “red
” field.
When overloading is enabled, this is equivalent to
set
rGBA [ #red:=
value ]