Blame gtk/gtkctree.h

Packit Service fb6fa5
/* GTK - The GIMP Toolkit
Packit Service fb6fa5
 * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball, Josh MacDonald
Packit Service fb6fa5
 * Copyright (C) 1997-1998 Jay Painter <jpaint@serv.net><jpaint@gimp.org>
Packit Service fb6fa5
 *
Packit Service fb6fa5
 * GtkCTree widget for GTK+
Packit Service fb6fa5
 * Copyright (C) 1998 Lars Hamann and Stefan Jeske
Packit Service fb6fa5
 *
Packit Service fb6fa5
 * This library is free software; you can redistribute it and/or
Packit Service fb6fa5
 * modify it under the terms of the GNU Lesser General Public
Packit Service fb6fa5
 * License as published by the Free Software Foundation; either
Packit Service fb6fa5
 * version 2 of the License, or (at your option) any later version.
Packit Service fb6fa5
 *
Packit Service fb6fa5
 * This library is distributed in the hope that it will be useful,
Packit Service fb6fa5
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
Packit Service fb6fa5
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
Packit Service fb6fa5
 * Lesser General Public License for more details.
Packit Service fb6fa5
 *
Packit Service fb6fa5
 * You should have received a copy of the GNU Lesser General Public
Packit Service fb6fa5
 * License along with this library; if not, write to the
Packit Service fb6fa5
 * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
Packit Service fb6fa5
 * Boston, MA 02111-1307, USA.
Packit Service fb6fa5
 */
Packit Service fb6fa5
Packit Service fb6fa5
/*
Packit Service fb6fa5
 * Modified by the GTK+ Team and others 1997-2000.  See the AUTHORS
Packit Service fb6fa5
 * file for a list of people on the GTK+ Team.  See the ChangeLog
Packit Service fb6fa5
 * files for a list of changes.  These files are distributed with
Packit Service fb6fa5
 * GTK+ at ftp://ftp.gtk.org/pub/gtk/.
Packit Service fb6fa5
 */
