## Documentation

Table of Contents
Class Inheritance Tree
Widget Screenshots
Package groups

1.     -----------------------------------------------------------------------

2.     --               GtkAda - Ada95 binding for Gtk+/Gnome               --

3.     --                                                                   --

4.     --   Copyright (C) 1998-2000 E. Briot, J. Brobecker and A. Charlet   --

5.     --                Copyright (C) 2000-2013, AdaCore                   --

6.     --                                                                   --

7.     -- This library is free software; you can redistribute it and/or     --

8.     -- modify it under the terms of the GNU General Public               --

9.     -- License as published by the Free Software Foundation; either      --

10.     -- version 2 of the License, or (at your option) any later version.  --

11.     --                                                                   --

12.     -- This library is distributed in the hope that it will be useful,   --

13.     -- but WITHOUT ANY WARRANTY; without even the implied warranty of    --

14.     -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU --

15.     -- General Public License for more details.                          --

16.     --                                                                   --

17.     -- You should have received a copy of the GNU General Public         --

18.     -- License along with this library; if not, write to the             --

19.     -- Free Software Foundation, Inc., 59 Temple Place - Suite 330,      --

20.     -- Boston, MA 02111-1307, USA.                                       --

21.     --                                                                   --

22.     -- As a special exception, if other files instantiate generics from  --

23.     -- this unit, or you link this unit with other files to produce an   --

24.     -- executable, this  unit  does not  by itself cause  the resulting  --

25.     -- executable to be covered by the GNU General Public License. This  --

26.     -- exception does not however invalidate any other reasons why the   --

27.     -- executable file  might be covered by the  GNU Public License.     --

28.     -----------------------------------------------------------------------

30.     --  <description>

31.     --  Gtk_Buildable allows objects to extend and customize their deserialization

32.     --  from Gtk_Builder UI descriptions. The interface includes methods for

33.     --  setting names and properties of objects, parsing custom tags and

34.     --  constructing child objects.

35.     --

36.     --  The Gtk_Buildable interface is implemented by all widgets and many of the

37.     --  non-widget objects that are provided by GTK+. The main user of this

38.     --  interface is Gtk_Builder. There should be very little need for applications

39.     --  to call any gtk_buildable_... functions.

40.     --

41.     --  </description>

43.     pragma Warnings (Off, "*is already use-visible*");

44.     with GlibTo API docTo specTo body;        use GlibTo API docTo specTo body;

45.     with Glib.ObjectTo API docTo specTo body; use Glib.ObjectTo API docTo specTo body;

46.     with Glib.TypesTo API docTo specTo body;  use Glib.TypesTo API docTo specTo body;

47.     with Glib.ValuesTo API docTo specTo body; use Glib.ValuesTo API docTo specTo body;

48.     with Gtk.BuilderTo API docTo specTo body; use Gtk.BuilderTo API docTo specTo body;

50.     package Gtk.BuildableTo API docTo specTo body is

52.        type Gtk_Buildable is new Glib.Types.GType_InterfaceTo API docTo spec;

54.        ------------------

55.        -- Constructors --

56.        ------------------

58.        function Get_TypeTo API docTo body return Glib.GTypeTo API docTo spec;

59.        pragma Import (C, Get_TypeTo API docTo spec, "gtk_buildable_get_type");

61.        -------------

62.        -- Methods --

63.        -------------

65.        procedure Add_ChildTo API docTo body

66.           (Self     : Gtk_BuildableTo API docTo spec;

67.            Builder  : access Gtk.Builder.Gtk_Builder_RecordTo API docTo specTo body'Class;

68.            Child    : access Glib.Object.GObject_RecordTo API docTo specTo body'Class;

69.            The_Type : UTF8_StringTo API docTo spec);

70.        --  Adds a child to Buildable. Type is an optional string describing how

71.        --  the child should be added.

72.        --  Since: gtk+ 2.12

73.        --  "builder": a Gtk.Builder.Gtk_Builder

74.        --  "child": child to add

75.        --  "type": kind of child or null

77.        function Construct_ChildTo API docTo body

78.           (Self    : Gtk_BuildableTo API docTo spec;

79.            Builder : access Gtk.Builder.Gtk_Builder_RecordTo API docTo specTo body'Class;

80.            Name    : UTF8_StringTo API docTo spec) return Glib.Object.GObjectTo API docTo spec;

