ColorButtonProtocol

public protocol ColorButtonProtocol : ButtonProtocol, ColorChooserProtocol

The GtkColorButton is a button which displays the currently selected color and allows to open a color selection dialog to change the color. It is suitable widget for selecting a color in a preference dialog.

CSS nodes

GtkColorButton has a single CSS node with name button. To differentiate it from a plain GtkButton, it gets the .color style class.

The ColorButtonProtocol protocol exposes the methods and properties of an underlying GtkColorButton 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 ColorButton. Alternatively, use ColorButtonRef as a lighweight, unowned reference if you already have an instance you just want to use.

  • ptr

    Untyped pointer to the underlying GtkColorButton instance.

    Declaration

    Swift

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

    Typed pointer to the underlying GtkColorButton instance.

    Default Implementation

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

    Declaration

    Swift

    var color_button_ptr: UnsafeMutablePointer<GtkColorButton>! { get }
  • Required Initialiser for types conforming to ColorButtonProtocol

    Declaration

    Swift

    init(raw: UnsafeMutableRawPointer)

ColorButton Class

  • Bind a ColorButtonPropertyName source property to a given target object.

    Declaration

    Swift

    @discardableResult
    @inlinable
    func bind<Q, T>(property source_property: ColorButtonPropertyName, to target: T, _ target_property: Q, flags f: BindingFlags = .default, transformFrom transform_from: @escaping GLibObject.ValueTransformer = { $0.transform(destValue: $1) }, transformTo transform_to: @escaping GLibObject.ValueTransformer = { $0.transform(destValue: $1) }) -> BindingRef! where Q : PropertyNameProtocol, T : ObjectProtocol

    Parameters

    source_property

    the source property to bind

    target

    the target object to bind to

    target_property

    the target property to bind to

    flags

    the flags to pass to the Binding

    transform_from

    ValueTransformer to use for forward transformation

    transform_to

    ValueTransformer to use for backwards transformation

    Return Value

    binding reference or nil in case of an error

  • get(property:) Extension method

    Get the value of a ColorButton property

    Declaration

    Swift

    @inlinable
    func get(property: ColorButtonPropertyName) -> GLibObject.Value

    Parameters

    property

    the property to get the value for

    Return Value

    the value of the named property

  • set(property:value:) Extension method

    Set the value of a ColorButton property. Note that this will only have an effect on properties that are writable and not construct-only!

    Declaration

    Swift

    @inlinable
    func set(property: ColorButtonPropertyName, value v: GLibObject.Value)

    Parameters

    property

    the property to get the value for

    Return Value

    the value of the named property