Packit Service fb6fa5
Packit Service fb6fa5
#if !defined (GTK_DISABLE_DEPRECATED) || defined (__GTK_CLIST_C__) || defined (__GTK_CTREE_C__)
Packit Service fb6fa5
Packit Service fb6fa5
#ifndef __GTK_CTREE_H__
Packit Service fb6fa5
#define __GTK_CTREE_H__
Packit Service fb6fa5
Packit Service fb6fa5
#include <gtk/gtkclist.h>
Packit Service fb6fa5
Packit Service fb6fa5
G_BEGIN_DECLS
Packit Service fb6fa5
Packit Service fb6fa5
#define GTK_TYPE_CTREE            (gtk_ctree_get_type ())
Packit Service fb6fa5
#define GTK_CTREE(obj)            (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_CTREE, GtkCTree))
Packit Service fb6fa5
#define GTK_CTREE_CLASS(klass)    (G_TYPE_CHECK_CLASS_CAST ((klass), GTK_TYPE_CTREE, GtkCTreeClass))
Packit Service fb6fa5
#define GTK_IS_CTREE(obj)         (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GTK_TYPE_CTREE))
Packit Service fb6fa5
#define GTK_IS_CTREE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GTK_TYPE_CTREE))
Packit Service fb6fa5
#define GTK_CTREE_GET_CLASS(obj)  (G_TYPE_INSTANCE_GET_CLASS ((obj), GTK_TYPE_CTREE, GtkCTreeClass))
Packit Service fb6fa5
Packit Service fb6fa5
#define GTK_CTREE_ROW(_node_) ((GtkCTreeRow *)(((GList *)(_node_))->data))
Packit Service fb6fa5
#define GTK_CTREE_NODE(_node_) ((GtkCTreeNode *)((_node_)))
Packit Service fb6fa5
#define GTK_CTREE_NODE_NEXT(_nnode_) ((GtkCTreeNode *)(((GList *)(_nnode_))->next))
Packit Service fb6fa5
#define GTK_CTREE_NODE_PREV(_pnode_) ((GtkCTreeNode *)(((GList *)(_pnode_))->prev))
Packit Service fb6fa5
#define GTK_CTREE_FUNC(_func_) ((GtkCTreeFunc)(_func_))
Packit Service fb6fa5
Packit Service fb6fa5
#define GTK_TYPE_CTREE_NODE (gtk_ctree_node_get_type ())
Packit Service fb6fa5
Packit Service fb6fa5
typedef enum
Packit Service fb6fa5
{
Packit Service fb6fa5
  GTK_CTREE_POS_BEFORE,
Packit Service fb6fa5
  GTK_CTREE_POS_AS_CHILD,
Packit Service fb6fa5
  GTK_CTREE_POS_AFTER
Packit Service fb6fa5
} GtkCTreePos;
Packit Service fb6fa5
Packit Service fb6fa5
typedef enum
Packit Service fb6fa5
{
Packit Service fb6fa5
  GTK_CTREE_LINES_NONE,
Packit Service fb6fa5
  GTK_CTREE_LINES_SOLID,
Packit Service fb6fa5
  GTK_CTREE_LINES_DOTTED,
Packit Service fb6fa5
  GTK_CTREE_LINES_TABBED
Packit Service fb6fa5
} GtkCTreeLineStyle;
Packit Service fb6fa5
Packit Service fb6fa5
typedef enum
Packit Service fb6fa5
{
Packit Service fb6fa5
  GTK_CTREE_EXPANDER_NONE,
Packit Service fb6fa5
  GTK_CTREE_EXPANDER_SQUARE,
Packit Service fb6fa5
  GTK_CTREE_EXPANDER_TRIANGLE,
Packit Service fb6fa5
  GTK_CTREE_EXPANDER_CIRCULAR
Packit Service fb6fa5
} GtkCTreeExpanderStyle;
Packit Service fb6fa5
Packit Service fb6fa5
typedef enum
Packit Service fb6fa5
{
Packit Service fb6fa5
  GTK_CTREE_EXPANSION_EXPAND,
Packit Service fb6fa5
  GTK_CTREE_EXPANSION_EXPAND_RECURSIVE,
Packit Service fb6fa5
  GTK_CTREE_EXPANSION_COLLAPSE,
Packit Service fb6fa5
  GTK_CTREE_EXPANSION_COLLAPSE_RECURSIVE,
Packit Service fb6fa5
  GTK_CTREE_EXPANSION_TOGGLE,
Packit Service fb6fa5
  GTK_CTREE_EXPANSION_TOGGLE_RECURSIVE
Packit Service fb6fa5
} GtkCTreeExpansionType;
Packit Service fb6fa5
Packit Service fb6fa5
typedef struct _GtkCTree      GtkCTree;
Packit Service fb6fa5
typedef struct _GtkCTreeClass GtkCTreeClass;
Packit Service fb6fa5
typedef struct _GtkCTreeRow   GtkCTreeRow;
Packit Service fb6fa5
typedef struct _GtkCTreeNode  GtkCTreeNode;
Packit Service fb6fa5
Packit Service fb6fa5
typedef void (*GtkCTreeFunc) (GtkCTree     *ctree,
Packit Service fb6fa5
			      GtkCTreeNode *node,
Packit Service fb6fa5
			      gpointer      data);
Packit Service fb6fa5
Packit Service fb6fa5
typedef gboolean (*GtkCTreeGNodeFunc) (GtkCTree     *ctree,
Packit Service fb6fa5
                                       guint         depth,
Packit Service fb6fa5
                                       GNode        *gnode,
Packit Service fb6fa5
				       GtkCTreeNode *cnode,
Packit Service fb6fa5
                                       gpointer      data);
Packit Service fb6fa5
Packit Service fb6fa5
typedef gboolean (*GtkCTreeCompareDragFunc) (GtkCTree     *ctree,
Packit Service fb6fa5
                                             GtkCTreeNode *source_node,
Packit Service fb6fa5
                                             GtkCTreeNode *new_parent,
Packit Service fb6fa5
                                             GtkCTreeNode *new_sibling);
