GtkCTree: GTK+ 2 Reference Manual

## GtkCTree GtkCTree |

## Functions

#define | GTK_CTREE_ROW()
#define | GTK_CTREE_NODE()
#define | GTK_CTREE_NODE_NEXT()
#define | GTK_CTREE_NODE_PREV()
#define | GTK_CTREE_FUNC()
void | (*GtkCTreeFunc) ()
gboolean | (*GtkCTreeGNodeFunc) ()
gboolean | (*GtkCTreeCompareDragFunc) ()
GtkWidget * | gtk_ctree_new_with_titles ()
GtkWidget * | gtk_ctree_new ()
GtkCTreeNode * | gtk_ctree_insert_node ()
void | gtk_ctree_remove_node ()
GtkCTreeNode * | gtk_ctree_insert_gnode ()
GNode * | gtk_ctree_export_to_gnode ()
void | gtk_ctree_post_recursive ()
void | gtk_ctree_post_recursive_to_depth ()
void | gtk_ctree_pre_recursive ()
void | gtk_ctree_pre_recursive_to_depth ()
gboolean | gtk_ctree_is_viewable ()
GtkCTreeNode * | gtk_ctree_last ()
GtkCTreeNode * | gtk_ctree_find_node_ptr ()
gboolean | gtk_ctree_find ()
gboolean | gtk_ctree_is_ancestor ()
GtkCTreeNode * | gtk_ctree_find_by_row_data ()
GList * | gtk_ctree_find_all_by_row_data ()
GtkCTreeNode * | gtk_ctree_find_by_row_data_custom ()
GList * | gtk_ctree_find_all_by_row_data_custom ()
gboolean | gtk_ctree_is_hot_spot ()
void | gtk_ctree_move ()
void | gtk_ctree_expand ()
void | gtk_ctree_expand_recursive ()
void | gtk_ctree_expand_to_depth ()
void | gtk_ctree_collapse ()
void | gtk_ctree_collapse_recursive ()
void | gtk_ctree_collapse_to_depth ()
void | gtk_ctree_toggle_expansion ()
void | gtk_ctree_toggle_expansion_recursive ()
void | gtk_ctree_select ()
void | gtk_ctree_select_recursive ()
void | gtk_ctree_unselect ()
void | gtk_ctree_unselect_recursive ()
void | gtk_ctree_real_select_recursive ()
void | gtk_ctree_node_set_text ()
void | gtk_ctree_node_set_pixmap ()
void | gtk_ctree_node_set_pixtext ()
void | gtk_ctree_set_node_info ()
void | gtk_ctree_node_set_shift ()
void | gtk_ctree_node_set_selectable ()
gboolean | gtk_ctree_node_get_selectable ()
GtkCellType | gtk_ctree_node_get_cell_type ()
gboolean | gtk_ctree_node_get_text ()
gboolean | gtk_ctree_node_get_pixmap ()
gboolean | gtk_ctree_node_get_pixtext ()
gboolean | gtk_ctree_get_node_info ()
void | gtk_ctree_node_set_row_style ()
GtkStyle * | gtk_ctree_node_get_row_style ()
void | gtk_ctree_node_set_cell_style ()
GtkStyle * | gtk_ctree_node_get_cell_style ()
void | gtk_ctree_node_set_foreground ()
void | gtk_ctree_node_set_background ()
void | gtk_ctree_node_set_row_data ()
void | gtk_ctree_node_set_row_data_full ()
gpointer | gtk_ctree_node_get_row_data ()
void | gtk_ctree_node_moveto ()
GtkVisibility | gtk_ctree_node_is_visible ()
void | gtk_ctree_set_indent ()
void | gtk_ctree_set_spacing ()
#define | gtk_ctree_set_reorderable()
void | gtk_ctree_set_line_style ()
void | gtk_ctree_set_expander_style ()
void | gtk_ctree_set_drag_compare_func ()
void | gtk_ctree_sort_node ()
void | gtk_ctree_sort_recursive ()
GtkCTreeNode * | gtk_ctree_node_nth ()
void | gtk_ctree_set_show_stub ()

## Properties

