BuildableProtocol
public protocol BuildableProtocol
GtkBuildable allows objects to extend and customize their deserialization from GtkBuilder UI descriptions. The interface includes methods for setting names and properties of objects, parsing custom tags and constructing child objects.
The GtkBuildable interface is implemented by all widgets and
many of the non-widget objects that are provided by GTK+. The
main user of this interface is GtkBuilder. There should be
very little need for applications to call any of these functions directly.
An object only needs to implement this interface if it needs to extend the
GtkBuilder format or run any extra routines at deserialization time.
The BuildableProtocol protocol exposes the methods and properties of an underlying GtkBuildable 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 Buildable.
Alternatively, use BuildableRef as a lighweight, unowned reference if you already have an instance you just want to use.
-
Untyped pointer to the underlying
GtkBuildableinstance.Declaration
Swift
var ptr: UnsafeMutableRawPointer! { get } -
buildable_ptrDefault implementationTyped pointer to the underlying
GtkBuildableinstance.Default Implementation
Return the stored, untyped pointer as a typed pointer to the
GtkBuildableinstance.Declaration
Swift
var buildable_ptr: UnsafeMutablePointer<GtkBuildable>! { get } -
Required Initialiser for types conforming to
BuildableProtocolDeclaration
Swift
init(raw: UnsafeMutableRawPointer)
-
addChild(builder:Extension methodchild: type: ) Adds a child to
buildable.typeis an optional string describing how the child should be added.Declaration
Swift
@inlinable func addChild<BuilderT, ObjectT>(builder: BuilderT, child: ObjectT, type: UnsafePointer<gchar>? = nil) where BuilderT : BuilderProtocol, ObjectT : ObjectProtocol -
constructChild(builder:Extension methodname: ) Constructs a child of
buildablewith the namename.GtkBuildercalls this function if a “constructor” has been specified in the UI definition.Declaration
Swift
@inlinable func constructChild<BuilderT>(builder: BuilderT, name: UnsafePointer<gchar>!) -> GLibObject.ObjectRef! where BuilderT : BuilderProtocol -
customFinished(builder:Extension methodchild: tagname: data: ) This is similar to
gtk_buildable_parser_finished()but is called once for each custom tag handled by thebuildable.Declaration
Swift
@inlinable func customFinished<BuilderT>(builder: BuilderT, child: GLibObject.ObjectRef? = nil, tagname: UnsafePointer<gchar>!, data: gpointer! = nil) where BuilderT : BuilderProtocol -
customFinished(builder:Extension methodchild: tagname: data: ) This is similar to
gtk_buildable_parser_finished()but is called once for each custom tag handled by thebuildable.Declaration
Swift
@inlinable func customFinished<BuilderT, ObjectT>(builder: BuilderT, child: ObjectT?, tagname: UnsafePointer<gchar>!, data: gpointer! = nil) where BuilderT : BuilderProtocol, ObjectT : ObjectProtocol -
customTagEnd(builder:Extension methodchild: tagname: data: ) This is called at the end of each custom element handled by the buildable.
Declaration
Swift
@inlinable func customTagEnd<BuilderT>(builder: BuilderT, child: GLibObject.ObjectRef? = nil, tagname: UnsafePointer<gchar>!, data: UnsafeMutablePointer<gpointer?>? = nil) where BuilderT : BuilderProtocol -
customTagEnd(builder:Extension methodchild: tagname: data: ) This is called at the end of each custom element handled by the buildable.
Declaration
Swift
@inlinable func customTagEnd<BuilderT, ObjectT>(builder: BuilderT, child: ObjectT?, tagname: UnsafePointer<gchar>!, data: UnsafeMutablePointer<gpointer?>? = nil) where BuilderT : BuilderProtocol, ObjectT : ObjectProtocol -
customTagStart(builder:Extension methodchild: tagname: parser: data: ) This is called for each unknown element under <child>.
Declaration
Swift
@inlinable func customTagStart<BuilderT, MarkupParserT>(builder: BuilderT, child: GLibObject.ObjectRef? = nil, tagname: UnsafePointer<gchar>!, parser: MarkupParserT, data: UnsafeMutablePointer<gpointer?>?) -> Bool where BuilderT : BuilderProtocol, MarkupParserT : MarkupParserProtocol -
customTagStart(builder:Extension methodchild: tagname: parser: data: ) This is called for each unknown element under <child>.
Declaration
Swift
@inlinable func customTagStart<BuilderT, MarkupParserT, ObjectT>(builder: BuilderT, child: ObjectT?, tagname: UnsafePointer<gchar>!, parser: MarkupParserT, data: UnsafeMutablePointer<gpointer?>?) -> Bool where BuilderT : BuilderProtocol, MarkupParserT : MarkupParserProtocol, ObjectT : ObjectProtocol -
getInternalChild(builder:Extension methodchildname: ) Get the internal child called
childnameof thebuildableobject.Declaration
Swift
@inlinable func getInternalChild<BuilderT>(builder: BuilderT, childname: UnsafePointer<gchar>!) -> GLibObject.ObjectRef! where BuilderT : BuilderProtocol -
getName()Extension methodGets the name of the
buildableobject.GtkBuildersets the name based on the GtkBuilder UI definition used to construct thebuildable.Declaration
Swift
@inlinable func getName() -> String! -
parserFinished(builder:Extension method) Called when the builder finishes the parsing of a GtkBuilder UI definition. Note that this will be called once for each time
gtk_builder_add_from_file()orgtk_builder_add_from_string()is called on a builder.Declaration
Swift
@inlinable func parserFinished<BuilderT>(builder: BuilderT) where BuilderT : BuilderProtocol -
setBuildableProperty(builder:Extension methodname: value: ) Sets the property name
nametovalueon thebuildableobject.Declaration
Swift
@inlinable func setBuildableProperty<BuilderT, ValueT>(builder: BuilderT, name: UnsafePointer<gchar>!, value: ValueT) where BuilderT : BuilderProtocol, ValueT : ValueProtocol -
set(name:Extension method) Sets the name of the
buildableobject.Declaration
Swift
@inlinable func set(name: UnsafePointer<gchar>!) -
nameExtension methodGets the name of the
buildableobject.GtkBuildersets the name based on the GtkBuilder UI definition used to construct thebuildable.Declaration
Swift
@inlinable var name: String! { get nonmutating set }
View on GitHub
Install in Dash
BuildableProtocol Protocol Reference