Packit Service fb6fa5
Packit Service fb6fa5
struct _GtkCTree
Packit Service fb6fa5
{
Packit Service fb6fa5
  GtkCList clist;
Packit Service fb6fa5
  
Packit Service fb6fa5
  GdkGC *lines_gc;
Packit Service fb6fa5
  
Packit Service fb6fa5
  gint tree_indent;
Packit Service fb6fa5
  gint tree_spacing;
Packit Service fb6fa5
  gint tree_column;
Packit Service fb6fa5
Packit Service fb6fa5
  guint line_style     : 2;
Packit Service fb6fa5
  guint expander_style : 2;
Packit Service fb6fa5
  guint show_stub      : 1;
Packit Service fb6fa5
Packit Service fb6fa5
  GtkCTreeCompareDragFunc drag_compare;
Packit Service fb6fa5
};
Packit Service fb6fa5
Packit Service fb6fa5
struct _GtkCTreeClass
Packit Service fb6fa5
{
Packit Service fb6fa5
  GtkCListClass parent_class;
Packit Service fb6fa5
  
Packit Service fb6fa5
  void (*tree_select_row)   (GtkCTree     *ctree,
Packit Service fb6fa5
			     GtkCTreeNode *row,
Packit Service fb6fa5
			     gint          column);
Packit Service fb6fa5
  void (*tree_unselect_row) (GtkCTree     *ctree,
Packit Service fb6fa5
			     GtkCTreeNode *row,
Packit Service fb6fa5
			     gint          column);
Packit Service fb6fa5
  void (*tree_expand)       (GtkCTree     *ctree,
Packit Service fb6fa5
			     GtkCTreeNode *node);
Packit Service fb6fa5
  void (*tree_collapse)     (GtkCTree     *ctree,
Packit Service fb6fa5
			     GtkCTreeNode *node);
Packit Service fb6fa5
  void (*tree_move)         (GtkCTree     *ctree,
Packit Service fb6fa5
			     GtkCTreeNode *node,
Packit Service fb6fa5
			     GtkCTreeNode *new_parent,
Packit Service fb6fa5
			     GtkCTreeNode *new_sibling);
Packit Service fb6fa5
  void (*change_focus_row_expansion) (GtkCTree *ctree,
Packit Service fb6fa5
				      GtkCTreeExpansionType action);
Packit Service fb6fa5
};
Packit Service fb6fa5
Packit Service fb6fa5
struct _GtkCTreeRow
Packit Service fb6fa5
{
Packit Service fb6fa5
  GtkCListRow row;
Packit Service fb6fa5
  
Packit Service fb6fa5
  GtkCTreeNode *parent;
Packit Service fb6fa5
  GtkCTreeNode *sibling;
Packit Service fb6fa5
  GtkCTreeNode *children;
Packit Service fb6fa5
  
Packit Service fb6fa5
  GdkPixmap *pixmap_closed;
Packit Service fb6fa5
  GdkBitmap *mask_closed;
Packit Service fb6fa5
  GdkPixmap *pixmap_opened;
Packit Service fb6fa5
  GdkBitmap *mask_opened;
Packit Service fb6fa5
  
Packit Service fb6fa5
  guint16 level;
Packit Service fb6fa5
  
Packit Service fb6fa5
  guint is_leaf  : 1;
Packit Service fb6fa5
  guint expanded : 1;
Packit Service fb6fa5
};
Packit Service fb6fa5
Packit Service fb6fa5
struct _GtkCTreeNode {
Packit Service fb6fa5
  GList list;
Packit Service fb6fa5
};
Packit Service fb6fa5
Packit Service fb6fa5
Packit Service fb6fa5
/***********************************************************
Packit Service fb6fa5
 *           Creation, insertion, deletion                 *
Packit Service fb6fa5
 ***********************************************************/
Packit Service fb6fa5
Packit Service fb6fa5
GType   gtk_ctree_get_type                       (void) G_GNUC_CONST;
Packit Service fb6fa5
GtkWidget * gtk_ctree_new_with_titles            (gint          columns, 
Packit Service fb6fa5
						  gint          tree_column,
Packit Service fb6fa5
						  gchar        *titles[]);
