Creation, insertion, deletion
Elements inside a
Gtk_Ctree are not ordered from the top to the bottom
as is the case for Gtk_Clist. Instead, they are put in the ctree by
indicating where in the tree they should be placed. The position of an
element (called a node) is defined by a parent node and a sibling node.
The node will be attached in the parent subtree, on top of the sibling
node.
-
procedure Gtk_New (Widget : out Gtk_Ctree;
Columns : in Gint;
Tree_Column : in Gint := 0);
-
procedure Initialize (Widget : access Gtk_Ctree_Record'Class;
Columns : in Gint;
Tree_Column : in Gint := 0);
-
procedure Gtk_New (Widget : out Gtk_Ctree;
Titles : in Chars_Ptr_Array;
Tree_Column : in Gint := 0);
-
procedure Initialize (Widget : access Gtk_Ctree_Record'Class;
Titles : in Chars_Ptr_Array;
Tree_Column : in Gint := 0);
-
-
-
procedure Remove_Node (Ctree : access Gtk_Ctree_Record;
Node : in Gtk_Ctree_Node);
Tree, Node and Row basic manipulation
-
-
function Get_Node_List
(Ctree : access Gtk_Ctree_Record) return Node_List.Glist;
-
function Get_Row_List
(Ctree : access Gtk_Ctree_Record) return Row_List.Glist;
-
function Get_Selection
(Ctree : access Gtk_Ctree_Record) return Node_List.Glist;
-
function Node_Get_Row (Node : in Gtk_Ctree_Node) return Gtk_Ctree_Row;
-
function Row_Get_Children (Row : in Gtk_Ctree_Row) return Gtk_Ctree_Node;
-
function Row_Get_Expanded (Row : in Gtk_Ctree_Row) return Boolean;
-
function Row_Get_Is_Leaf (Row : in Gtk_Ctree_Row) return Boolean;
-
function Row_Get_Parent (Row : in Gtk_Ctree_Row) return Gtk_Ctree_Node;
-
function Row_Get_Sibling (Row : in Gtk_Ctree_Row) return Gtk_Ctree_Node;
-
function Is_Created (Node : in Gtk_Ctree_Node) return Boolean;
Querying / finding tree information
-
function Is_Viewable
(Ctree : access Gtk_Ctree_Record;
Node : in Gtk_Ctree_Node)
return Boolean;
-
function Last
(Ctree : access Gtk_Ctree_Record;
Node : in Gtk_Ctree_Node)
return Gtk_Ctree_Node;
-
function Find_Node_Ptr
(Ctree : access Gtk_Ctree_Record;
Ctree_Row : in Gtk_Ctree_Row)
return Gtk_Ctree_Node;
-
function Node_Nth (Ctree : access Gtk_Ctree_Record;
Row : in Guint)
return Gtk_Ctree_Node;
-
function Find (Ctree : access Gtk_Ctree_Record;
Node : in Gtk_Ctree_Node;
Child : in Gtk_Ctree_Node) return Boolean;
-
function Is_Ancestor
(Ctree : access Gtk_Ctree_Record;
Node : in Gtk_Ctree_Node;
Child : in Gtk_Ctree_Node) return Boolean;
-
function Is_Hot_Spot
(Ctree : access Gtk_Ctree_Record;
X : in Gint;
Y : in Gint) return Boolean;
Tree signals: move, expand, collapse, (un)select
-
procedure Move (Ctree : access Gtk_Ctree_Record;
Node : in Gtk_Ctree_Node;
New_Parent : in Gtk_Ctree_Node;
New_Sibling : in Gtk_Ctree_Node);
-
procedure Expand (Ctree : access Gtk_Ctree_Record;
Node : in Gtk_Ctree_Node);
-
procedure Expand_Recursive
(Ctree : access Gtk_Ctree_Record;
Node : in Gtk_Ctree_Node := null);
-
procedure Expand_To_Depth
(Ctree : access Gtk_Ctree_Record;
Node : in Gtk_Ctree_Node := null;
Depth : in Gint);
-
procedure Collapse (Ctree : access Gtk_Ctree_Record;
Node : in Gtk_Ctree_Node);
-
procedure Collapse_Recursive
(Ctree : access Gtk_Ctree_Record;
Node : in Gtk_Ctree_Node := null);
-
procedure Collapse_To_Depth
(Ctree : access Gtk_Ctree_Record;
Node : in Gtk_Ctree_Node := null;
Depth : in Gint);
-
procedure Toggle_Expansion (Ctree : access Gtk_Ctree_Record;
Node : in Gtk_Ctree_Node);
-
procedure Toggle_Expansion_Recursive (Ctree : access Gtk_Ctree_Record;
Node : in Gtk_Ctree_Node);
-
procedure Gtk_Select (Ctree : access Gtk_Ctree_Record;
Node : in Gtk_Ctree_Node);
-
procedure Select_Recursive
(Ctree : access Gtk_Ctree_Record;
Node : in Gtk_Ctree_Node := null);
-
procedure Unselect (Ctree : access Gtk_Ctree_Record;
Node : in Gtk_Ctree_Node);
-
procedure Unselect_Recursive
(Ctree : access Gtk_Ctree_Record;
Node : in Gtk_Ctree_Node := null);
-
procedure Real_Select_Recursive (Ctree : access Gtk_Ctree_Record;
Node : in Gtk_Ctree_Node := null;
Do_Select : in Boolean);
Analogs of Gtk_Clist functions
-
procedure Node_Set_Text (Ctree : access Gtk_Ctree_Record;
Node : in Gtk_Ctree_Node;
Column : in Gint;
Text : in UTF8_String);
-
function Node_Get_Text (Ctree : access Gtk_Ctree_Record;
Node : in Gtk_Ctree_Node;
Column : in Gint) return UTF8_String;
-
-
-
procedure Node_Set_Pixtext (Ctree :
access Gtk_Ctree_Record;
Node :
in Gtk_Ctree_Node;
Column :
in Gint;
Text :
in UTF8_String;
Spacing :
in Guint8;
Pixmap :
in Gdk.Pixmap.Gdk_Pixmap;
Mask :
in Gdk.Bitmap.Gdk_Bitmap);
-
procedure Node_Get_Pixtext (Ctree :
access Gtk_Ctree_Record;
Node :
in Gtk_Ctree_Node;
Column :
in Gint;
Text :
out Interfaces.C.Strings.chars_ptr;
Spacing :
out Guint8;
Pixmap :
out Gdk.Pixmap.Gdk_Pixmap;
Mask :
out Gdk.Bitmap.Gdk_Bitmap;
Success :
out Boolean);
-
procedure Node_Set_Shift (Ctree : access Gtk_Ctree_Record;
Node : in Gtk_Ctree_Node;
Column : in Gint;
Vertical : in Gint;
Horizontal : in Gint);
-
-
-
procedure Node_Set_Selectable (Ctree : access Gtk_Ctree_Record;
Node : in Gtk_Ctree_Node;
Selectable : in Boolean := True);
-
function Node_Get_Selectable (Ctree : access Gtk_Ctree_Record;
Node : in Gtk_Ctree_Node)
return Boolean;
-
procedure Node_Set_Row_Style (Ctree :
access Gtk_Ctree_Record;
Node :
in Gtk_Ctree_Node;
Style :
in Gtk.Style.Gtk_Style);
-
function Node_Get_Row_Style (Ctree :
access Gtk_Ctree_Record;
Node :
in Gtk_Ctree_Node)
return Gtk.Style.Gtk_Style;
-
procedure Node_Set_Cell_Style (Ctree :
access Gtk_Ctree_Record;
Node :
in Gtk_Ctree_Node;
Column :
in Gint;
Style :
in Gtk.Style.Gtk_Style);
-
function Node_Get_Cell_Style (Ctree :
access Gtk_Ctree_Record;
Node :
in Gtk_Ctree_Node;
Column :
in Gint)
return Gtk.Style.Gtk_Style;
-
procedure Node_Set_Foreground (Ctree :
access Gtk_Ctree_Record;
Node :
in Gtk_Ctree_Node;
Color :
in Gdk.Color.Gdk_Color);
-
procedure Node_Set_Background (Ctree :
access Gtk_Ctree_Record;
Node :
in Gtk_Ctree_Node;
Color :
in Gdk.Color.Gdk_Color);
-
function Node_Get_Cell_Type (Ctree :
access Gtk_Ctree_Record;
Node :
in Gtk_Ctree_Node;
Column :
in Gint)
return Gtk.Clist.Gtk_Cell_Type;
-
procedure Node_Moveto (Ctree : access Gtk_Ctree_Record;
Node : in Gtk_Ctree_Node;
Column : in Gint;
Row_Align : in Gfloat := 0.5;
Col_Align : in Gfloat := 0.5);
-
function Node_Is_Visible
(Ctree : access Gtk_Ctree_Record;
Node : in Gtk_Ctree_Node)
return Gtk_Visibility;
Ctree specific functions
-
procedure Set_Indent (Ctree : access Gtk_Ctree_Record;
Indent : in Gint := 20);
-
-
procedure Set_Spacing (Ctree : access Gtk_Ctree_Record;
Spacing : in Gint := 5);
-
-
procedure Set_Show_Stub (Ctree : access Gtk_Ctree_Record;
Show_Stub : in Boolean);
-
function Get_Show_Stub (Ctree : access Gtk_Ctree_Record) return Boolean;
-
procedure Set_Line_Style
(Ctree : access Gtk_Ctree_Record;
Line_Style : in Gtk_Ctree_Line_Style := Ctree_Lines_Solid);
-
function Get_Line_Style
(Ctree : access Gtk_Ctree_Record) return Gtk_Ctree_Line_Style;
-
procedure Set_Expander_Style
(Ctree : access Gtk_Ctree_Record;
Expander_Style : in Gtk_Ctree_Expander_Style :=
Ctree_Expander_Square);
-
function Get_Expander_Style
(Ctree : access Gtk_Ctree_Record) return Gtk_Ctree_Expander_Style;
-
procedure Set_Drag_Compare_Func
(Ctree : access Gtk_Ctree_Record;
Cmp_Func : in Gtk_Ctree_Compare_Drag_Func);
Tree sorting functions
-
procedure Sort_Node (Ctree : access Gtk_Ctree_Record;
Node : in Gtk_Ctree_Node);
-
procedure Sort_Recursive (Ctree : access Gtk_Ctree_Record;
Node : in Gtk_Ctree_Node := null);
Row_Data handling
-
procedure Node_Set_Row_Data (Ctree : access Gtk_Ctree_Record'Class;
Node : in Gtk_Ctree_Node;
Data : in Data_Type);
-
function Node_Get_Row_Data
(Ctree : access Gtk_Ctree_Record'Class;
Node : in Gtk_Ctree_Node)
return Data_Type;
-
function Find_By_Row_Data
(Ctree : access Gtk_Ctree_Record'Class;
Node : in Gtk_Ctree_Node;
Data : in Data_Type)
return Gtk_Ctree_Node;
-
function Find_All_By_Row_Data
(Ctree : access Gtk_Ctree_Record'Class;
Node : in Gtk_Ctree_Node;
Data : in Data_Type)
return Node_List.Glist;
-
function Find_By_Row_Data_Custom
(Ctree : access Gtk_Ctree_Record'Class;
Node : in Gtk_Ctree_Node;
Data : in Data_Type;
Func : in Gcompare_Func)
return Gtk_Ctree_Node;
-
function Find_All_By_Row_Data_Custom
(Ctree : access Gtk_Ctree_Record'Class;
Node : in Gtk_Ctree_Node;
Data : in Data_Type;
Func : in Gcompare_Func) return Node_List.Glist;
-
procedure Post_Recursive (Ctree : access Gtk_Ctree_Record'Class;
Node : in Gtk_Ctree_Node;
Func : in Gtk_Ctree_Func;
Data : in Data_Type_Access);
-
procedure Post_Recursive_To_Depth (Ctree : access Gtk_Ctree_Record'Class;
Node : in Gtk_Ctree_Node;
Depth : in Gint;
Func : in Gtk_Ctree_Func;
Data : in Data_Type_Access);
-
procedure Pre_Recursive (Ctree : access Gtk_Ctree_Record'Class;
Node : in Gtk_Ctree_Node;
Func : in Gtk_Ctree_Func;
Data : in Data_Type_Access);
-
procedure Pre_Recursive_To_Depth (Ctree : access Gtk_Ctree_Record'Class;
Node : in Gtk_Ctree_Node;
Depth : in Gint;
Func : in Gtk_Ctree_Func;
Data : in Data_Type_Access);