WidgetClassProtocol

public protocol WidgetClassProtocol

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

  • ptr

    Untyped pointer to the underlying GtkWidgetClass instance.

    Declaration

    Swift

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

    Typed pointer to the underlying GtkWidgetClass instance.

    Default Implementation

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

    Declaration

    Swift

    var _ptr: UnsafeMutablePointer<GtkWidgetClass>! { get }
  • Required Initialiser for types conforming to WidgetClassProtocol

    Declaration

    Swift

    init(raw: UnsafeMutableRawPointer)

WidgetClass Record: WidgetClassProtocol extension (methods and fields)

  • Declares a callback_symbol to handle callback_name from the template XML defined for widget_type. See gtk_builder_add_callback_symbol().

    Note that this must be called from a composite widget classes class initializer after calling gtk_widget_class_set_template().

    Declaration

    Swift

    @inlinable
    func bindTemplateCallbackFull(callbackName: UnsafePointer<gchar>!, callbackSymbol: GCallback?)
  • Automatically assign an object declared in the class template XML to be set to a location on a freshly built instance’s private data, or alternatively accessible via gtk_widget_get_template_child().

    The struct can point either into the public instance, then you should use G_STRUCT_OFFSET(WidgetType, member) for struct_offset, or in the private struct, then you should use G_PRIVATE_OFFSET(WidgetType, member).

    An explicit strong reference will be held automatically for the duration of your instance’s life cycle, it will be released automatically when GObjectClass.dispose() runs on your instance and if a struct_offset that is != 0 is specified, then the automatic location in your instance public or private data will be set to nil. You can however access an automated child pointer the first time your classes GObjectClass.dispose() runs, or alternatively in GtkWidgetClass.destroy().

    If internal_child is specified, GtkBuildableIface.get_internal_child() will be automatically implemented by the GtkWidget class so there is no need to implement it manually.

    The wrapper macros gtk_widget_class_bind_template_child(), gtk_widget_class_bind_template_child_internal(), gtk_widget_class_bind_template_child_private() and gtk_widget_class_bind_template_child_internal_private() might be more convenient to use.

    Note that this must be called from a composite widget classes class initializer after calling gtk_widget_class_set_template().

    Declaration

    Swift

    @inlinable
    func bindTemplateChildFull(name: UnsafePointer<gchar>!, internalChild: Bool, structOffset: gssize)
  • Finds a style property of a widget class by name.

    Declaration

    Swift

    @inlinable
    func findStyleProperty(propertyName: UnsafePointer<gchar>!) -> GLibObject.ParamSpecRef!
  • getCssName() Extension method

    Gets the name used by this class for matching in CSS code. See gtk_widget_class_set_css_name() for details.

    Declaration

    Swift

    @inlinable
    func getCssName() -> String!
  • installStyleProperty(pspec:) Extension method

    Installs a style property on a widget class. The parser for the style property is determined by the value type of pspec.

    Declaration

    Swift

    @inlinable
    func installStyleProperty<ParamSpecT>(pspec: ParamSpecT) where ParamSpecT : ParamSpecProtocol
  • Installs a style property on a widget class.

    Declaration

    Swift

    @inlinable
    func installStylePropertyParser<ParamSpecT>(pspec: ParamSpecT, parser: @escaping GtkRcPropertyParser) where ParamSpecT : ParamSpecProtocol
  • Returns all style properties of a widget class.

    Declaration

    Swift

    @inlinable
    func listStyleProperties(nProperties: UnsafeMutablePointer<guint>!) -> UnsafeMutablePointer<UnsafeMutablePointer<GParamSpec>?>!
  • setAccessible(role:) Extension method

    Sets the default AtkRole to be set on accessibles created for widgets of widget_class. Accessibles may decide to not honor this setting if their role reporting is more refined. Calls to gtk_widget_class_set_accessible_type() will reset this value.

    In cases where you want more fine-grained control over the role of accessibles created for widget_class, you should provide your own accessible type and use gtk_widget_class_set_accessible_type() instead.

    If role is ATK_ROLE_INVALID, the default role will not be changed and the accessible’s default role will be used instead.

    This function should only be called from class init functions of widgets.

    Declaration

    Swift

    @inlinable
    func setAccessible(role: AtkRole)
  • setAccessible(type:) Extension method

    Sets the type to be used for creating accessibles for widgets of widget_class. The given type must be a subtype of the type used for accessibles of the parent class.

    This function should only be called from class init functions of widgets.

    Declaration

    Swift

    @inlinable
    func setAccessible(type: GType)
  • For use in language bindings, this will override the default GtkBuilderConnectFunc to be used when parsing GtkBuilder XML from this class’s template data.

    Note that this must be called from a composite widget classes class initializer after calling gtk_widget_class_set_template().

    Declaration

    Swift

    @inlinable
    func set(connectFunc: GtkBuilderConnectFunc?, connectData: gpointer! = nil, connectDataDestroy: GDestroyNotify?)
  • setCss(name:) Extension method

    Sets the name to be used for CSS matching of widgets.

    If this function is not called for a given class, the name of the parent class is used.

    Declaration

    Swift

    @inlinable
    func setCss(name: UnsafePointer<CChar>!)
  • setTemplate(templateBytes:) Extension method

    This should be called at class initialization time to specify the GtkBuilder XML to be used to extend a widget.

    For convenience, gtk_widget_class_set_template_from_resource() is also provided.

    Note that any class that installs templates must call gtk_widget_init_template() in the widget’s instance initializer.

    Declaration

    Swift

    @inlinable
    func setTemplate<BytesT>(templateBytes: BytesT) where BytesT : BytesProtocol
  • A convenience function to call gtk_widget_class_set_template().

    Note that any class that installs templates must call gtk_widget_init_template() in the widget’s instance initializer.

    Declaration

    Swift

    @inlinable
    func setTemplateFrom(resourceName: UnsafePointer<gchar>!)
  • cssName Extension method

    Gets the name used by this class for matching in CSS code. See gtk_widget_class_set_css_name() for details.

    Declaration

    Swift

    @inlinable
    var cssName: String! { get nonmutating set }
  • parentClass Extension method

    The object class structure needs to be the first element in the widget class structure in order for the class mechanism to work correctly. This allows a GtkWidgetClass pointer to be cast to a GObjectClass pointer.

    Declaration

    Swift

    @inlinable
    var parentClass: GInitiallyUnownedClass { get }
  • activateSignal Extension method

    The signal to emit when a widget of this class is activated, gtk_widget_activate() handles the emission. Implementation of this signal is optional.

    Declaration

    Swift

    @inlinable
    var activateSignal: guint { get }