Packit Service fb6fa5
GtkWidget * gtk_ctree_new                        (gint          columns, 
Packit Service fb6fa5
						  gint          tree_column);
Packit Service fb6fa5
GtkCTreeNode * gtk_ctree_insert_node             (GtkCTree     *ctree,
Packit Service fb6fa5
						  GtkCTreeNode *parent, 
Packit Service fb6fa5
						  GtkCTreeNode *sibling,
Packit Service fb6fa5
						  gchar        *text[],
Packit Service fb6fa5
						  guint8        spacing,
Packit Service fb6fa5
						  GdkPixmap    *pixmap_closed,
Packit Service fb6fa5
						  GdkBitmap    *mask_closed,
Packit Service fb6fa5
						  GdkPixmap    *pixmap_opened,
Packit Service fb6fa5
						  GdkBitmap    *mask_opened,
Packit Service fb6fa5
						  gboolean      is_leaf,
Packit Service fb6fa5
						  gboolean      expanded);
Packit Service fb6fa5
void gtk_ctree_remove_node                       (GtkCTree     *ctree, 
Packit Service fb6fa5
						  GtkCTreeNode *node);
Packit Service fb6fa5
GtkCTreeNode * gtk_ctree_insert_gnode            (GtkCTree          *ctree,
Packit Service fb6fa5
						  GtkCTreeNode      *parent,
Packit Service fb6fa5
						  GtkCTreeNode      *sibling,
Packit Service fb6fa5
						  GNode             *gnode,
Packit Service fb6fa5
						  GtkCTreeGNodeFunc  func,
Packit Service fb6fa5
						  gpointer           data);
Packit Service fb6fa5
GNode * gtk_ctree_export_to_gnode                (GtkCTree          *ctree,
Packit Service fb6fa5
						  GNode             *parent,
Packit Service fb6fa5
						  GNode             *sibling,
Packit Service fb6fa5
						  GtkCTreeNode      *node,
Packit Service fb6fa5
						  GtkCTreeGNodeFunc  func,
Packit Service fb6fa5
						  gpointer           data);
Packit Service fb6fa5
Packit Service fb6fa5
/***********************************************************
Packit Service fb6fa5
 *  Generic recursive functions, querying / finding tree   *
Packit Service fb6fa5
 *  information                                            *
Packit Service fb6fa5
 ***********************************************************/
Packit Service fb6fa5
Packit Service fb6fa5
void gtk_ctree_post_recursive                    (GtkCTree     *ctree, 
Packit Service fb6fa5
						  GtkCTreeNode *node,
Packit Service fb6fa5
						  GtkCTreeFunc  func,
Packit Service fb6fa5
						  gpointer      data);
Packit Service fb6fa5
void gtk_ctree_post_recursive_to_depth           (GtkCTree     *ctree, 
Packit Service fb6fa5
						  GtkCTreeNode *node,
Packit Service fb6fa5
						  gint          depth,
Packit Service fb6fa5
						  GtkCTreeFunc  func,
Packit Service fb6fa5
						  gpointer      data);
Packit Service fb6fa5
void gtk_ctree_pre_recursive                     (GtkCTree     *ctree, 
Packit Service fb6fa5
						  GtkCTreeNode *node,
Packit Service fb6fa5
						  GtkCTreeFunc  func,
Packit Service fb6fa5
						  gpointer      data);
Packit Service fb6fa5
void gtk_ctree_pre_recursive_to_depth            (GtkCTree     *ctree, 
Packit Service fb6fa5
						  GtkCTreeNode *node,
Packit Service fb6fa5
						  gint          depth,
Packit Service fb6fa5
						  GtkCTreeFunc  func,
Packit Service fb6fa5
						  gpointer      data);
Packit Service fb6fa5
gboolean gtk_ctree_is_viewable                   (GtkCTree     *ctree, 
Packit Service fb6fa5
					          GtkCTreeNode *node);
