Index

Package: Builder

Description

package Gtkada.Builder is

This package provides a high-level API for using Gtk.Builder and user interface files produced with the GUI builder glade-3.

Here is how to use this package: Step 1: create a Builder and add the XML data, just as you would a standard Gtk.Builder: declare Builder : Gtkada_Builder; Error : GError; begin Gtk_New (Builder); Error := Add_From_File (Builder, Default_Filename); Step 2: add calls to "Register_Handler" to associate your handlers with your callbacks. Register_Handler (Builder => Builder, Handler_Name => "my_handler_id", Handler => My_Handler'Access); Where: - Builder is your Gtkada_Builder, - "my_handler_id" is the name of the handler as specified in Glade-3, in the "Handler" column of the "Signals" tab for your object, - Handler is your Ada subprogram. You will need one call to "Register_Handler" per handler declared in the Glade-3 interface. If there is one or more handler declared in Glade-3 which does not have an associated call to Register_Handler, an ASSERT_FAILURE will be raised by the Gtk main loop. There are multiple way to call Register_Handler, see below. Step 3: call Do_Connect. Step 4: when the application terminates or all Windows described through your builder should be closed, call Unref to free memory associated with the Builder.

Classes

Gtkada_Builder_Record

type Gtkada_Builder_Record is new
     Gtk.Builder.Gtk_Builder_Record with private;

Ancestors:

Primitive operations:

Glib.Object.Deallocate (Inherited)
Glib.Object.Get_Type (Inherited)
Glib.Object.Notify (Inherited)
Glib.Object.Ref (Inherited)
Glib.Object.Ref_Sink (Inherited)
Glib.Object.Unref (Inherited)
Gtk.Builder.Add_From_File (Inherited)
Gtk.Builder.Add_From_Resource (Inherited)
Gtk.Builder.Add_From_String (Inherited)
Gtk.Builder.Add_Objects_From_File (Inherited)
Gtk.Builder.Add_Objects_From_Resource (Inherited)
Gtk.Builder.Add_Objects_From_String (Inherited)
Gtk.Builder.Connect_Signals (Inherited)
Gtk.Builder.Connect_Signals_Full (Inherited)
Gtk.Builder.Expose_Object (Inherited)
Gtk.Builder.Get_Object (Inherited)
Gtk.Builder.Get_Objects (Inherited)
Gtk.Builder.Get_Translation_Domain (Inherited)
Gtk.Builder.Get_Type_From_Name (Inherited)
Gtk.Builder.Set_Translation_Domain (Inherited)
Gtk.Builder.Value_From_String (Inherited)
Gtk.Builder.Value_From_String_Type (Inherited)

Types

Gtkada_Builder

type Gtkada_Builder is access all Gtkada_Builder_Record'Class;

Builder_Handler

type Builder_Handler is access procedure
     (Builder : access Gtkada_Builder_Record'Class);

Builder_Return_Handler

type Builder_Return_Handler is access function
     (User_Data : access Gtkada_Builder_Record'Class) return Boolean;

Object_Handler

type Object_Handler is access procedure
     (User_Data : access GObject_Record'Class);

Object_Return_Handler

type Object_Return_Handler is access function
     (User_Data : access GObject_Record'Class) return Boolean;

Subprograms & Entries

Gtk_New

procedure Gtk_New 
(Builder: out Gtkada_Builder);

Initialize

procedure Initialize 
(Builder: access Gtkada_Builder_Record'Class);
Create a new Gtkada_Builder.

Do_Connect

procedure Do_Connect 
(Builder: access Gtkada_Builder_Record'Class);
Activate in the builder callabacks that have been connected using calls to Register_Handler functions below.

Register_Handler

procedure Register_Handler 
(Builder: access Gtkada_Builder_Record'Class;
Handler_Name: String;
Handler: Builder_Handler);

Register_Handler

procedure Register_Handler 
(Builder: access Gtkada_Builder_Record'Class;
Handler_Name: String;
Handler: Builder_Return_Handler);

Register_Handler

procedure Register_Handler 
(Builder: access Gtkada_Builder_Record'Class;
Handler_Name: String;
Handler: Object_Handler);

Register_Handler

procedure Register_Handler 
(Builder: access Gtkada_Builder_Record'Class;
Handler_Name: String;
Handler: Object_Return_Handler);