ColorButton signals

  • Connect a Swift signal handler to the given, typed ColorButtonSignalName signal

    Declaration

    Swift

    @discardableResult
    @inlinable
    func connect(signal s: ColorButtonSignalName, flags f: ConnectFlags = ConnectFlags(0), handler h: @escaping SignalHandler) -> Int

    Parameters

    signal

    The signal to connect

    flags

    The connection flags to use

    data

    A pointer to user data to provide to the callback

    destroyData

    A GClosureNotify C function to destroy the data pointed to by userData

    handler

    The Swift signal handler (function or callback) to invoke on the given signal

    Return Value

    The signal handler ID (always greater than 0 for successful connections)

  • Connect a C signal handler to the given, typed ColorButtonSignalName signal

    Declaration

    Swift

    @discardableResult
    @inlinable
    func connect(signal s: ColorButtonSignalName, flags f: ConnectFlags = ConnectFlags(0), data userData: gpointer!, destroyData destructor: GClosureNotify? = nil, signalHandler h: @escaping GCallback) -> Int

    Parameters

    signal

    The signal to connect

    flags

    The connection flags to use

    data

    A pointer to user data to provide to the callback

    destroyData

    A GClosureNotify C function to destroy the data pointed to by userData

    signalHandler

    The C function to be called on the given signal

    Return Value

    The signal handler ID (always greater than 0 for successful connections)

  • onColorSet(flags:handler:) Extension method

    The color-set signal is emitted when the user selects a color. When handling this signal, use gtk_color_button_get_rgba() to find out which color was just selected.

    Note that this signal is only emitted when the user changes the color. If you need to react to programmatic color changes as well, use the notifycolor signal.

    Note

    This represents the underlying color-set signal

    Declaration

    Swift

    @discardableResult
    @inlinable
    func onColorSet(flags: ConnectFlags = ConnectFlags(0), handler: @escaping (_ unownedSelf: ColorButtonRef) -> Void) -> Int

    Parameters

    flags

    Flags

    unownedSelf

    Reference to instance of self

    handler

    The signal handler to call Run the given callback whenever the colorSet signal is emitted

  • colorSetSignal Extension method

    Typed color-set signal for using the connect(signal:) methods

    Declaration

    Swift

    static var colorSetSignal: ColorButtonSignalName { get }
  • The notify signal is emitted on an object when one of its properties has its value set through g_object_set_property(), g_object_set(), et al.

    Note that getting this signal doesn’t itself guarantee that the value of the property has actually changed. When it is emitted is determined by the derived GObject class. If the implementor did not create the property with G_PARAM_EXPLICIT_NOTIFY, then any call to g_object_set_property() results in notify being emitted, even if the new value is the same as the old. If they did pass G_PARAM_EXPLICIT_NOTIFY, then this signal is emitted only when they explicitly call g_object_notify() or g_object_notify_by_pspec(), and common practice is to do that only when the value has actually changed.

    This signal is typically used to obtain change notification for a single property, by specifying the property name as a detail in the g_signal_connect() call, like this:

    (C Language Example):

    g_signal_connect (text_view->buffer, "notify::paste-target-list",
                      G_CALLBACK (gtk_text_view_target_list_notify),
                      text_view)
    

    It is important to note that you must use canonical parameter names as detail strings for the notify signal.

    Note

    This represents the underlying notify::alpha signal

    Declaration

    Swift

    @discardableResult
    @inlinable
    func onNotifyAlpha(flags: ConnectFlags = ConnectFlags(0), handler: @escaping (_ unownedSelf: ColorButtonRef, _ pspec: ParamSpecRef) -> Void) -> Int

    Parameters

    flags

    Flags

    unownedSelf

    Reference to instance of self

    pspec

    the GParamSpec of the property which changed.

    handler

    The signal handler to call Run the given callback whenever the notifyAlpha signal is emitted

  • notifyAlphaSignal Extension method

    Typed notify::alpha signal for using the connect(signal:) methods

    Declaration

    Swift

    static var notifyAlphaSignal: ColorButtonSignalName { get }
  • The notify signal is emitted on an object when one of its properties has its value set through g_object_set_property(), g_object_set(), et al.

    Note that getting this signal doesn’t itself guarantee that the value of the property has actually changed. When it is emitted is determined by the derived GObject class. If the implementor did not create the property with G_PARAM_EXPLICIT_NOTIFY, then any call to g_object_set_property() results in notify being emitted, even if the new value is the same as the old. If they did pass G_PARAM_EXPLICIT_NOTIFY, then this signal is emitted only when they explicitly call g_object_notify() or g_object_notify_by_pspec(), and common practice is to do that only when the value has actually changed.

    This signal is typically used to obtain change notification for a single property, by specifying the property name as a detail in the g_signal_connect() call, like this:

    (C Language Example):

    g_signal_connect (text_view->buffer, "notify::paste-target-list",
                      G_CALLBACK (gtk_text_view_target_list_notify),
                      text_view)
    

    It is important to note that you must use canonical parameter names as detail strings for the notify signal.

    Note

    This represents the underlying notify::color signal

    Declaration

    Swift

    @discardableResult
    @inlinable
    func onNotifyColor(flags: ConnectFlags = ConnectFlags(0), handler: @escaping (_ unownedSelf: ColorButtonRef, _ pspec: ParamSpecRef) -> Void) -> Int

    Parameters

    flags

    Flags

    unownedSelf

    Reference to instance of self

    pspec

    the GParamSpec of the property which changed.

    handler

    The signal handler to call Run the given callback whenever the notifyColor signal is emitted

  • notifyColorSignal Extension method

    Typed notify::color signal for using the connect(signal:) methods

    Declaration

    Swift

    static var notifyColorSignal: ColorButtonSignalName { get }
  • onNotifyRGBA(flags:handler:) Extension method

    The notify signal is emitted on an object when one of its properties has its value set through g_object_set_property(), g_object_set(), et al.

    Note that getting this signal doesn’t itself guarantee that the value of the property has actually changed. When it is emitted is determined by the derived GObject class. If the implementor did not create the property with G_PARAM_EXPLICIT_NOTIFY, then any call to g_object_set_property() results in notify being emitted, even if the new value is the same as the old. If they did pass G_PARAM_EXPLICIT_NOTIFY, then this signal is emitted only when they explicitly call g_object_notify() or g_object_notify_by_pspec(), and common practice is to do that only when the value has actually changed.

    This signal is typically used to obtain change notification for a single property, by specifying the property name as a detail in the g_signal_connect() call, like this:

    (C Language Example):

    g_signal_connect (text_view->buffer, "notify::paste-target-list",
                      G_CALLBACK (gtk_text_view_target_list_notify),
                      text_view)
    

    It is important to note that you must use canonical parameter names as detail strings for the notify signal.

    Note

    This represents the underlying notify::rgba signal

    Declaration

    Swift

    @discardableResult
    @inlinable
    func onNotifyRGBA(flags: ConnectFlags = ConnectFlags(0), handler: @escaping (_ unownedSelf: ColorButtonRef, _ pspec: ParamSpecRef) -> Void) -> Int

    Parameters

    flags

    Flags

    unownedSelf

    Reference to instance of self

    pspec

    the GParamSpec of the property which changed.

    handler

    The signal handler to call Run the given callback whenever the notifyRGBA signal is emitted

  • notifyRGBASignal Extension method

    Typed notify::rgba signal for using the connect(signal:) methods

    Declaration

    Swift

    static var notifyRGBASignal: ColorButtonSignalName { get }
  • The notify signal is emitted on an object when one of its properties has its value set through g_object_set_property(), g_object_set(), et al.

    Note that getting this signal doesn’t itself guarantee that the value of the property has actually changed. When it is emitted is determined by the derived GObject class. If the implementor did not create the property with G_PARAM_EXPLICIT_NOTIFY, then any call to g_object_set_property() results in notify being emitted, even if the new value is the same as the old. If they did pass G_PARAM_EXPLICIT_NOTIFY, then this signal is emitted only when they explicitly call g_object_notify() or g_object_notify_by_pspec(), and common practice is to do that only when the value has actually changed.

    This signal is typically used to obtain change notification for a single property, by specifying the property name as a detail in the g_signal_connect() call, like this:

    (C Language Example):

    g_signal_connect (text_view->buffer, "notify::paste-target-list",
                      G_CALLBACK (gtk_text_view_target_list_notify),
                      text_view)
    

    It is important to note that you must use canonical parameter names as detail strings for the notify signal.

    Note

    This represents the underlying notify::show-editor signal

    Declaration

    Swift

    @discardableResult
    @inlinable
    func onNotifyShowEditor(flags: ConnectFlags = ConnectFlags(0), handler: @escaping (_ unownedSelf: ColorButtonRef, _ pspec: ParamSpecRef) -> Void) -> Int

    Parameters

    flags

    Flags

    unownedSelf

    Reference to instance of self

    pspec

    the GParamSpec of the property which changed.

    handler

    The signal handler to call Run the given callback whenever the notifyShowEditor signal is emitted

  • notifyShowEditorSignal Extension method

    Typed notify::show-editor signal for using the connect(signal:) methods

    Declaration

    Swift

    static var notifyShowEditorSignal: ColorButtonSignalName { get }
  • The notify signal is emitted on an object when one of its properties has its value set through g_object_set_property(), g_object_set(), et al.

    Note that getting this signal doesn’t itself guarantee that the value of the property has actually changed. When it is emitted is determined by the derived GObject class. If the implementor did not create the property with G_PARAM_EXPLICIT_NOTIFY, then any call to g_object_set_property() results in notify being emitted, even if the new value is the same as the old. If they did pass G_PARAM_EXPLICIT_NOTIFY, then this signal is emitted only when they explicitly call g_object_notify() or g_object_notify_by_pspec(), and common practice is to do that only when the value has actually changed.

    This signal is typically used to obtain change notification for a single property, by specifying the property name as a detail in the g_signal_connect() call, like this:

    (C Language Example):

    g_signal_connect (text_view->buffer, "notify::paste-target-list",
                      G_CALLBACK (gtk_text_view_target_list_notify),
                      text_view)
    

    It is important to note that you must use canonical parameter names as detail strings for the notify signal.

    Note

    This represents the underlying notify::title signal

    Declaration

    Swift

    @discardableResult
    @inlinable
    func onNotifyTitle(flags: ConnectFlags = ConnectFlags(0), handler: @escaping (_ unownedSelf: ColorButtonRef, _ pspec: ParamSpecRef) -> Void) -> Int

    Parameters

    flags

    Flags

    unownedSelf

    Reference to instance of self

    pspec

    the GParamSpec of the property which changed.

    handler

    The signal handler to call Run the given callback whenever the notifyTitle signal is emitted

  • notifyTitleSignal Extension method

    Typed notify::title signal for using the connect(signal:) methods

    Declaration

    Swift

    static var notifyTitleSignal: ColorButtonSignalName { get }
  • The notify signal is emitted on an object when one of its properties has its value set through g_object_set_property(), g_object_set(), et al.

    Note that getting this signal doesn’t itself guarantee that the value of the property has actually changed. When it is emitted is determined by the derived GObject class. If the implementor did not create the property with G_PARAM_EXPLICIT_NOTIFY, then any call to g_object_set_property() results in notify being emitted, even if the new value is the same as the old. If they did pass G_PARAM_EXPLICIT_NOTIFY, then this signal is emitted only when they explicitly call g_object_notify() or g_object_notify_by_pspec(), and common practice is to do that only when the value has actually changed.

    This signal is typically used to obtain change notification for a single property, by specifying the property name as a detail in the g_signal_connect() call, like this:

    (C Language Example):

    g_signal_connect (text_view->buffer, "notify::paste-target-list",
                      G_CALLBACK (gtk_text_view_target_list_notify),
                      text_view)
    

    It is important to note that you must use canonical parameter names as detail strings for the notify signal.

    Note

    This represents the underlying notify::use-alpha signal

    Declaration

    Swift

    @discardableResult
    @inlinable
    func onNotifyUseAlpha(flags: ConnectFlags = ConnectFlags(0), handler: @escaping (_ unownedSelf: ColorButtonRef, _ pspec: ParamSpecRef) -> Void) -> Int

    Parameters

    flags

    Flags

    unownedSelf

    Reference to instance of self

    pspec

    the GParamSpec of the property which changed.

    handler

    The signal handler to call Run the given callback whenever the notifyUseAlpha signal is emitted

  • notifyUseAlphaSignal Extension method

    Typed notify::use-alpha signal for using the connect(signal:) methods

    Declaration

    Swift

    static var notifyUseAlphaSignal: ColorButtonSignalName { get }