Packit Service fb6fa5
GtkCTreeNode * gtk_ctree_last                    (GtkCTree     *ctree,
Packit Service fb6fa5
					          GtkCTreeNode *node);
Packit Service fb6fa5
GtkCTreeNode * gtk_ctree_find_node_ptr           (GtkCTree     *ctree,
Packit Service fb6fa5
					          GtkCTreeRow  *ctree_row);
Packit Service fb6fa5
GtkCTreeNode * gtk_ctree_node_nth                (GtkCTree     *ctree,
Packit Service fb6fa5
						  guint         row);
Packit Service fb6fa5
gboolean gtk_ctree_find                          (GtkCTree     *ctree,
Packit Service fb6fa5
					          GtkCTreeNode *node,
Packit Service fb6fa5
					          GtkCTreeNode *child);
Packit Service fb6fa5
gboolean gtk_ctree_is_ancestor                   (GtkCTree     *ctree,
Packit Service fb6fa5
					          GtkCTreeNode *node,
Packit Service fb6fa5
					          GtkCTreeNode *child);
Packit Service fb6fa5
GtkCTreeNode * gtk_ctree_find_by_row_data        (GtkCTree     *ctree,
Packit Service fb6fa5
					          GtkCTreeNode *node,
Packit Service fb6fa5
					          gpointer      data);
Packit Service fb6fa5
/* returns a GList of all GtkCTreeNodes with row->data == data. */
Packit Service fb6fa5
GList * gtk_ctree_find_all_by_row_data           (GtkCTree     *ctree,
Packit Service fb6fa5
						  GtkCTreeNode *node,
Packit Service fb6fa5
						  gpointer      data);
Packit Service fb6fa5
GtkCTreeNode * gtk_ctree_find_by_row_data_custom (GtkCTree     *ctree,
Packit Service fb6fa5
						  GtkCTreeNode *node,
Packit Service fb6fa5
						  gpointer      data,
Packit Service fb6fa5
						  GCompareFunc  func);
Packit Service fb6fa5
/* returns a GList of all GtkCTreeNodes with row->data == data. */
Packit Service fb6fa5
GList * gtk_ctree_find_all_by_row_data_custom    (GtkCTree     *ctree,
Packit Service fb6fa5
						  GtkCTreeNode *node,
Packit Service fb6fa5
						  gpointer      data,
Packit Service fb6fa5
						  GCompareFunc  func);
Packit Service fb6fa5
gboolean gtk_ctree_is_hot_spot                   (GtkCTree     *ctree,
Packit Service fb6fa5
					          gint          x,
Packit Service fb6fa5
					          gint          y);
Packit Service fb6fa5
Packit Service fb6fa5
/***********************************************************
Packit Service fb6fa5
 *   Tree signals : move, expand, collapse, (un)select     *
Packit Service fb6fa5
 ***********************************************************/
Packit Service fb6fa5
Packit Service fb6fa5
void gtk_ctree_move                              (GtkCTree     *ctree,
Packit Service fb6fa5
						  GtkCTreeNode *node,
Packit Service fb6fa5
						  GtkCTreeNode *new_parent, 
Packit Service fb6fa5
						  GtkCTreeNode *new_sibling);
Packit Service fb6fa5
void gtk_ctree_expand                            (GtkCTree     *ctree,
Packit Service fb6fa5
						  GtkCTreeNode *node);
Packit Service fb6fa5
void gtk_ctree_expand_recursive                  (GtkCTree     *ctree,
Packit Service fb6fa5
						  GtkCTreeNode *node);
Packit Service fb6fa5
void gtk_ctree_expand_to_depth                   (GtkCTree     *ctree,
Packit Service fb6fa5
						  GtkCTreeNode *node,
Packit Service fb6fa5
						  gint          depth);
Packit Service fb6fa5
void gtk_ctree_collapse                          (GtkCTree     *ctree,
Packit Service fb6fa5
						  GtkCTreeNode *node);
Packit Service fb6fa5
void gtk_ctree_collapse_recursive                (GtkCTree     *ctree,
Packit Service fb6fa5
						  GtkCTreeNode *node);