GtkCTreeExpanderStyle | expander-style | Read / Write
guint | indent | Read / Write
GtkCTreeLineStyle | line-style | Read / Write
guint | n-columns | Read / Write / Construct Only
gboolean | show-stub | Read / Write
guint | spacing | Read / Write
guint | tree-column | Read / Write / Construct Only

## Signals

void | change-focus-row-expansion | Action
void | tree-collapse | Run Last
void | tree-expand | Run Last
void | tree-move | Run Last
void | tree-select-row | Run First
void | tree-unselect-row | Run First

## Types and Values

struct | GtkCTree
enum | GtkCTreePos
enum | GtkCTreeLineStyle
enum | GtkCTreeExpanderStyle
enum | GtkCTreeExpansionType
struct | GtkCTreeRow
struct | GtkCTreeNode
#define | GTK_TYPE_CTREE_NODE

## Object Hierarchy

        GObject
        ╰── GInitiallyUnowned
            ╰── GtkObject
                ╰── GtkWidget
                    ╰── GtkContainer
                        ╰── GtkCList
                            ╰── GtkCTree

## Implemented Interfaces

GtkCTree implements AtkImplementorIface and GtkBuildable.

## Includes

    #include <gtk/gtk.h>

## Description

## Functions

### GTK_CTREE_ROW()

    #define GTK_CTREE_ROW(_node_) ((GtkCTreeRow *)(((GList *)(_node_))->data))

`GTK_CTREE_ROW` is deprecated and should not be used in newly-written code.

### GTK_CTREE_NODE()

    #define GTK_CTREE_NODE(_node_) ((GtkCTreeNode *)((_node_)))

`GTK_CTREE_NODE` is deprecated and should not be used in newly-written code.

### GTK_CTREE_NODE_NEXT()

    #define GTK_CTREE_NODE_NEXT(_nnode_) ((GtkCTreeNode *)(((GList *)(_nnode_))->next))

`GTK_CTREE_NODE_NEXT` is deprecated and should not be used in newly-written code.

### GTK_CTREE_NODE_PREV()

    #define GTK_CTREE_NODE_PREV(_pnode_) ((GtkCTreeNode *)(((GList *)(_pnode_))->prev))

`GTK_CTREE_NODE_PREV` is deprecated and should not be used in newly-written code.

### GTK_CTREE_FUNC()

    #define GTK_CTREE_FUNC(_func_) ((GtkCTreeFunc)(_func_))

`GTK_CTREE_FUNC` is deprecated and should not be used in newly-written code.

### GtkCTreeFunc ()

    void
    (*GtkCTreeFunc) (GtkCTree *ctree,
                     GtkCTreeNode *node,
                     gpointer data);

`GtkCTreeFunc` is deprecated and should not be used in newly-written code.

### GtkCTreeGNodeFunc ()

    gboolean
    (*GtkCTreeGNodeFunc) (GtkCTree *ctree,
                          guint depth,
                          GNode *gnode,
                          GtkCTreeNode *cnode,
                          gpointer data);

`GtkCTreeGNodeFunc` is deprecated and should not be used in newly-written code.

### GtkCTreeCompareDragFunc ()

    gboolean
    (*GtkCTreeCompareDragFunc) (GtkCTree *ctree,
                                GtkCTreeNode *source_node,
                                GtkCTreeNode *new_parent,
                                GtkCTreeNode *new_sibling);

`GtkCTreeCompareDragFunc` is deprecated and should not be used in newly-written code.

### gtk_ctree_new_with_titles ()

    GtkWidget *
    gtk_ctree_new_with_titles (gint columns,
                               gint tree_column,
                               gchar *titles[]);

`gtk_ctree_new_with_titles` is deprecated and should not be used in newly-written code.

### gtk_ctree_new ()

    GtkWidget *
    gtk_ctree_new (gint columns,
                   gint tree_column);

`gtk_ctree_new` is deprecated and should not be used in newly-written code.