81.        --  Constructs a child of Buildable with the name Name.

82.        --  Gtk.Builder.Gtk_Builder calls this function if a "constructor" has been

83.        --  specified in the UI definition.

84.        --  Since: gtk+ 2.12

85.        --  "builder": Gtk.Builder.Gtk_Builder used to construct this object

86.        --  "name": name of child to construct

88.        procedure Custom_FinishedTo API docTo body

89.           (Self    : Gtk_BuildableTo API docTo spec;

90.            Builder : access Gtk.Builder.Gtk_Builder_RecordTo API docTo specTo body'Class;

91.            Child   : access Glib.Object.GObject_RecordTo API docTo specTo body'Class;

92.            Tagname : UTF8_StringTo API docTo spec;

93.            Data    : System.Address);

94.        --  This is similar to Gtk.Buildable.Parser_Finished but is called once for

95.        --  each custom tag handled by the Buildable.

96.        --  Since: gtk+ 2.12

97.        --  "builder": a Gtk.Builder.Gtk_Builder

98.        --  "child": child object or null for non-child tags

99.        --  "tagname": the name of the tag

100.        --  "data": user data created in custom_tag_start

102.        procedure Custom_Tag_EndTo API docTo body

103.           (Self    : Gtk_BuildableTo API docTo spec;

104.            Builder : access Gtk.Builder.Gtk_Builder_RecordTo API docTo specTo body'Class;

105.            Child   : access Glib.Object.GObject_RecordTo API docTo specTo body'Class;

106.            Tagname : UTF8_StringTo API docTo spec;

107.            Data    : System.Address);

108.        --  This is called at the end of each custom element handled by the

109.        --  buildable.

110.        --  Since: gtk+ 2.12

111.        --  "builder": Gtk.Builder.Gtk_Builder used to construct this object

112.        --  "child": child object or null for non-child tags

113.        --  "tagname": name of tag

114.        --  "data": user data that will be passed in to parser functions

116.        function Get_Internal_ChildTo API docTo body

117.           (Self      : Gtk_BuildableTo API docTo spec;

118.            Builder   : access Gtk.Builder.Gtk_Builder_RecordTo API docTo specTo body'Class;

119.            Childname : UTF8_StringTo API docTo spec) return Glib.Object.GObjectTo API docTo spec;

120.        --  Get the internal child called Childname of the Buildable object.

121.        --  Since: gtk+ 2.12

122.        --  "builder": a Gtk.Builder.Gtk_Builder

123.        --  "childname": name of child

125.        function Get_NameTo API docTo body (Self : Gtk_BuildableTo API docTo spec) return UTF8_StringTo API docTo spec;

126.        procedure Set_NameTo API docTo body (Self : Gtk_BuildableTo API docTo spec; Name : UTF8_StringTo API docTo spec);

127.        --  Sets the name of the Buildable object.

128.        --  Since: gtk+ 2.12

129.        --  "name": name to set

131.        procedure Parser_FinishedTo API docTo body

132.           (Self    : Gtk_BuildableTo API docTo spec;

133.            Builder : access Gtk.Builder.Gtk_Builder_RecordTo API docTo specTo body'Class);

134.        --  Called when the builder finishes the parsing of a <link

135.        --  linkend="BUILDER-UI">GtkBuilder UI definition</link>. Note that this

136.        --  will be called once for each time Gtk.Builder.Add_From_File or

137.        --  Gtk.Builder.Add_From_String is called on a builder.

138.        --  Since: gtk+ 2.12

139.        --  "builder": a Gtk.Builder.Gtk_Builder

141.        procedure Set_Buildable_PropertyTo API docTo body

142.           (Self    : Gtk_BuildableTo API docTo spec;

143.            Builder : access Gtk.Builder.Gtk_Builder_RecordTo API docTo specTo body'Class;

144.            Name    : UTF8_StringTo API docTo spec;

145.            ValueTo API docTo body   : out Glib.Values.GValueTo API docTo specTo body);

146.        --  Sets the property name Name to Value on the Buildable object.

147.        --  Since: gtk+ 2.12

148.        --  "builder": a Gtk.Builder.Gtk_Builder

149.        --  "name": name of property

150.        --  "value": value of property

152.     end Gtk.BuildableTo API docTo specTo body;