Packit Service fb6fa5
void gtk_ctree_collapse_to_depth                 (GtkCTree     *ctree,
Packit Service fb6fa5
						  GtkCTreeNode *node,
Packit Service fb6fa5
						  gint          depth);
Packit Service fb6fa5
void gtk_ctree_toggle_expansion                  (GtkCTree     *ctree,
Packit Service fb6fa5
						  GtkCTreeNode *node);
Packit Service fb6fa5
void gtk_ctree_toggle_expansion_recursive        (GtkCTree     *ctree,
Packit Service fb6fa5
						  GtkCTreeNode *node);
Packit Service fb6fa5
void gtk_ctree_select                            (GtkCTree     *ctree, 
Packit Service fb6fa5
						  GtkCTreeNode *node);
Packit Service fb6fa5
void gtk_ctree_select_recursive                  (GtkCTree     *ctree, 
Packit Service fb6fa5
						  GtkCTreeNode *node);
Packit Service fb6fa5
void gtk_ctree_unselect                          (GtkCTree     *ctree, 
Packit Service fb6fa5
						  GtkCTreeNode *node);
Packit Service fb6fa5
void gtk_ctree_unselect_recursive                (GtkCTree     *ctree, 
Packit Service fb6fa5
						  GtkCTreeNode *node);
Packit Service fb6fa5
void gtk_ctree_real_select_recursive             (GtkCTree     *ctree, 
Packit Service fb6fa5
						  GtkCTreeNode *node, 
Packit Service fb6fa5
						  gint          state);
Packit Service fb6fa5
Packit Service fb6fa5
/***********************************************************
Packit Service fb6fa5
 *           Analogons of GtkCList functions               *
Packit Service fb6fa5
 ***********************************************************/
Packit Service fb6fa5
Packit Service fb6fa5
void gtk_ctree_node_set_text                     (GtkCTree     *ctree,
Packit Service fb6fa5
						  GtkCTreeNode *node,
Packit Service fb6fa5
						  gint          column,
Packit Service fb6fa5
						  const gchar  *text);
Packit Service fb6fa5
void gtk_ctree_node_set_pixmap                   (GtkCTree     *ctree,
Packit Service fb6fa5
						  GtkCTreeNode *node,
Packit Service fb6fa5
						  gint          column,
Packit Service fb6fa5
						  GdkPixmap    *pixmap,
Packit Service fb6fa5
						  GdkBitmap    *mask);
Packit Service fb6fa5
void gtk_ctree_node_set_pixtext                  (GtkCTree     *ctree,
Packit Service fb6fa5
						  GtkCTreeNode *node,
Packit Service fb6fa5
						  gint          column,
Packit Service fb6fa5
						  const gchar  *text,
Packit Service fb6fa5
						  guint8        spacing,
Packit Service fb6fa5
						  GdkPixmap    *pixmap,
Packit Service fb6fa5
						  GdkBitmap    *mask);
Packit Service fb6fa5
void gtk_ctree_set_node_info                     (GtkCTree     *ctree,
Packit Service fb6fa5
						  GtkCTreeNode *node,
Packit Service fb6fa5
						  const gchar  *text,
Packit Service fb6fa5
						  guint8        spacing,
Packit Service fb6fa5
						  GdkPixmap    *pixmap_closed,
Packit Service fb6fa5
						  GdkBitmap    *mask_closed,
Packit Service fb6fa5
						  GdkPixmap    *pixmap_opened,
Packit Service fb6fa5
						  GdkBitmap    *mask_opened,
Packit Service fb6fa5
						  gboolean      is_leaf,
Packit Service fb6fa5
						  gboolean      expanded);
Packit Service fb6fa5
void gtk_ctree_node_set_shift                    (GtkCTree     *ctree,
Packit Service fb6fa5
						  GtkCTreeNode *node,
Packit Service fb6fa5
						  gint          column,
Packit Service fb6fa5
						  gint          vertical,
Packit Service fb6fa5
						  gint          horizontal);