### gtk_ctree_insert_node ()

    GtkCTreeNode *
    gtk_ctree_insert_node (GtkCTree *ctree,
                           GtkCTreeNode *parent,
                           GtkCTreeNode *sibling,
                           gchar *text[],
                           guint8 spacing,
                           GdkPixmap *pixmap_closed,
                           GdkBitmap *mask_closed,
                           GdkPixmap *pixmap_opened,
                           GdkBitmap *mask_opened,
                           gboolean is_leaf,
                           gboolean expanded);

`gtk_ctree_insert_node` is deprecated and should not be used in newly-written code.

#### Parameters

pixmap_closed | . | [allow-none]
mask_closed | . | [allow-none]
pixmap_opened | . | [allow-none]
mask_opened | . | [allow-none]

### gtk_ctree_remove_node ()

    void
    gtk_ctree_remove_node (GtkCTree *ctree,
                           GtkCTreeNode *node);

`gtk_ctree_remove_node` is deprecated and should not be used in newly-written code.

### gtk_ctree_insert_gnode ()

    GtkCTreeNode *
    gtk_ctree_insert_gnode (GtkCTree *ctree,
                            GtkCTreeNode *parent,
                            GtkCTreeNode *sibling,
                            GNode *gnode,
                            GtkCTreeGNodeFunc func,
                            gpointer data);

`gtk_ctree_insert_gnode` is deprecated and should not be used in newly-written code.

### gtk_ctree_export_to_gnode ()

    GNode *
    gtk_ctree_export_to_gnode (GtkCTree *ctree,
                               GNode *parent,
                               GNode *sibling,
                               GtkCTreeNode *node,
                               GtkCTreeGNodeFunc func,
                               gpointer data);

`gtk_ctree_export_to_gnode` is deprecated and should not be used in newly-written code.

### gtk_ctree_post_recursive ()

    void
    gtk_ctree_post_recursive (GtkCTree *ctree,
                              GtkCTreeNode *node,
                              GtkCTreeFunc func,
                              gpointer data);

`gtk_ctree_post_recursive` is deprecated and should not be used in newly-written code.

### gtk_ctree_post_recursive_to_depth ()

    void
    gtk_ctree_post_recursive_to_depth (GtkCTree *ctree,
                                       GtkCTreeNode *node,
                                       gint depth,
                                       GtkCTreeFunc func,
                                       gpointer data);

`gtk_ctree_post_recursive_to_depth` is deprecated and should not be used in newly-written code.

### gtk_ctree_pre_recursive ()

    void
    gtk_ctree_pre_recursive (GtkCTree *ctree,
                             GtkCTreeNode *node,
                             GtkCTreeFunc func,
                             gpointer data);

`gtk_ctree_pre_recursive` is deprecated and should not be used in newly-written code.

### gtk_ctree_pre_recursive_to_depth ()

    void
    gtk_ctree_pre_recursive_to_depth (GtkCTree *ctree,
                                      GtkCTreeNode *node,
                                      gint depth,
                                      GtkCTreeFunc func,
                                      gpointer data);

`gtk_ctree_pre_recursive_to_depth` is deprecated and should not be used in newly-written code.

### gtk_ctree_is_viewable ()

    gboolean
    gtk_ctree_is_viewable (GtkCTree *ctree,
                           GtkCTreeNode *node);

`gtk_ctree_is_viewable` is deprecated and should not be used in newly-written code.

### gtk_ctree_last ()

    GtkCTreeNode *
    gtk_ctree_last (GtkCTree *ctree,
                    GtkCTreeNode *node);

`gtk_ctree_last` is deprecated and should not be used in newly-written code.

### gtk_ctree_find_node_ptr ()

    GtkCTreeNode *
    gtk_ctree_find_node_ptr (GtkCTree *ctree,
                             GtkCTreeRow *ctree_row);

`gtk_ctree_find_node_ptr` is deprecated and should not be used in newly-written code.

### gtk_ctree_find ()

    gboolean
    gtk_ctree_find (GtkCTree *ctree,
                    GtkCTreeNode *node,
                    GtkCTreeNode *child);

`gtk_ctree_find` is deprecated and should not be used in newly-written code.

### gtk_ctree_is_ancestor ()

    gboolean
    gtk_ctree_is_ancestor (GtkCTree *ctree,
                           GtkCTreeNode *node,
                           GtkCTreeNode *child);

