Legend:
Page
Library
Module
Module type
Parameter
Class
Class type
Source
Source file gtkTree.ml
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471(**************************************************************************)(* Lablgtk *)(* *)(* This program is free software; you can redistribute it *)(* and/or modify it under the terms of the GNU Library General *)(* Public License as published by the Free Software Foundation *)(* version 2, with the exception described in file COPYING which *)(* comes with the library. *)(* *)(* This program is distributed in the hope that it will be useful, *)(* but WITHOUT ANY WARRANTY; without even the implied warranty of *)(* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *)(* GNU Library General Public License for more details. *)(* *)(* You should have received a copy of the GNU Library General *)(* Public License along with this program; if not, write to the *)(* Free Software Foundation, Inc., 59 Temple Place, Suite 330, *)(* Boston, MA 02111-1307 USA *)(* *)(* *)(**************************************************************************)(* $Id$ *)openGauxopenGtkopenTagsopenGtkTreePropsopenGtkBasemoduleTreePath=structexternalcreate_:unit->tree_path="ml_gtk_tree_path_new"externalfrom_string:string->tree_path="ml_gtk_tree_path_new_from_string"externalto_string:tree_path->string="ml_gtk_tree_path_to_string"externalappend_index:tree_path->int->unit="ml_gtk_tree_path_append_index"letcreatel=letp=create_()inList.iter(append_indexp)l;pexternalprepend_index:tree_path->int->unit="ml_gtk_tree_path_prepend_index"externalget_depth:tree_path->int="ml_gtk_tree_path_get_depth"externalget_indices:tree_path->intarray="ml_gtk_tree_path_get_indices"externalcopy:tree_path->tree_path="ml_gtk_tree_path_copy"externalnext:tree_path->unit="ml_gtk_tree_path_next"externalprev:tree_path->bool="ml_gtk_tree_path_prev"externalup:tree_path->bool="ml_gtk_tree_path_up"externaldown:tree_path->unit="ml_gtk_tree_path_down"externalis_ancestor:tree_path->tree_path->bool="ml_gtk_tree_path_is_ancestor"openGobjectopenDatalet()=Internal.tree_path_string:={kind=`STRING;inj=(funx->string.inj(to_stringx));proj=(funx->from_string(string.projx))};Internal.tree_path_copy:={kind=`POINTER;inj=unsafe_pointer.inj;proj=(funx->copy(unsafe_pointer.projx))}endmoduleRowReference=structexternalcreate:[>`treemodel]obj->tree_path->row_reference="ml_gtk_tree_row_reference_new"externalget_path:row_reference->tree_path="ml_gtk_tree_row_reference_get_path"externalvalid:row_reference->bool="ml_gtk_tree_row_reference_valid"endmoduleTreeModel=structletcastw:tree_model=Object.try_castw"GtkTreeModel"externalget_flags:[>`treemodel]obj->GtkEnums.tree_model_flagslist="ml_gtk_tree_model_get_flags"externalget_n_columns:[>`treemodel]obj->int="ml_gtk_tree_model_get_n_columns"externalget_column_type:[>`treemodel]obj->int->Gobject.g_type="ml_gtk_tree_model_get_column_type"externalalloc_iter:unit->tree_iter="ml_alloc_GtkTreeIter"externalcopy_iter:tree_iter->tree_iter="ml_gtk_tree_iter_copy"externalget_iter:[>`treemodel]obj->tree_iter->tree_path->bool="ml_gtk_tree_model_get_iter"letget_itermp=leti=alloc_iter()inifget_itermipthenielsefailwith"GtkTree.TreeModel.get_iter"externalget_path:[>`treemodel]obj->tree_iter->tree_path="ml_gtk_tree_model_get_path"externalget_value:[>`treemodel]obj->row:tree_iter->column:int->Gobject.g_value->unit="ml_gtk_tree_model_get_value"external_get_iter_first:[>`treemodel]obj->tree_iter->bool="ml_gtk_tree_model_get_iter_first"letget_iter_firstm=leti=alloc_iter()inif_get_iter_firstmithenSomeielseNoneexternaliter_next:[>`treemodel]obj->tree_iter->bool="ml_gtk_tree_model_iter_next"externaliter_has_child:[>`treemodel]obj->tree_iter->bool="ml_gtk_tree_model_iter_has_child"externaliter_n_children:[>`treemodel]obj->tree_iteroption->int="ml_gtk_tree_model_iter_n_children"externaliter_nth_child:[>`treemodel]obj->tree_iter->parent:tree_iteroption->int->bool="ml_gtk_tree_model_iter_nth_child"letiter_childrenm?(nth=0)p=leti=alloc_iter()inifiter_nth_childmipnththenielseinvalid_arg"GtkTree.TreeModel.iter_children"externaliter_parent:[>`treemodel]obj->tree_iter->child:tree_iter->bool="ml_gtk_tree_model_iter_parent"letiter_parentmchild=leti=alloc_iter()inifiter_parentmi~childthenSomeielseNoneexternalforeach:[>`treemodel]obj->(tree_path->tree_iter->bool)->unit="ml_gtk_tree_model_foreach"externalrow_changed:[>`treemodel]obj->tree_path->tree_iter->unit="ml_gtk_tree_model_row_changed"endmoduleTreeStore=structopenTreeModelletcastw:tree_store=Object.try_castw"GtkTreeStore"externalcreate:Gobject.g_typearray->tree_store="ml_gtk_tree_store_newv"externalset_value:tree_store->row:tree_iter->column:int->Gobject.g_value->unit="ml_gtk_tree_store_set_value"externalremove:tree_store->tree_iter->bool="ml_gtk_tree_store_remove"externalinsert:tree_store->iter:tree_iter->?parent:tree_iter->int->unit="ml_gtk_tree_store_insert"letinsertst?parentpos=letiter=alloc_iter()ininsertst~iter?parentpos;iterexternalinsert_before:tree_store->iter:tree_iter->?parent:tree_iter->tree_iter->unit="ml_gtk_tree_store_insert_before"letinsert_beforest?parentpos=letiter=alloc_iter()ininsert_beforest~iter?parentpos;iterexternalinsert_after:tree_store->iter:tree_iter->?parent:tree_iter->tree_iter->unit="ml_gtk_tree_store_insert_after"letinsert_afterst?parentpos=letiter=alloc_iter()ininsert_afterst~iter?parentpos;iterexternalappend:tree_store->iter:tree_iter->?parent:tree_iter->unit="ml_gtk_tree_store_append"letappendst?parent()=letiter=alloc_iter()inappendst~iter?parent;iterexternalprepend:tree_store->iter:tree_iter->?parent:tree_iter->unit="ml_gtk_tree_store_prepend"letprependst?parent()=letiter=alloc_iter()inprependst~iter?parent;iterexternalis_ancestor:tree_store->iter:tree_iter->descendant:tree_iter->bool="ml_gtk_tree_store_is_ancestor"externaliter_depth:tree_store->tree_iter->int="ml_gtk_tree_store_iter_depth"externalclear:tree_store->unit="ml_gtk_tree_store_clear"externaliter_is_valid:tree_store->tree_iter->bool="ml_gtk_tree_store_iter_is_valid"externalswap:tree_store->tree_iter->tree_iter->bool="ml_gtk_tree_store_swap"externalmove_before:tree_store->iter:tree_iter->pos:tree_iter->bool="ml_gtk_tree_store_move_before"externalmove_after:tree_store->iter:tree_iter->pos:tree_iter->bool="ml_gtk_tree_store_move_after"endmoduleListStore=structopenTreeModelletcastw:list_store=Object.try_castw"GtkListStore"externalcreate:Gobject.g_typearray->list_store="ml_gtk_list_store_newv"externalset_value:list_store->row:tree_iter->column:int->Gobject.g_value->unit="ml_gtk_list_store_set_value"externalremove:list_store->tree_iter->bool="ml_gtk_list_store_remove"externalinsert:list_store->iter:tree_iter->int->unit="ml_gtk_list_store_insert"letinsertstpos=letiter=alloc_iter()ininsertst~iterpos;iterexternalinsert_before:list_store->iter:tree_iter->tree_iter->unit="ml_gtk_list_store_insert_before"letinsert_beforestpos=letiter=alloc_iter()ininsert_beforest~iterpos;iterexternalinsert_after:list_store->iter:tree_iter->tree_iter->unit="ml_gtk_list_store_insert_after"letinsert_afterstpos=letiter=alloc_iter()ininsert_afterst~iterpos;iterexternalappend:list_store->iter:tree_iter->unit="ml_gtk_list_store_append"letappendst()=letiter=alloc_iter()inappendst~iter;iterexternalprepend:list_store->iter:tree_iter->unit="ml_gtk_list_store_prepend"letprependst()=letiter=alloc_iter()inprependst~iter;iterexternalclear:list_store->unit="ml_gtk_list_store_clear"externaliter_is_valid:list_store->tree_iter->bool="ml_gtk_list_store_iter_is_valid"externalswap:list_store->tree_iter->tree_iter->bool="ml_gtk_list_store_swap"externalmove_before:list_store->iter:tree_iter->pos:tree_iter->bool="ml_gtk_list_store_move_before"externalmove_after:list_store->iter:tree_iter->pos:tree_iter->bool="ml_gtk_list_store_move_after"endmoduleTreeSelection=structincludeTreeSelectionexternalset_mode:tree_selection->selection_mode->unit="ml_gtk_tree_selection_set_mode"externalget_mode:tree_selection->selection_mode="ml_gtk_tree_selection_get_mode"externalset_select_function:tree_selection->(tree_path->bool->bool)->unit="ml_gtk_tree_selection_set_select_function"externalselected_foreach:tree_selection->(tree_path->unit)->unit="ml_gtk_tree_selection_selected_foreach"letget_selected_rowss=letl=ref[]inselected_foreachs(funp->l:=p::!l);List.rev!lexternalcount_selected_rows:tree_selection->int="ml_gtk_tree_selection_count_selected_rows"externalselect_path:tree_selection->tree_path->unit="ml_gtk_tree_selection_select_path"externalpath_is_selected:tree_selection->tree_path->bool="ml_gtk_tree_selection_path_is_selected"externalunselect_path:tree_selection->tree_path->unit="ml_gtk_tree_selection_unselect_path"externalselect_iter:tree_selection->tree_iter->unit="ml_gtk_tree_selection_select_iter"externalunselect_iter:tree_selection->tree_iter->unit="ml_gtk_tree_selection_unselect_iter"externaliter_is_selected:tree_selection->tree_iter->bool="ml_gtk_tree_selection_iter_is_selected"externalselect_all:tree_selection->unit="ml_gtk_tree_selection_select_all"externalunselect_all:tree_selection->unit="ml_gtk_tree_selection_unselect_all"externalselect_range:tree_selection->tree_path->tree_path->unit="ml_gtk_tree_selection_select_range"externalunselect_range:tree_selection->tree_path->tree_path->unit="ml_gtk_tree_selection_unselect_range"endmoduleTreeViewColumn=structincludeTreeViewColumnexternalclear:[>`treeviewcolumn]obj->unit="ml_gtk_tree_view_column_clear"externalpack_start:[>`treeviewcolumn]obj->[>`cellrenderer]obj->bool->unit="ml_gtk_tree_view_column_pack_start"externalpack_end:[>`treeviewcolumn]obj->[>`cellrenderer]obj->bool->unit="ml_gtk_tree_view_column_pack_end"externalclear_attributes:[>`treeviewcolumn]obj->[>`cellrenderer]obj->unit="ml_gtk_tree_view_column_clear_attributes"letpackobj?(expand=true)?(from:[`START|`END]=`START)crr=(iffrom=`STARTthenpack_startelsepack_end)objcrrexpandexternaladd_attribute:[>`treeviewcolumn]obj->[>`cellrenderer]obj->string->int->unit="ml_gtk_tree_view_column_add_attribute"externalset_sort_column_id:[>`treeviewcolumn]obj->int->unit="ml_gtk_tree_view_column_set_sort_column_id"externalget_sort_column_id:[>`treeviewcolumn]obj->int="ml_gtk_tree_view_column_get_sort_column_id"externalset_cell_data_func:[>`treeviewcolumn]obj->[>`cellrenderer]obj->([`treemodel]obj->tree_iter->unit)option->unit="ml_gtk_tree_view_column_set_cell_data_func"externalget_button:[>`treeviewcolumn]obj->Gtk.buttonobj="ml_gtk_tree_view_column_get_button"endmoduleTreeView=structincludeTreeViewexternalget_selection:[>`treeview]obj->tree_selection="ml_gtk_tree_view_get_selection"externalcolumns_autosize:[>`treeview]obj->unit="ml_gtk_tree_view_columns_autosize"externalappend_column:[>`treeview]obj->[>`treeviewcolumn]obj->int="ml_gtk_tree_view_append_column"externalremove_column:[>`treeview]obj->[>`treeviewcolumn]obj->int="ml_gtk_tree_view_remove_column"externalinsert_column:[>`treeview]obj->[>`treeviewcolumn]obj->int->int="ml_gtk_tree_view_insert_column"externalget_column:[>`treeview]obj->int->tree_view_columnobj="ml_gtk_tree_view_get_column"externalmove_column_after:[>`treeview]obj->[>`treeviewcolumn]obj->[>`treeviewcolumn]obj->int="ml_gtk_tree_view_move_column_after"externalscroll_to_point:[>`treeview]obj->int->int->unit="ml_gtk_tree_view_scroll_to_point"externalscroll_to_cell:[>`treeview]obj->tree_path->[>`treeviewcolumn]obj->?align:(float*float)->unit="ml_gtk_tree_view_scroll_to_cell"letscroll_to_cellv?align=scroll_to_cellv?alignexternalrow_activated:[>`treeview]obj->tree_path->[>`treeviewcolumn]obj->unit="ml_gtk_tree_view_row_activated"externalexpand_all:[>`treeview]obj->unit="ml_gtk_tree_view_expand_all"externalcollapse_all:[>`treeview]obj->unit="ml_gtk_tree_view_collapse_all"externalexpand_row:[>`treeview]obj->tree_path->all:bool->unit="ml_gtk_tree_view_expand_row"externalexpand_to_path:[>`treeview]obj->tree_path->unit="ml_gtk_tree_view_expand_to_path"externalcollapse_row:[>`treeview]obj->tree_path->unit="ml_gtk_tree_view_collapse_row"externalrow_expanded:[>`treeview]obj->tree_path->bool="ml_gtk_tree_view_row_expanded"externalset_cursor:[>`treeview]obj->tree_path->[>`treeviewcolumn]obj->edit:bool->unit="ml_gtk_tree_view_set_cursor"externalset_cursor_on_cell:[>`treeview]obj->tree_path->[>`treeviewcolumn]obj->[>`cellrenderer]obj->edit:bool->unit="ml_gtk_tree_view_set_cursor_on_cell"externalget_cursor:[>`treeview]obj->tree_pathoption*tree_view_columnobjoption="ml_gtk_tree_view_get_cursor"externalget_path_at_pos:[>`treeview]obj->x:int->y:int->(tree_path*tree_view_columnobj*int*int)option="ml_gtk_tree_view_get_path_at_pos"externalget_cell_area:[>`treeview]obj->?path:tree_path->?col:tree_view_columnobj->unit->Gdk.Rectangle.t="ml_gtk_tree_view_get_cell_area"externalset_row_separator_func:[>`treeview]obj->(Gtk.tree_model->Gtk.tree_iter->bool)option->unit="ml_gtk_tree_view_set_row_separator_func"(** @since GTK 2.12 *)moduleTooltip=structexternalset_cell:[>`treeview]obj->Gtk.tooltip->?path:Gtk.tree_path->?col:tree_view_columnobj->?cell:[>`cellrenderer]obj->unit->unit="ml_gtk_tree_view_set_tooltip_cell_bc""ml_gtk_tree_view_set_tooltip_cell"externalset_row:[>`treeview]obj->Gtk.tooltip->Gtk.tree_path->unit="ml_gtk_tree_view_set_tooltip_row"externalget_context:[>`treeview]obj->x:int->y:int->kbd:bool->(int*int*(Gtk.tree_model*Gtk.tree_path*Gtk.tree_iter)option)="ml_gtk_tree_view_get_tooltip_context"externalget_column:[>`treeview]obj->int="ml_gtk_tree_view_get_tooltip_column"externalset_column:[>`treeview]obj->int->unit="ml_gtk_tree_view_set_tooltip_column"endmoduleDnd=structexternalget_dest_row_at_pos:[>`treeview]obj->x:int->y:int->(Gtk.tree_path*GtkEnums.tree_view_drop_position)option="ml_gtk_tree_view_get_dest_row_at_pos"externalenable_model_drag_dest:[>`treeview]obj->targets:target_entryarray->actions:Gdk.Tags.drag_actionlist->unit="ml_gtk_tree_view_enable_model_drag_dest"externalunset_rows_drag_dest:[>`treeview]obj->unit="ml_gtk_tree_view_unset_rows_drag_dest"externalenable_model_drag_source:[>`treeview]obj->?modi:Gdk.Tags.modifierlist->targets:target_entryarray->actions:Gdk.Tags.drag_actionlist->unit="ml_gtk_tree_view_enable_model_drag_source"externalunset_rows_drag_source:[>`treeview]obj->unit="ml_gtk_tree_view_unset_rows_drag_source"endendmoduleCellRenderer=CellRenderermoduleCellRendererPixbuf=CellRendererPixbufmoduleCellRendererText=CellRendererTextmoduleCellRendererToggle=CellRendererTogglemoduleCellRendererProgress=CellRendererProgressmoduleCellRendererCombo=CellRendererCombomoduleCellRendererAccel=CellRendererAccelmoduleCellLayout=structincludeGtkTreeProps.CellLayoutletpacklayout?(expand=false)?from:(dir=(`START:pack_type))renderer=(matchdirwith`START->pack_start|`END->pack_end)layoutrenderer~expandendmoduleTreeModelSort=TreeModelSortmoduleTreeSortable=TreeSortablemoduleTreeModelFilter=TreeModelFiltermoduleIconView=IconViewmoduleCustomModel=struct(* Do not change the name of this methods: they are hard coded in ml_gtktree.c.
They must remain public. *)classvirtual['row,'a,'b,'c]callback=objectmethodvirtualcustom_encode_iter:'row->'a*'b*'cmethodvirtualcustom_decode_iter:'a->'b->'c->'rowmethodvirtualcustom_n_columns:intmethodvirtualcustom_get_column_type:int->Gobject.g_typemethodvirtualcustom_get_iter:Gtk.tree_path->'rowoptionmethodvirtualcustom_get_path:'row->Gtk.tree_pathmethodvirtualcustom_get_value:'row->int->Gobject.g_value->unitmethodvirtualcustom_iter_next:'row->'rowoptionmethodvirtualcustom_iter_children:'rowoption->'rowoptionmethodvirtualcustom_iter_has_child:'row->boolmethodvirtualcustom_iter_n_children:'rowoption->intmethodvirtualcustom_iter_nth_child:'rowoption->int->'rowoptionmethodvirtualcustom_iter_parent:'row->'rowoptionmethodcustom_ref_node(_:'row):unit=()methodcustom_unref_node(_:'row):unit=()endexternalcreate:unit->tree_model_custom="ml_custom_model_create"externalregister_callback:tree_model_custom->('row,'a,'b,'c)#callback->unit="ml_register_custom_model_callback_object"externalcustom_row_inserted:tree_model_custom->Gtk.tree_path->'row->unit="ml_custom_model_row_inserted"externalcustom_row_changed:tree_model_custom->Gtk.tree_path->'row->unit="ml_custom_model_row_changed"externalcustom_row_has_child_toggled:tree_model_custom->Gtk.tree_path->'row->unit="ml_custom_model_row_has_child_toggled"externalcustom_row_deleted:tree_model_custom->'row->unit="ml_custom_model_row_deleted"externalcustom_rows_reordered:tree_model_custom->Gtk.tree_path->'rowoption->intarray->unit="ml_custom_model_rows_reordered"end