Packit Service fb6fa5
void gtk_ctree_node_set_selectable               (GtkCTree     *ctree,
Packit Service fb6fa5
						  GtkCTreeNode *node,
Packit Service fb6fa5
						  gboolean      selectable);
Packit Service fb6fa5
gboolean gtk_ctree_node_get_selectable           (GtkCTree     *ctree,
Packit Service fb6fa5
						  GtkCTreeNode *node);
Packit Service fb6fa5
GtkCellType gtk_ctree_node_get_cell_type         (GtkCTree     *ctree,
Packit Service fb6fa5
						  GtkCTreeNode *node,
Packit Service fb6fa5
						  gint          column);
Packit Service fb6fa5
gboolean gtk_ctree_node_get_text                 (GtkCTree     *ctree,
Packit Service fb6fa5
						  GtkCTreeNode *node,
Packit Service fb6fa5
						  gint          column,
Packit Service fb6fa5
						  gchar       **text);
Packit Service fb6fa5
gboolean gtk_ctree_node_get_pixmap               (GtkCTree     *ctree,
Packit Service fb6fa5
						  GtkCTreeNode *node,
Packit Service fb6fa5
						  gint          column,
Packit Service fb6fa5
						  GdkPixmap   **pixmap,
Packit Service fb6fa5
						  GdkBitmap   **mask);
Packit Service fb6fa5
gboolean gtk_ctree_node_get_pixtext              (GtkCTree     *ctree,
Packit Service fb6fa5
						  GtkCTreeNode *node,
Packit Service fb6fa5
						  gint          column,
Packit Service fb6fa5
						  gchar       **text,
Packit Service fb6fa5
						  guint8       *spacing,
Packit Service fb6fa5
						  GdkPixmap   **pixmap,
Packit Service fb6fa5
						  GdkBitmap   **mask);
Packit Service fb6fa5
gboolean gtk_ctree_get_node_info                 (GtkCTree     *ctree,
Packit Service fb6fa5
						  GtkCTreeNode *node,
Packit Service fb6fa5
						  gchar       **text,
Packit Service fb6fa5
						  guint8       *spacing,
Packit Service fb6fa5
						  GdkPixmap   **pixmap_closed,
Packit Service fb6fa5
						  GdkBitmap   **mask_closed,
Packit Service fb6fa5
						  GdkPixmap   **pixmap_opened,
Packit Service fb6fa5
						  GdkBitmap   **mask_opened,
Packit Service fb6fa5
						  gboolean     *is_leaf,
Packit Service fb6fa5
						  gboolean     *expanded);
Packit Service fb6fa5
void gtk_ctree_node_set_row_style                (GtkCTree     *ctree,
Packit Service fb6fa5
						  GtkCTreeNode *node,
Packit Service fb6fa5
						  GtkStyle     *style);
Packit Service fb6fa5
GtkStyle * gtk_ctree_node_get_row_style          (GtkCTree     *ctree,
Packit Service fb6fa5
						  GtkCTreeNode *node);
Packit Service fb6fa5
void gtk_ctree_node_set_cell_style               (GtkCTree     *ctree,
Packit Service fb6fa5
						  GtkCTreeNode *node,
Packit Service fb6fa5
						  gint          column,
Packit Service fb6fa5
						  GtkStyle     *style);
Packit Service fb6fa5
GtkStyle * gtk_ctree_node_get_cell_style         (GtkCTree     *ctree,
Packit Service fb6fa5
						  GtkCTreeNode *node,
Packit Service fb6fa5
						  gint          column);
Packit Service fb6fa5
void gtk_ctree_node_set_foreground               (GtkCTree       *ctree,
Packit Service fb6fa5
						  GtkCTreeNode   *node,
Packit Service fb6fa5
						  const GdkColor *color);
Packit Service fb6fa5
void gtk_ctree_node_set_background               (GtkCTree       *ctree,
Packit Service fb6fa5
						  GtkCTreeNode   *node,
Packit Service fb6fa5
						  const GdkColor *color);