`gtk_ctree_is_ancestor` is deprecated and should not be used in newly-written code.

### gtk_ctree_find_by_row_data ()

    GtkCTreeNode *
    gtk_ctree_find_by_row_data (GtkCTree *ctree,
                                GtkCTreeNode *node,
                                gpointer data);

`gtk_ctree_find_by_row_data` is deprecated and should not be used in newly-written code.

### gtk_ctree_find_all_by_row_data ()

    GList *
    gtk_ctree_find_all_by_row_data (GtkCTree *ctree,
                                    GtkCTreeNode *node,
                                    gpointer data);

`gtk_ctree_find_all_by_row_data` is deprecated and should not be used in newly-written code.

### gtk_ctree_find_by_row_data_custom ()

    GtkCTreeNode *
    gtk_ctree_find_by_row_data_custom (GtkCTree *ctree,
                                       GtkCTreeNode *node,
                                       gpointer data,
                                       GCompareFunc func);

`gtk_ctree_find_by_row_data_custom` is deprecated and should not be used in newly-written code.

### gtk_ctree_find_all_by_row_data_custom ()

    GList *
    gtk_ctree_find_all_by_row_data_custom (GtkCTree *ctree,
                                           GtkCTreeNode *node,
                                           gpointer data,
                                           GCompareFunc func);

`gtk_ctree_find_all_by_row_data_custom` is deprecated and should not be used in newly-written code.

### gtk_ctree_is_hot_spot ()

    gboolean
    gtk_ctree_is_hot_spot (GtkCTree *ctree,
                           gint x,
                           gint y);

`gtk_ctree_is_hot_spot` is deprecated and should not be used in newly-written code.

### gtk_ctree_move ()

    void
    gtk_ctree_move (GtkCTree *ctree,
                    GtkCTreeNode *node,
                    GtkCTreeNode *new_parent,
                    GtkCTreeNode *new_sibling);

`gtk_ctree_move` is deprecated and should not be used in newly-written code.

#### Parameters

new_parent | . | [allow-none]
new_sibling | . | [allow-none]

### gtk_ctree_expand ()

    void
    gtk_ctree_expand (GtkCTree *ctree,
                      GtkCTreeNode *node);

`gtk_ctree_expand` is deprecated and should not be used in newly-written code.

### gtk_ctree_expand_recursive ()

    void
    gtk_ctree_expand_recursive (GtkCTree *ctree,
                                GtkCTreeNode *node);

`gtk_ctree_expand_recursive` is deprecated and should not be used in newly-written code.

### gtk_ctree_expand_to_depth ()

    void
    gtk_ctree_expand_to_depth (GtkCTree *ctree,
                               GtkCTreeNode *node,
                               gint depth);

`gtk_ctree_expand_to_depth` is deprecated and should not be used in newly-written code.

### gtk_ctree_collapse ()

    void
    gtk_ctree_collapse (GtkCTree *ctree,
                        GtkCTreeNode *node);

`gtk_ctree_collapse` is deprecated and should not be used in newly-written code.

### gtk_ctree_collapse_recursive ()

    void
    gtk_ctree_collapse_recursive (GtkCTree *ctree,
                                  GtkCTreeNode *node);

`gtk_ctree_collapse_recursive` is deprecated and should not be used in newly-written code.

### gtk_ctree_collapse_to_depth ()

    void
    gtk_ctree_collapse_to_depth (GtkCTree *ctree,
                                 GtkCTreeNode *node,
                                 gint depth);

`gtk_ctree_collapse_to_depth` is deprecated and should not be used in newly-written code.

### gtk_ctree_toggle_expansion ()

    void
    gtk_ctree_toggle_expansion (GtkCTree *ctree,
                                GtkCTreeNode *node);

`gtk_ctree_toggle_expansion` is deprecated and should not be used in newly-written code.

### gtk_ctree_toggle_expansion_recursive ()

    void
    gtk_ctree_toggle_expansion_recursive (GtkCTree *ctree,
                                          GtkCTreeNode *node);

