RGBAProtocol

public protocol RGBAProtocol

The RGBAProtocol protocol exposes the methods and properties of an underlying GdkRGBA instance. The default implementation of these can be found in the protocol extension below. For a concrete class that implements these methods and properties, see RGBA. Alternatively, use RGBARef as a lighweight, unowned reference if you already have an instance you just want to use.

A GdkRGBA is used to represent a color, in a way that is compatible with cairo’s notion of color.

GdkRGBA is a convenient way to pass colors around. It’s based on cairo’s way to deal with colors and mirrors its behavior. All values are in the range from 0.0 to 1.0 inclusive. So the color (0.0, 0.0, 0.0, 0.0) represents transparent black and (1.0, 1.0, 1.0, 1.0) is opaque white. Other values will be clamped to this range when drawing.

  • ptr

    Untyped pointer to the underlying GdkRGBA instance.

    Declaration

    Swift

    var ptr: UnsafeMutableRawPointer! { get }
  • rgba_ptr Default implementation

    Typed pointer to the underlying GdkRGBA instance.

    Default Implementation

    Return the stored, untyped pointer as a typed pointer to the GdkRGBA instance.

    Declaration

    Swift

    var rgba_ptr: UnsafeMutablePointer<GdkRGBA>! { get }
  • Required Initialiser for types conforming to RGBAProtocol

    Declaration

    Swift

    init(raw: UnsafeMutableRawPointer)

RGBA Record: RGBAProtocol extension (methods and fields)

  • copy() Extension method

    Makes a copy of a GdkRGBA.

    The result must be freed through [methodGdk.RGBA.free].

    Declaration

    Swift

    @inlinable
    func copy() -> RGBARef!
  • equal(p2:) Extension method

    Compares two GdkRGBA colors.

    Declaration

    Swift

    @inlinable
    func equal<RGBAT>(p2: RGBAT) -> Bool where RGBAT : RGBAProtocol
  • free() Extension method

    Frees a GdkRGBA.

    Declaration

    Swift

    @inlinable
    func free()
  • hash() Extension method

    A hash function suitable for using for a hash table that stores GdkRGBAs.

    Declaration

    Swift

    @inlinable
    func hash() -> Int
  • parse(spec:) Extension method

    Parses a textual representation of a color.

    The string can be either one of:

    • A standard name (Taken from the X11 rgb.txt file).
    • A hexadecimal value in the form “`rgb”, “\rrggbb”, “\rrrgggbbb” or ”\rrrrggggbbbb`”
    • A hexadecimal value in the form “`rgba”, “\rrggbbaa”, or ”\rrrrggggbbbbaaaa`”
    • 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.

    Declaration

    Swift

    @inlinable
    func parse(spec: UnsafePointer<CChar>!) -> Bool
  • toString() Extension method

    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 [methodGdk.RGBA.parse].

    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.

    Declaration

    Swift

    @inlinable
    func toString() -> String!
  • cairoSetSourceRgba(cr:) Extension method

    Sets the specified GdkRGBA as the source color of cr.

    Declaration

    Swift

    @inlinable
    func cairoSetSourceRgba<ContextT>(cr: ContextT) where ContextT : ContextProtocol
  • isClear Extension method

    Checks if an rgba value is transparent.

    That is, drawing with the value would not produce any change.

    Declaration

    Swift

    @inlinable
    var isClear: Bool { get }
  • isOpaque Extension method

    Checks if an rgba value is opaque.

    That is, drawing with the value will not retain any results from previous contents.

    Declaration

    Swift

    @inlinable
    var isOpaque: Bool { get }
  • red Extension method

    The intensity of the red channel from 0.0 to 1.0 inclusive

    Declaration

    Swift

    @inlinable
    var red: CFloat { get set }
  • green Extension method

    The intensity of the green channel from 0.0 to 1.0 inclusive

    Declaration

    Swift

    @inlinable
    var green: CFloat { get set }
  • blue Extension method

    The intensity of the blue channel from 0.0 to 1.0 inclusive

    Declaration

    Swift

    @inlinable
    var blue: CFloat { get set }
  • alpha Extension method

    The opacity of the color from 0.0 for completely translucent to 1.0 for opaque

    Declaration

    Swift

    @inlinable
    var alpha: CFloat { get set }