ColorButton Class: ColorButtonProtocol extension (methods and fields)

  • getAlpha() Extension method

    Returns the current alpha value.

    get_alpha is deprecated: Use gtk_color_chooser_get_rgba() instead.

    Declaration

    Swift

    @available(*, deprecated)
    @inlinable
    func getAlpha() -> guint16
  • get(color:) Extension method

    Sets color to be the current color in the GtkColorButton widget.

    get_color is deprecated: Use gtk_color_chooser_get_rgba() instead.

    Declaration

    Swift

    @available(*, deprecated)
    @inlinable
    func get<ColorT>(color: ColorT) where ColorT : ColorProtocol
  • get(rgba:) Extension method

    Sets rgba to be the current color in the GtkColorButton widget.

    get_rgba is deprecated: Use gtk_color_chooser_get_rgba() instead.

    Declaration

    Swift

    @available(*, deprecated)
    @inlinable
    func get<RGBAT>(rgba: RGBAT) where RGBAT : RGBAProtocol
  • getTitle() Extension method

    Gets the title of the color selection dialog.

    Declaration

    Swift

    @inlinable
    func getTitle() -> String!
  • getUseAlpha() Extension method

    Does the color selection dialog use the alpha channel ?

    get_use_alpha is deprecated: Use gtk_color_chooser_get_use_alpha() instead.

    Declaration

    Swift

    @available(*, deprecated)
    @inlinable
    func getUseAlpha() -> Bool
  • set(alpha:) Extension method

    Sets the current opacity to be alpha.

    set_alpha is deprecated: Use gtk_color_chooser_set_rgba() instead.

    Declaration

    Swift

    @available(*, deprecated)
    @inlinable
    func set(alpha: guint16)
  • set(color:) Extension method

    Sets the current color to be color.

    set_color is deprecated: Use gtk_color_chooser_set_rgba() instead.

    Declaration

    Swift

    @available(*, deprecated)
    @inlinable
    func set<ColorT>(color: ColorT) where ColorT : ColorProtocol
  • set(rgba:) Extension method

    Sets the current color to be rgba.

    set_rgba is deprecated: Use gtk_color_chooser_set_rgba() instead.

    Declaration

    Swift

    @available(*, deprecated)
    @inlinable
    func set<RGBAT>(rgba: RGBAT) where RGBAT : RGBAProtocol
  • set(title:) Extension method

    Sets the title for the color selection dialog.

    Declaration

    Swift

    @inlinable
    func set(title: UnsafePointer<gchar>!)
  • set(useAlpha:) Extension method

    Sets whether or not the color button should use the alpha channel.

    set_use_alpha is deprecated: Use gtk_color_chooser_set_use_alpha() instead.

    Declaration

    Swift

    @available(*, deprecated)
    @inlinable
    func set(useAlpha: Bool)
  • alpha Extension method

    The selected opacity value (0 fully transparent, 65535 fully opaque).

    Declaration

    Swift

    @inlinable
    var alpha: guint16 { get nonmutating set }
  • title Extension method

    The title of the color selection dialog

    Declaration

    Swift

    @inlinable
    var title: String! { get nonmutating set }
  • useAlpha Extension method

    Does the color selection dialog use the alpha channel ?

    get_use_alpha is deprecated: Use gtk_color_chooser_get_use_alpha() instead.

    Declaration

    Swift

    @inlinable
    var useAlpha: Bool { get nonmutating set }
  • button Extension method

    Undocumented

    Declaration

    Swift

    @inlinable
    var button: GtkButton { get }