`gtk_ctree_toggle_expansion_recursive` is deprecated and should not be used in newly-written code.

### gtk_ctree_select ()

    void
    gtk_ctree_select (GtkCTree *ctree,
                      GtkCTreeNode *node);

`gtk_ctree_select` is deprecated and should not be used in newly-written code.

### gtk_ctree_select_recursive ()

    void
    gtk_ctree_select_recursive (GtkCTree *ctree,
                                GtkCTreeNode *node);

`gtk_ctree_select_recursive` is deprecated and should not be used in newly-written code.

### gtk_ctree_unselect ()

    void
    gtk_ctree_unselect (GtkCTree *ctree,
                        GtkCTreeNode *node);

`gtk_ctree_unselect` is deprecated and should not be used in newly-written code.

### gtk_ctree_unselect_recursive ()

    void
    gtk_ctree_unselect_recursive (GtkCTree *ctree,
                                  GtkCTreeNode *node);

`gtk_ctree_unselect_recursive` is deprecated and should not be used in newly-written code.

### gtk_ctree_real_select_recursive ()

    void
    gtk_ctree_real_select_recursive (GtkCTree *ctree,
                                     GtkCTreeNode *node,
                                     gint state);

`gtk_ctree_real_select_recursive` is deprecated and should not be used in newly-written code.

### gtk_ctree_node_set_text ()

    void
    gtk_ctree_node_set_text (GtkCTree *ctree,
                             GtkCTreeNode *node,
                             gint column,
                             const gchar *text);

`gtk_ctree_node_set_text` is deprecated and should not be used in newly-written code.

### gtk_ctree_node_set_pixmap ()

    void
    gtk_ctree_node_set_pixmap (GtkCTree *ctree,
                               GtkCTreeNode *node,
                               gint column,
                               GdkPixmap *pixmap,
                               GdkBitmap *mask);

`gtk_ctree_node_set_pixmap` is deprecated and should not be used in newly-written code.

#### Parameters

mask | . | [allow-none]

### gtk_ctree_node_set_pixtext ()

    void
    gtk_ctree_node_set_pixtext (GtkCTree *ctree,
                                GtkCTreeNode *node,
                                gint column,
                                const gchar *text,
                                guint8 spacing,
                                GdkPixmap *pixmap,
                                GdkBitmap *mask);

`gtk_ctree_node_set_pixtext` is deprecated and should not be used in newly-written code.

#### Parameters

mask | . | [allow-none]

### gtk_ctree_set_node_info ()

    void
    gtk_ctree_set_node_info (GtkCTree *ctree,
                             GtkCTreeNode *node,
                             const gchar *text,
                             guint8 spacing,
                             GdkPixmap *pixmap_closed,
                             GdkBitmap *mask_closed,
                             GdkPixmap *pixmap_opened,
                             GdkBitmap *mask_opened,
                             gboolean is_leaf,
                             gboolean expanded);

`gtk_ctree_set_node_info` is deprecated and should not be used in newly-written code.

#### Parameters

pixmap_closed | . | [allow-none]
mask_closed | . | [allow-none]
pixmap_opened | . | [allow-none]
mask_opened | . | [allow-none]

### gtk_ctree_node_set_shift ()

    void
    gtk_ctree_node_set_shift (GtkCTree *ctree,
                              GtkCTreeNode *node,
                              gint column,
                              gint vertical,
                              gint horizontal);

`gtk_ctree_node_set_shift` is deprecated and should not be used in newly-written code.

### gtk_ctree_node_set_selectable ()

    void
    gtk_ctree_node_set_selectable (GtkCTree *ctree,
                                   GtkCTreeNode *node,
                                   gboolean selectable);

`gtk_ctree_node_set_selectable` is deprecated and should not be used in newly-written code.

### gtk_ctree_node_get_selectable ()

    gboolean
    gtk_ctree_node_get_selectable (GtkCTree *ctree,
                                   GtkCTreeNode *node);

`gtk_ctree_node_get_selectable` is deprecated and should not be used in newly-written code.