Packit Service fb6fa5
void gtk_ctree_node_set_row_data                 (GtkCTree     *ctree,
Packit Service fb6fa5
						  GtkCTreeNode *node,
Packit Service fb6fa5
						  gpointer      data);
Packit Service fb6fa5
void gtk_ctree_node_set_row_data_full            (GtkCTree     *ctree,
Packit Service fb6fa5
						  GtkCTreeNode *node,
Packit Service fb6fa5
						  gpointer      data,
Packit Service fb6fa5
						  GDestroyNotify destroy);
Packit Service fb6fa5
gpointer gtk_ctree_node_get_row_data             (GtkCTree     *ctree,
Packit Service fb6fa5
						  GtkCTreeNode *node);
Packit Service fb6fa5
void gtk_ctree_node_moveto                       (GtkCTree     *ctree,
Packit Service fb6fa5
						  GtkCTreeNode *node,
Packit Service fb6fa5
						  gint          column,
Packit Service fb6fa5
						  gfloat        row_align,
Packit Service fb6fa5
						  gfloat        col_align);
Packit Service fb6fa5
GtkVisibility gtk_ctree_node_is_visible          (GtkCTree     *ctree,
Packit Service fb6fa5
						  GtkCTreeNode *node);
Packit Service fb6fa5
Packit Service fb6fa5
/***********************************************************
Packit Service fb6fa5
 *             GtkCTree specific functions                 *
Packit Service fb6fa5
 ***********************************************************/
Packit Service fb6fa5
Packit Service fb6fa5
void gtk_ctree_set_indent            (GtkCTree                *ctree, 
Packit Service fb6fa5
				      gint                     indent);
Packit Service fb6fa5
void gtk_ctree_set_spacing           (GtkCTree                *ctree, 
Packit Service fb6fa5
				      gint                     spacing);
Packit Service fb6fa5
void gtk_ctree_set_show_stub         (GtkCTree                *ctree, 
Packit Service fb6fa5
				      gboolean                 show_stub);
Packit Service fb6fa5
void gtk_ctree_set_line_style        (GtkCTree                *ctree, 
Packit Service fb6fa5
				      GtkCTreeLineStyle        line_style);
Packit Service fb6fa5
void gtk_ctree_set_expander_style    (GtkCTree                *ctree, 
Packit Service fb6fa5
				      GtkCTreeExpanderStyle    expander_style);
Packit Service fb6fa5
void gtk_ctree_set_drag_compare_func (GtkCTree     	      *ctree,
Packit Service fb6fa5
				      GtkCTreeCompareDragFunc  cmp_func);
Packit Service fb6fa5
Packit Service fb6fa5
/***********************************************************
Packit Service fb6fa5
 *             Tree sorting functions                      *
Packit Service fb6fa5
 ***********************************************************/
Packit Service fb6fa5
Packit Service fb6fa5
void gtk_ctree_sort_node                         (GtkCTree     *ctree, 
Packit Service fb6fa5
						  GtkCTreeNode *node);
Packit Service fb6fa5
void gtk_ctree_sort_recursive                    (GtkCTree     *ctree, 
Packit Service fb6fa5
						  GtkCTreeNode *node);
Packit Service fb6fa5
Packit Service fb6fa5
Packit Service fb6fa5
#define gtk_ctree_set_reorderable(t,r)                    gtk_clist_set_reorderable((GtkCList*) (t),(r))
Packit Service fb6fa5
Packit Service fb6fa5
/* GType for the GtkCTreeNode.  This is a boxed type, although it uses
Packit Service fb6fa5
 * no-op's for the copy and free routines.  It is defined in order to
Packit Service fb6fa5
 * provide type information for the signal arguments
Packit Service fb6fa5
 */
Packit Service fb6fa5
GType   gtk_ctree_node_get_type                  (void) G_GNUC_CONST;
Packit Service fb6fa5
Packit Service fb6fa5
G_END_DECLS
Packit Service fb6fa5
Packit Service fb6fa5
#endif				/* __GTK_CTREE_H__ */
Packit Service fb6fa5
Packit Service fb6fa5
#endif /* GTK_DISABLE_DEPRECATED */