FrameRef

public struct FrameRef : FrameProtocol, GWeakCapturing

GtkFrame is a widget that surrounds its child with a decorative frame and an optional label.

An example GtkFrame

If present, the label is drawn inside the top edge of the frame. The horizontal position of the label can be controlled with [methodGtk.Frame.set_label_align].

GtkFrame clips its child. You can use this to add rounded corners to widgets, but be aware that it also cuts off shadows.

GtkFrame as GtkBuildable

The GtkFrame implementation of the GtkBuildable interface supports placing a child in the label position by specifying “label” as the “type” attribute of a <child> element. A normal content child can be specified without specifying a <child> type attribute.

An example of a UI definition fragment with GtkFrame:

&lt;object class="GtkFrame"&gt;
  &lt;child type="label"&gt;
    &lt;object class="GtkLabel" id="frame_label"/&gt;
  &lt;/child&gt;
  &lt;child&gt;
    &lt;object class="GtkEntry" id="frame_content"/&gt;
  &lt;/child&gt;
&lt;/object&gt;

CSS nodes

frame
├── &lt;label widget&gt;
╰── &lt;child&gt;

GtkFrame has a main CSS node with name “frame”, which is used to draw the visible border. You can set the appearance of the border using CSS properties like “border-style” on this node.

The FrameRef type acts as a lightweight Swift reference to an underlying GtkFrame instance. It exposes methods that can operate on this data type through FrameProtocol conformance. Use FrameRef only as an unowned reference to an existing GtkFrame instance.

  • ptr
    Untyped pointer to the underlying `GtkFrame` instance.
    

    For type-safe access, use the generated, typed pointer frame_ptr property instead.

    Declaration

    Swift

    public let ptr: UnsafeMutableRawPointer!

Frame Class

  • Designated initialiser from the underlying C data type

    Declaration

    Swift

    @inlinable
    init(_ p: UnsafeMutablePointer<GtkFrame>)
  • Designated initialiser from a constant pointer to the underlying C data type

    Declaration

    Swift

    @inlinable
    init(_ p: UnsafePointer<GtkFrame>)
  • Conditional initialiser from an optional pointer to the underlying C data type

    Declaration

    Swift

    @inlinable
    init!(_ maybePointer: UnsafeMutablePointer<GtkFrame>?)
  • Conditional initialiser from an optional, non-mutable pointer to the underlying C data type

    Declaration

    Swift

    @inlinable
    init!(_ maybePointer: UnsafePointer<GtkFrame>?)
  • Conditional initialiser from an optional gpointer

    Declaration

    Swift

    @inlinable
    init!(gpointer g: gpointer?)
  • Conditional initialiser from an optional, non-mutable gconstpointer

    Declaration

    Swift

    @inlinable
    init!(gconstpointer g: gconstpointer?)
  • Reference intialiser for a related type that implements FrameProtocol

    Declaration

    Swift

    @inlinable
    init<T>(_ other: T) where T : FrameProtocol
  • This factory is syntactic sugar for setting weak pointers wrapped in GWeak<T>

    Declaration

    Swift

    @inlinable
    static func unowned<T>(_ other: T) -> FrameRef where T : FrameProtocol
  • Unsafe typed initialiser. Do not use unless you know the underlying data type the pointer points to conforms to FrameProtocol.

    Declaration

    Swift

    @inlinable
    init<T>(cPointer: UnsafeMutablePointer<T>)
  • Unsafe typed initialiser. Do not use unless you know the underlying data type the pointer points to conforms to FrameProtocol.

    Declaration

    Swift

    @inlinable
    init<T>(constPointer: UnsafePointer<T>)
  • Unsafe untyped initialiser. Do not use unless you know the underlying data type the pointer points to conforms to FrameProtocol.

    Declaration

    Swift

    @inlinable
    init(mutating raw: UnsafeRawPointer)
  • Unsafe untyped initialiser. Do not use unless you know the underlying data type the pointer points to conforms to FrameProtocol.

    Declaration

    Swift

    @inlinable
    init(raw: UnsafeMutableRawPointer)
  • Unsafe untyped initialiser. Do not use unless you know the underlying data type the pointer points to conforms to FrameProtocol.

    Declaration

    Swift

    @inlinable
    init(opaquePointer: OpaquePointer)
  • Creates a new `GtkFrame`, with optional label `label`.
    

    If label is nil, the label is omitted.

    Declaration

    Swift

    @inlinable
    init(label: UnsafePointer<CChar>? = nil)