### gtk_ctree_node_get_cell_type ()

    GtkCellType
    gtk_ctree_node_get_cell_type (GtkCTree *ctree,
                                  GtkCTreeNode *node,
                                  gint column);

`gtk_ctree_node_get_cell_type` is deprecated and should not be used in newly-written code.

### gtk_ctree_node_get_text ()

    gboolean
    gtk_ctree_node_get_text (GtkCTree *ctree,
                             GtkCTreeNode *node,
                             gint column,
                             gchar **text);

`gtk_ctree_node_get_text` is deprecated and should not be used in newly-written code.

### gtk_ctree_node_get_pixmap ()

    gboolean
    gtk_ctree_node_get_pixmap (GtkCTree *ctree,
                               GtkCTreeNode *node,
                               gint column,
                               GdkPixmap **pixmap,
                               GdkBitmap **mask);

`gtk_ctree_node_get_pixmap` is deprecated and should not be used in newly-written code.

### gtk_ctree_node_get_pixtext ()

    gboolean
    gtk_ctree_node_get_pixtext (GtkCTree *ctree,
                                GtkCTreeNode *node,
                                gint column,
                                gchar **text,
                                guint8 *spacing,
                                GdkPixmap **pixmap,
                                GdkBitmap **mask);

`gtk_ctree_node_get_pixtext` is deprecated and should not be used in newly-written code.

### gtk_ctree_get_node_info ()

    gboolean
    gtk_ctree_get_node_info (GtkCTree *ctree,
                             GtkCTreeNode *node,
                             gchar **text,
                             guint8 *spacing,
                             GdkPixmap **pixmap_closed,
                             GdkBitmap **mask_closed,
                             GdkPixmap **pixmap_opened,
                             GdkBitmap **mask_opened,
                             gboolean *is_leaf,
                             gboolean *expanded);

`gtk_ctree_get_node_info` is deprecated and should not be used in newly-written code.

### gtk_ctree_node_set_row_style ()

    void
    gtk_ctree_node_set_row_style (GtkCTree *ctree,
                                  GtkCTreeNode *node,
                                  GtkStyle *style);

`gtk_ctree_node_set_row_style` is deprecated and should not be used in newly-written code.

### gtk_ctree_node_get_row_style ()

    GtkStyle *
    gtk_ctree_node_get_row_style (GtkCTree *ctree,
                                  GtkCTreeNode *node);

`gtk_ctree_node_get_row_style` is deprecated and should not be used in newly-written code.

### gtk_ctree_node_set_cell_style ()

    void
    gtk_ctree_node_set_cell_style (GtkCTree *ctree,
                                   GtkCTreeNode *node,
                                   gint column,
                                   GtkStyle *style);

`gtk_ctree_node_set_cell_style` is deprecated and should not be used in newly-written code.

### gtk_ctree_node_get_cell_style ()

    GtkStyle *
    gtk_ctree_node_get_cell_style (GtkCTree *ctree,
                                   GtkCTreeNode *node,
                                   gint column);

`gtk_ctree_node_get_cell_style` is deprecated and should not be used in newly-written code.

### gtk_ctree_node_set_foreground ()

    void
    gtk_ctree_node_set_foreground (GtkCTree *ctree,
                                   GtkCTreeNode *node,
                                   const GdkColor *color);

`gtk_ctree_node_set_foreground` is deprecated and should not be used in newly-written code.

### gtk_ctree_node_set_background ()

    void
    gtk_ctree_node_set_background (GtkCTree *ctree,
                                   GtkCTreeNode *node,
                                   const GdkColor *color);

`gtk_ctree_node_set_background` is deprecated and should not be used in newly-written code.

### gtk_ctree_node_set_row_data ()

    void
    gtk_ctree_node_set_row_data (GtkCTree *ctree,
                                 GtkCTreeNode *node,
                                 gpointer data);

`gtk_ctree_node_set_row_data` is deprecated and should not be used in newly-written code.

### gtk_ctree_node_set_row_data_full ()

    void
    gtk_ctree_node_set_row_data_full (GtkCTree *ctree,
                                      GtkCTreeNode *node,
                                      gpointer data,
                                      GDestroyNotify destroy);

