VikTreeview

VikTreeview

Functions

Signals

Types and Values

Object Hierarchy

    GObject
    ╰── GInitiallyUnowned
        ╰── GtkWidget
            ╰── GtkContainer
                ╰── GtkTreeView
                    ╰── VikTreeview

Description

Functions

vik_treeview_new ()

VikTreeview *
vik_treeview_new ();

vik_treeview_get_widget ()

GtkWidget *
vik_treeview_get_widget (VikTreeview *vt);

vik_treeview_item_get_data ()

gint
vik_treeview_item_get_data (VikTreeview *vt,
                            GtkTreeIter *iter);

vik_treeview_item_get_name ()

gchar *
vik_treeview_item_get_name (VikTreeview *vt,
                            GtkTreeIter *iter);

vik_treeview_item_get_pointer ()

gpointer
vik_treeview_item_get_pointer (VikTreeview *vt,
                               GtkTreeIter *iter);

vik_treeview_item_set_pointer ()

void
vik_treeview_item_set_pointer (VikTreeview *vt,
                               GtkTreeIter *iter,
                               gpointer pointer);

vik_treeview_item_set_timestamp ()

void
vik_treeview_item_set_timestamp (VikTreeview *vt,
                                 GtkTreeIter *iter,
                                 gdouble timestamp);

vik_treeview_item_get_parent ()

gpointer
vik_treeview_item_get_parent (VikTreeview *vt,
                              GtkTreeIter *iter);

vik_treeview_item_get_visible_tree ()

gboolean
vik_treeview_item_get_visible_tree (VikTreeview *vt,
                                    GtkTreeIter *iter);

vik_treeview_select_iter ()

void
vik_treeview_select_iter (VikTreeview *vt,
                          GtkTreeIter *iter,
                          gboolean view_all);

vik_treeview_get_selected_iter ()

gboolean
vik_treeview_get_selected_iter (VikTreeview *vt,
                                GtkTreeIter *iter);

vik_treeview_get_editing ()

gboolean
vik_treeview_get_editing (VikTreeview *vt);

vik_treeview_item_set_icon ()

void
vik_treeview_item_set_icon (VikTreeview *vt,
                            GtkTreeIter *iter,
                            const GdkPixbuf *icon);

vik_treeview_item_set_name ()

void
vik_treeview_item_set_name (VikTreeview *vt,
                            GtkTreeIter *iter,
                            const gchar *to);

vik_treeview_item_set_visible ()

void
vik_treeview_item_set_visible (VikTreeview *vt,
                               GtkTreeIter *iter,
                               gboolean to);

vik_treeview_item_toggle_visible ()

void
vik_treeview_item_toggle_visible (VikTreeview *vt,
                                  GtkTreeIter *iter);

vik_treeview_item_delete ()

void
vik_treeview_item_delete (VikTreeview *vt,
                          GtkTreeIter *iter);

vik_treeview_get_iter_at_pos ()

gboolean
vik_treeview_get_iter_at_pos (VikTreeview *vt,
                              GtkTreeIter *iter,
                              gint x,
                              gint y);

vik_treeview_get_iter_from_path_str ()

gboolean
vik_treeview_get_iter_from_path_str (VikTreeview *vt,
                                     GtkTreeIter *iter,
                                     const gchar *path_str);

vik_treeview_move_item ()

gboolean
vik_treeview_move_item (VikTreeview *vt,
                        GtkTreeIter *iter,
                        gboolean up);

vik_treeview_item_select ()

void
vik_treeview_item_select (VikTreeview *vt,
                          GtkTreeIter *iter);

vik_treeview_item_unselect ()

void
vik_treeview_item_unselect (VikTreeview *vt,
                            GtkTreeIter *iter);

vik_treeview_item_get_parent_iter ()

gboolean
vik_treeview_item_get_parent_iter (VikTreeview *vt,
                                   GtkTreeIter *iter,
                                   GtkTreeIter *parent);

vik_treeview_expand ()

void
vik_treeview_expand (VikTreeview *vt,
                     GtkTreeIter *iter);

vik_treeview_add_layer ()

void
vik_treeview_add_layer (VikTreeview *vt,
                        GtkTreeIter *parent_iter,
                        GtkTreeIter *iter,
                        const gchar *name,
                        gpointer parent,
                        gboolean above,
                        gpointer item,
                        gint data,
                        VikLayerTypeEnum layer_type,
                        gdouble timestamp);

vik_treeview_insert_layer ()

void
vik_treeview_insert_layer (VikTreeview *vt,
                           GtkTreeIter *parent_iter,
                           GtkTreeIter *iter,
                           const gchar *name,
                           gpointer parent,
                           gboolean above,
                           gpointer item,
                           gint data,
                           VikLayerTypeEnum layer_type,
                           GtkTreeIter *sibling,
                           gdouble timestamp);

vik_treeview_add_sublayer ()

void
vik_treeview_add_sublayer (VikTreeview *vt,
                           GtkTreeIter *parent_iter,
                           GtkTreeIter *iter,
                           const gchar *name,
                           gpointer parent,
                           gpointer item,
                           gint data,
                           GdkPixbuf *icon,
                           gboolean editable,
                           gdouble timestamp,
                           guint number);

vik_treeview_get_iter_with_name ()

gboolean
vik_treeview_get_iter_with_name (VikTreeview *vt,
                                 GtkTreeIter *iter,
                                 GtkTreeIter *parent_iter,
                                 const gchar *name);

vik_treeview_sort_children ()

void
vik_treeview_sort_children (VikTreeview *vt,
                            GtkTreeIter *parent,
                            vik_layer_sort_order_t order);

Use the gtk_tree_store_reorder method as it very quick

This ordering can be performed on demand and works for any parent iterator (i.e. both sublayer and layer levels)

It should be called whenever an individual sublayer item is added or renamed (or after a group of sublayer items have been added).

Previously with insertion sort on every sublayer addition: adding 10,000 items would take over 30 seconds! Now sorting after simply adding all tracks takes 1 second. For a KML file with over 10,000 tracks (3Mb zipped) - See 'UK Hampshire Rights of Way' http://www3.hants.gov.uk/row/row-maps.htm

Parameters

vt

The treeview to operate on

 

parent

The level within the treeview to sort

 

order

How the items should be sorted

 

Types and Values

VIK_TREEVIEW_TYPE

#define VIK_TREEVIEW_TYPE            (vik_treeview_get_type ())

Signal Details

The “item-edited” signal

void
user_function (VikTreeview *viktreeview,
               gpointer     arg1,
               gpointer     arg2,
               gpointer     user_data)

Flags: Action


The “item-toggled” signal

void
user_function (VikTreeview *viktreeview,
               gpointer     arg1,
               gpointer     user_data)

Flags: Action