package Implements_Gtk_Buildable is new Glib.Types.Implements (Gtk.Buildable.Gtk_Buildable, Gtk_Tree_Store_Record, Gtk_Tree_Store);
package Implements_Gtk_Tree_Drag_Dest is new Glib.Types.Implements (Gtk.Tree_Drag_Dest.Gtk_Tree_Drag_Dest, Gtk_Tree_Store_Record, Gtk_Tree_Store);
package Implements_Gtk_Tree_Drag_Source is new Glib.Types.Implements (Gtk.Tree_Drag_Source.Gtk_Tree_Drag_Source, Gtk_Tree_Store_Record, Gtk_Tree_Store);
package Implements_Gtk_Tree_Model is new Glib.Types.Implements (Gtk.Tree_Model.Gtk_Tree_Model, Gtk_Tree_Store_Record, Gtk_Tree_Store);
package Implements_Gtk_Tree_Sortable is new Glib.Types.Implements (Gtk.Tree_Sortable.Gtk_Tree_Sortable, Gtk_Tree_Store_Record, Gtk_Tree_Store);
type Gtk_Tree_Store_Record is new Gtk_Root_Tree_Model_Record with null record;
type Gtk_Tree_Store is access all Gtk_Tree_Store_Record'Class;
type Gtk_Tree_Model_Foreach_Func is access function (Model : Gtk.Tree_Model.Gtk_Tree_Model; Path : Gtk.Tree_Model.Gtk_Tree_Path; Iter : Gtk.Tree_Model.Gtk_Tree_Iter) return Boolean;
type Gtk_Tree_Iter_Compare_Func is access function (Model : Gtk.Tree_Model.Gtk_Tree_Model; A : Gtk.Tree_Model.Gtk_Tree_Iter; B : Gtk.Tree_Model.Gtk_Tree_Iter) return Gint;
procedure Gtk_New
| ( | Tree_Store | : out Gtk_Tree_Store; |
| Types | : GType_Array); |
procedure Initialize
| ( | Tree_Store | : not null access Gtk_Tree_Store_Record'Class; |
| Types | : GType_Array); |
function Gtk_Tree_Store_Newv
| ( | Types | : GType_Array) return Gtk_Tree_Store; |
function Get_Type return Glib.GType;
procedure Append
| ( | Tree_Store | : not null access Gtk_Tree_Store_Record; |
| Iter | : out Gtk.Tree_Model.Gtk_Tree_Iter; | |
| Parent | : Gtk.Tree_Model.Gtk_Tree_Iter); |
procedure Clear
| ( | Tree_Store | : not null access Gtk_Tree_Store_Record); |
procedure Insert
| ( | Tree_Store | : not null access Gtk_Tree_Store_Record; |
| Iter | : out Gtk.Tree_Model.Gtk_Tree_Iter; | |
| Parent | : Gtk.Tree_Model.Gtk_Tree_Iter; | |
| Position | : Gint); |
procedure Insert_After
| ( | Tree_Store | : not null access Gtk_Tree_Store_Record; |
| Iter | : out Gtk.Tree_Model.Gtk_Tree_Iter; | |
| Parent | : Gtk.Tree_Model.Gtk_Tree_Iter; | |
| Sibling | : Gtk.Tree_Model.Gtk_Tree_Iter); |
procedure Insert_Before
| ( | Tree_Store | : not null access Gtk_Tree_Store_Record; |
| Iter | : out Gtk.Tree_Model.Gtk_Tree_Iter; | |
| Parent | : Gtk.Tree_Model.Gtk_Tree_Iter; | |
| Sibling | : Gtk.Tree_Model.Gtk_Tree_Iter); |
function Is_Ancestor
| ( | Tree_Store | : not null access Gtk_Tree_Store_Record; |
| Iter | : Gtk.Tree_Model.Gtk_Tree_Iter; | |
| Descendant | : Gtk.Tree_Model.Gtk_Tree_Iter) return Boolean; |
function Iter_Depth
| ( | Tree_Store | : not null access Gtk_Tree_Store_Record; |
| Iter | : Gtk.Tree_Model.Gtk_Tree_Iter) return Gint; |
function Iter_Is_Valid
| ( | Tree_Store | : not null access Gtk_Tree_Store_Record; |
| Iter | : Gtk.Tree_Model.Gtk_Tree_Iter) return Boolean; |
procedure Move_After
| ( | Tree_Store | : not null access Gtk_Tree_Store_Record; |
| Iter | : Gtk.Tree_Model.Gtk_Tree_Iter; | |
| Position | : Gtk.Tree_Model.Gtk_Tree_Iter); |
procedure Move_Before
| ( | Tree_Store | : not null access Gtk_Tree_Store_Record; |
| Iter | : Gtk.Tree_Model.Gtk_Tree_Iter; | |
| Position | : Gtk.Tree_Model.Gtk_Tree_Iter); |
procedure Prepend
| ( | Tree_Store | : not null access Gtk_Tree_Store_Record; |
| Iter | : out Gtk.Tree_Model.Gtk_Tree_Iter; | |
| Parent | : Gtk.Tree_Model.Gtk_Tree_Iter); |
procedure Remove
| ( | Tree_Store | : not null access Gtk_Tree_Store_Record; |
| Iter | : in out Gtk.Tree_Model.Gtk_Tree_Iter); |
procedure Reorder
| ( | Tree_Store | : not null access Gtk_Tree_Store_Record; |
| Parent | : Gtk.Tree_Model.Gtk_Tree_Iter; | |
| New_Order | : Gint_Array); |
procedure Set_Column_Types
| ( | Tree_Store | : not null access Gtk_Tree_Store_Record; |
| Types | : GType_Array); |
procedure Set_Value
| ( | Tree_Store | : not null access Gtk_Tree_Store_Record; |
| Iter | : Gtk.Tree_Model.Gtk_Tree_Iter; | |
| Column | : Gint; | |
| Value | : Glib.Values.GValue); |
procedure Swap
| ( | Tree_Store | : not null access Gtk_Tree_Store_Record; |
| A | : Gtk.Tree_Model.Gtk_Tree_Iter; | |
| B | : Gtk.Tree_Model.Gtk_Tree_Iter); |
procedure Foreach
| ( | Tree_Model | : not null access Gtk_Tree_Store_Record; |
| Func | : Gtk_Tree_Model_Foreach_Func); |
procedure Set_Default_Sort_Func
| ( | Sortable | : not null access Gtk_Tree_Store_Record; |
| Sort_Func | : Gtk_Tree_Iter_Compare_Func); |
procedure Set_Sort_Func
| ( | Sortable | : not null access Gtk_Tree_Store_Record; |
| Sort_Column_Id | : Gint; | |
| Sort_Func | : Gtk_Tree_Iter_Compare_Func); |
procedure Set
| ( | Tree_Store | : access Gtk_Tree_Store_Record; |
| Iter | : Gtk.Tree_Model.Gtk_Tree_Iter; | |
| Column | : Gint; | |
| Value | : UTF8_String); |
procedure Set
| ( | Tree_Store | : access Gtk_Tree_Store_Record; |
| Iter | : Gtk.Tree_Model.Gtk_Tree_Iter; | |
| Column | : Gint; | |
| Value | : Boolean); |
procedure Set
| ( | Tree_Store | : access Gtk_Tree_Store_Record; |
| Iter | : Gtk.Tree_Model.Gtk_Tree_Iter; | |
| Column | : Gint; | |
| Value | : Gint); |
procedure Set
| ( | Tree_Store | : access Gtk_Tree_Store_Record; |
| Iter | : Gtk.Tree_Model.Gtk_Tree_Iter; | |
| Column | : Gint; | |
| Value | : Glib.C_Proxy); |
procedure Set
| ( | Tree_Store | : access Gtk_Tree_Store_Record; |
| Iter | : Gtk.Tree_Model.Gtk_Tree_Iter; | |
| Column | : Gint; | |
| Address | : System.Address); |
procedure Set
| ( | Tree_Store | : access Gtk_Tree_Store_Record; |
| Iter | : Gtk.Tree_Model.Gtk_Tree_Iter; | |
| Column | : Gint; | |
| Value | : Glib.Object.GObject); |
function Freeze_Sort
| ( | Tree | : access Gtk.Tree_Store.Gtk_Tree_Store_Record'Class) return Gint; |
procedure Thaw_Sort
| ( | Tree | : access Gtk.Tree_Store.Gtk_Tree_Store_Record'Class; |
| Column_Id | : Gint); |
function Drag_Data_Received
| ( | Self | : not null access Gtk_Tree_Store_Record; |
| Dest | : Gtk.Tree_Model.Gtk_Tree_Path; | |
| Selection_Data | : Gtk.Selection_Data.Gtk_Selection_Data) return Boolean; |
function Row_Drop_Possible
| ( | Self | : not null access Gtk_Tree_Store_Record; |
| Dest_Path | : Gtk.Tree_Model.Gtk_Tree_Path; | |
| Selection_Data | : Gtk.Selection_Data.Gtk_Selection_Data) return Boolean; |
function Drag_Data_Delete
| ( | Self | : not null access Gtk_Tree_Store_Record; |
| Path | : Gtk.Tree_Model.Gtk_Tree_Path) return Boolean; |
function Drag_Data_Get
| ( | Self | : not null access Gtk_Tree_Store_Record; |
| Path | : Gtk.Tree_Model.Gtk_Tree_Path; | |
| Selection_Data | : Gtk.Selection_Data.Gtk_Selection_Data) return Boolean; |
function Row_Draggable
| ( | Self | : not null access Gtk_Tree_Store_Record; |
| Path | : Gtk.Tree_Model.Gtk_Tree_Path) return Boolean; |
function Get_Column_Type
| ( | Tree_Model | : not null access Gtk_Tree_Store_Record; |
| Index | : Gint) return GType; |
function Get_Flags
| ( | Tree_Model | : not null access Gtk_Tree_Store_Record) return Gtk.Tree_Model.Tree_Model_Flags; |
function Get_Iter
| ( | Tree_Model | : not null access Gtk_Tree_Store_Record; |
| Path | : Gtk.Tree_Model.Gtk_Tree_Path) return Gtk.Tree_Model.Gtk_Tree_Iter; |
function Get_Iter_First
| ( | Tree_Model | : not null access Gtk_Tree_Store_Record) return Gtk.Tree_Model.Gtk_Tree_Iter; |
function Get_Iter_From_String
| ( | Tree_Model | : not null access Gtk_Tree_Store_Record; |
| Path_String | : UTF8_String) return Gtk.Tree_Model.Gtk_Tree_Iter; |
function Get_N_Columns
| ( | Tree_Model | : not null access Gtk_Tree_Store_Record) return Gint; |
function Get_Path
| ( | Tree_Model | : not null access Gtk_Tree_Store_Record; |
| Iter | : Gtk.Tree_Model.Gtk_Tree_Iter) return Gtk.Tree_Model.Gtk_Tree_Path; |
function Get_String_From_Iter
| ( | Tree_Model | : not null access Gtk_Tree_Store_Record; |
| Iter | : Gtk.Tree_Model.Gtk_Tree_Iter) return UTF8_String; |
procedure Get_Value
| ( | Tree_Model | : not null access Gtk_Tree_Store_Record; |
| Iter | : Gtk.Tree_Model.Gtk_Tree_Iter; | |
| Column | : Gint; | |
| Value | : out Glib.Values.GValue); |
function Children
| ( | Tree_Model | : not null access Gtk_Tree_Store_Record; |
| Parent | : Gtk.Tree_Model.Gtk_Tree_Iter) return Gtk.Tree_Model.Gtk_Tree_Iter; |
function Has_Child
| ( | Tree_Model | : not null access Gtk_Tree_Store_Record; |
| Iter | : Gtk.Tree_Model.Gtk_Tree_Iter) return Boolean; |
function N_Children
| ( | Tree_Model | : not null access Gtk_Tree_Store_Record; |
| Iter | : Gtk.Tree_Model.Gtk_Tree_Iter := Gtk.Tree_Model.Null_Iter) return Gint; |
procedure Next
| ( | Tree_Model | : not null access Gtk_Tree_Store_Record; |
| Iter | : in out Gtk.Tree_Model.Gtk_Tree_Iter); |
function Nth_Child
| ( | Tree_Model | : not null access Gtk_Tree_Store_Record; |
| Parent | : Gtk.Tree_Model.Gtk_Tree_Iter; | |
| N | : Gint) return Gtk.Tree_Model.Gtk_Tree_Iter; |
function Parent
| ( | Tree_Model | : not null access Gtk_Tree_Store_Record; |
| Child | : Gtk.Tree_Model.Gtk_Tree_Iter) return Gtk.Tree_Model.Gtk_Tree_Iter; |
procedure Previous
| ( | Tree_Model | : not null access Gtk_Tree_Store_Record; |
| Iter | : in out Gtk.Tree_Model.Gtk_Tree_Iter); |
procedure Ref_Node
| ( | Tree_Model | : not null access Gtk_Tree_Store_Record; |
| Iter | : Gtk.Tree_Model.Gtk_Tree_Iter); |
procedure Row_Changed
| ( | Tree_Model | : not null access Gtk_Tree_Store_Record; |
| Path | : Gtk.Tree_Model.Gtk_Tree_Path; | |
| Iter | : Gtk.Tree_Model.Gtk_Tree_Iter); |
procedure Row_Deleted
| ( | Tree_Model | : not null access Gtk_Tree_Store_Record; |
| Path | : Gtk.Tree_Model.Gtk_Tree_Path); |
procedure Row_Has_Child_Toggled
| ( | Tree_Model | : not null access Gtk_Tree_Store_Record; |
| Path | : Gtk.Tree_Model.Gtk_Tree_Path; | |
| Iter | : Gtk.Tree_Model.Gtk_Tree_Iter); |
procedure Row_Inserted
| ( | Tree_Model | : not null access Gtk_Tree_Store_Record; |
| Path | : Gtk.Tree_Model.Gtk_Tree_Path; | |
| Iter | : Gtk.Tree_Model.Gtk_Tree_Iter); |
procedure Rows_Reordered
| ( | Tree_Model | : not null access Gtk_Tree_Store_Record; |
| Path | : Gtk.Tree_Model.Gtk_Tree_Path; | |
| Iter | : Gtk.Tree_Model.Gtk_Tree_Iter; | |
| New_Order | : Gint_Array); |
procedure Unref_Node
| ( | Tree_Model | : not null access Gtk_Tree_Store_Record; |
| Iter | : Gtk.Tree_Model.Gtk_Tree_Iter); |
procedure Get_Sort_Column_Id
| ( | Sortable | : not null access Gtk_Tree_Store_Record; |
| Sort_Column_Id | : out Gint; | |
| Order | : out Gtk.Enums.Gtk_Sort_Type); |
procedure Set_Sort_Column_Id
| ( | Sortable | : not null access Gtk_Tree_Store_Record; |
| Sort_Column_Id | : Gint; | |
| Order | : Gtk.Enums.Gtk_Sort_Type); |
function Has_Default_Sort_Func
| ( | Sortable | : not null access Gtk_Tree_Store_Record) return Boolean; |
procedure Sort_Column_Changed
| ( | Sortable | : not null access Gtk_Tree_Store_Record); |
function "+"
| ( | Widget | : access Gtk_Tree_Store_Record'Class) return Gtk.Buildable.Gtk_Buildable renames Implements_Gtk_Buildable.To_Interface; |
function "-"
| ( | Interf | : Gtk.Buildable.Gtk_Buildable) return Gtk_Tree_Store renames Implements_Gtk_Buildable.To_Object; |
function "+"
| ( | Widget | : access Gtk_Tree_Store_Record'Class) return Gtk.Tree_Drag_Dest.Gtk_Tree_Drag_Dest renames Implements_Gtk_Tree_Drag_Dest.To_Interface; |
function "-"
| ( | Interf | : Gtk.Tree_Drag_Dest.Gtk_Tree_Drag_Dest) return Gtk_Tree_Store renames Implements_Gtk_Tree_Drag_Dest.To_Object; |
function "+"
| ( | Widget | : access Gtk_Tree_Store_Record'Class) return Gtk.Tree_Drag_Source.Gtk_Tree_Drag_Source renames Implements_Gtk_Tree_Drag_Source.To_Interface; |
function "-"
| ( | Interf | : Gtk.Tree_Drag_Source.Gtk_Tree_Drag_Source) return Gtk_Tree_Store renames Implements_Gtk_Tree_Drag_Source.To_Object; |
function "+"
| ( | Widget | : access Gtk_Tree_Store_Record'Class) return Gtk.Tree_Model.Gtk_Tree_Model renames Implements_Gtk_Tree_Model.To_Interface; |
function "-"
| ( | Interf | : Gtk.Tree_Model.Gtk_Tree_Model) return Gtk_Tree_Store renames Implements_Gtk_Tree_Model.To_Object; |
function "+"
| ( | Widget | : access Gtk_Tree_Store_Record'Class) return Gtk.Tree_Sortable.Gtk_Tree_Sortable renames Implements_Gtk_Tree_Sortable.To_Interface; |
function "-"
| ( | Interf | : Gtk.Tree_Sortable.Gtk_Tree_Sortable) return Gtk_Tree_Store renames Implements_Gtk_Tree_Sortable.To_Object; |
The Gtk.Tree_Store.Gtk_Tree_Store object is a list model for use with a Gtk.Tree_View.Gtk_Tree_View widget. It implements the Gtk.Tree_Model.Gtk_Tree_Model interface, and consequentialy, can use all of the methods available there. It also implements the Gtk.Tree_Sortable.Gtk_Tree_Sortable interface so it can be sorted by the view. Finally, it also implements the tree <link linkend="gtktreednd">drag and drop</link> interfaces. == GtkTreeStore as GtkBuildable == The GtkTreeStore implementation of the Gtk.Buildable.Gtk_Buildable interface allows to specify the model columns with a <columns> element that may contain multiple <column> elements, each specifying one model column.
The "type" attribute specifies the data type for the column. == A UI Definition fragment for a tree store == <object class="GtkTreeStore"> <columns> <column type="gchararray"/> <column type="gchararray"/> <column type="gint"/> </columns> </object>