`gtk_ctree_node_set_row_data_full` is deprecated and should not be used in newly-written code.

### gtk_ctree_node_get_row_data ()

    gpointer
    gtk_ctree_node_get_row_data (GtkCTree *ctree,
                                 GtkCTreeNode *node);

`gtk_ctree_node_get_row_data` is deprecated and should not be used in newly-written code.

### gtk_ctree_node_moveto ()

    void
    gtk_ctree_node_moveto (GtkCTree *ctree,
                           GtkCTreeNode *node,
                           gint column,
                           gfloat row_align,
                           gfloat col_align);

`gtk_ctree_node_moveto` is deprecated and should not be used in newly-written code.

### gtk_ctree_node_is_visible ()

    GtkVisibility
    gtk_ctree_node_is_visible (GtkCTree *ctree,
                               GtkCTreeNode *node);

`gtk_ctree_node_is_visible` is deprecated and should not be used in newly-written code.

### gtk_ctree_set_indent ()

    void
    gtk_ctree_set_indent (GtkCTree *ctree,
                          gint indent);

`gtk_ctree_set_indent` is deprecated and should not be used in newly-written code.

### gtk_ctree_set_spacing ()

    void
    gtk_ctree_set_spacing (GtkCTree *ctree,
                           gint spacing);

`gtk_ctree_set_spacing` is deprecated and should not be used in newly-written code.

### gtk_ctree_set_reorderable()

    #define gtk_ctree_set_reorderable(t,r)                    gtk_clist_set_reorderable((GtkCList*) (t),(r))

`gtk_ctree_set_reorderable` is deprecated and should not be used in newly-written code.

### gtk_ctree_set_line_style ()

    void
    gtk_ctree_set_line_style (GtkCTree *ctree,
                              GtkCTreeLineStyle line_style);

`gtk_ctree_set_line_style` is deprecated and should not be used in newly-written code.

### gtk_ctree_set_expander_style ()

    void
    gtk_ctree_set_expander_style (GtkCTree *ctree,
                                  GtkCTreeExpanderStyle expander_style);

`gtk_ctree_set_expander_style` is deprecated and should not be used in newly-written code.

### gtk_ctree_set_drag_compare_func ()

    void
    gtk_ctree_set_drag_compare_func (GtkCTree *ctree,
                                     GtkCTreeCompareDragFunc cmp_func);

`gtk_ctree_set_drag_compare_func` is deprecated and should not be used in newly-written code.

### gtk_ctree_sort_node ()

    void
    gtk_ctree_sort_node (GtkCTree *ctree,
                         GtkCTreeNode *node);

`gtk_ctree_sort_node` is deprecated and should not be used in newly-written code.

### gtk_ctree_sort_recursive ()

    void
    gtk_ctree_sort_recursive (GtkCTree *ctree,
                              GtkCTreeNode *node);

`gtk_ctree_sort_recursive` is deprecated and should not be used in newly-written code.

### gtk_ctree_node_nth ()

    GtkCTreeNode *
    gtk_ctree_node_nth (GtkCTree *ctree,
                        guint row);

`gtk_ctree_node_nth` is deprecated and should not be used in newly-written code.

### gtk_ctree_set_show_stub ()

    void
    gtk_ctree_set_show_stub (GtkCTree *ctree,
                             gboolean show_stub);

`gtk_ctree_set_show_stub` is deprecated and should not be used in newly-written code.

## Types and Values

### struct GtkCTree

    struct GtkCTree;

`GtkCTree` is deprecated and should not be used in newly-written code.

### enum GtkCTreePos

`GtkCTreePos` is deprecated and should not be used in newly-written code.

#### Members

GTK_CTREE_POS_BEFORE |  |
GTK_CTREE_POS_AS_CHILD |  |
GTK_CTREE_POS_AFTER |  |

### enum GtkCTreeLineStyle

`GtkCTreeLineStyle` is deprecated and should not be used in newly-written code.

#### Members

GTK_CTREE_LINES_NONE |  |
GTK_CTREE_LINES_SOLID |  |
GTK_CTREE_LINES_DOTTED |  |
GTK_CTREE_LINES_TABBED |  |

### enum GtkCTreeExpanderStyle

`GtkCTreeExpanderStyle` is deprecated and should not be used in newly-written code.

#### Members

GTK_CTREE_EXPANDER_NONE |  |
GTK_CTREE_EXPANDER_SQUARE |  |
GTK_CTREE_EXPANDER_TRIANGLE |  |
GTK_CTREE_EXPANDER_CIRCULAR |  |

### enum GtkCTreeExpansionType

`GtkCTreeExpansionType` is deprecated and should not be used in newly-written code.

#### Members

GTK_CTREE_EXPANSION_EXPAND |  |
GTK_CTREE_EXPANSION_EXPAND_RECURSIVE |  |
GTK_CTREE_EXPANSION_COLLAPSE |  |
GTK_CTREE_EXPANSION_COLLAPSE_RECURSIVE |  |
GTK_CTREE_EXPANSION_TOGGLE |  |
GTK_CTREE_EXPANSION_TOGGLE_RECURSIVE |  |

### struct GtkCTreeRow

    struct GtkCTreeRow {
      GtkCListRow row;

      GtkCTreeNode *parent;
      GtkCTreeNode *sibling;
      GtkCTreeNode *children;

      GdkPixmap *pixmap_closed;
      GdkBitmap *mask_closed;
      GdkPixmap *pixmap_opened;
      GdkBitmap *mask_opened;

      guint16 level;

      guint is_leaf  : 1;
      guint expanded : 1;
    };

`GtkCTreeRow` is deprecated and should not be used in newly-written code.

### struct GtkCTreeNode

    struct GtkCTreeNode {
      GList list;
    };

`GtkCTreeNode` is deprecated and should not be used in newly-written code.

### GTK_TYPE_CTREE_NODE

    #define GTK_TYPE_CTREE_NODE (gtk_ctree_node_get_type ())

`GTK_TYPE_CTREE_NODE` is deprecated and should not be used in newly-written code.

## Property Details

### The `“expander-style”` property

      “expander-style”           GtkCTreeExpanderStyle

Flags: Read / Write

Default value: GTK_CTREE_EXPANDER_NONE

### The `“indent”` property

      “indent”                   guint

Flags: Read / Write

Default value: 0

### The `“line-style”` property

      “line-style”               GtkCTreeLineStyle

Flags: Read / Write

Default value: GTK_CTREE_LINES_NONE

### The `“n-columns”` property

      “n-columns”                guint

Flags: Read / Write / Construct Only

Default value: 0

### The `“show-stub”` property

      “show-stub”                gboolean

Flags: Read / Write

Default value: FALSE

### The `“spacing”` property

      “spacing”                  guint

Flags: Read / Write

Default value: 0

### The `“tree-column”` property

      “tree-column”              guint

Flags: Read / Write / Construct Only

Default value: 0

## Signal Details

### The `“change-focus-row-expansion”` signal

    void
    user_function (GtkCTree             *ctree,
                   GtkCTreeExpansionType arg1,
                   gpointer              user_data)

Flags: Action

### The `“tree-collapse”` signal

    void
    user_function (GtkCTree     *ctree,
                   GtkCTreeNode *arg1,
                   gpointer      user_data)

Flags: Run Last

### The `“tree-expand”` signal

    void
    user_function (GtkCTree     *ctree,
                   GtkCTreeNode *arg1,
                   gpointer      user_data)

Flags: Run Last

### The `“tree-move”` signal

    void
    user_function (GtkCTree     *ctree,
                   GtkCTreeNode *arg1,
                   GtkCTreeNode *arg2,
                   GtkCTreeNode *arg3,
                   gpointer      user_data)

Flags: Run Last

### The `“tree-select-row”` signal

    void
    user_function (GtkCTree     *ctree,
                   GtkCTreeNode *arg1,
                   gint          arg2,
                   gpointer      user_data)

Flags: Run First

### The `“tree-unselect-row”` signal

    void
    user_function (GtkCTree     *ctree,
                   GtkCTreeNode *arg1,
                   gint          arg2,
                   gpointer      user_data)

Flags: Run First