]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/DEVEL/lablgtk/lablgtk_20000829-0.1.0/applications/radtest/gtktree2.h
Initial revision
[helm.git] / helm / DEVEL / lablgtk / lablgtk_20000829-0.1.0 / applications / radtest / gtktree2.h
diff --git a/helm/DEVEL/lablgtk/lablgtk_20000829-0.1.0/applications/radtest/gtktree2.h b/helm/DEVEL/lablgtk/lablgtk_20000829-0.1.0/applications/radtest/gtktree2.h
new file mode 100644 (file)
index 0000000..291a1d1
--- /dev/null
@@ -0,0 +1,139 @@
+/* GTK - The GIMP Toolkit
+ * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald
+ *
+ * This library 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; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library 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 library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+/*
+ * Modified by the GTK+ Team and others 1997-1999.  See the AUTHORS
+ * file for a list of people on the GTK+ Team.  See the ChangeLog
+ * files for a list of changes.  These files are distributed with
+ * GTK+ at ftp://ftp.gtk.org/pub/gtk/. 
+ */
+
+#ifndef __GTK_TREE2_H__
+#define __GTK_TREE2_H__
+
+/* set this flag to enable tree debugging output */
+/* #define TREE_DEBUG */
+
+#include <gdk/gdk.h>
+#include <gtk/gtkcontainer.h>
+
+
+#ifdef __cplusplus
+extern "C" {
+#endif /* __cplusplus */
+
+
+#define GTK_TYPE_TREE2                  (gtk_tree2_get_type ())
+#define GTK_TREE2(obj)                  (GTK_CHECK_CAST ((obj), GTK_TYPE_TREE2, GtkTree2))
+#define GTK_TREE2_CLASS(klass)          (GTK_CHECK_CLASS_CAST ((klass), GTK_TYPE_TREE2, GtkTree2Class))
+#define GTK_IS_TREE2(obj)               (GTK_CHECK_TYPE ((obj), GTK_TYPE_TREE2))
+#define GTK_IS_TREE2_CLASS(klass)       (GTK_CHECK_CLASS_TYPE ((klass), GTK_TYPE_TREE2))
+
+#define GTK_IS_ROOT_TREE2(obj)   ((GtkObject*) GTK_TREE2(obj)->root_tree == (GtkObject*)obj)
+#define GTK_TREE2_ROOT_TREE(obj) (GTK_TREE2(obj)->root_tree ? GTK_TREE2(obj)->root_tree : GTK_TREE2(obj))
+#define GTK_TREE2_SELECTION(obj) (GTK_TREE2_ROOT_TREE(obj)->selection)
+
+typedef enum 
+{
+  GTK_TREE2_VIEW_LINE,  /* default view mode */
+  GTK_TREE2_VIEW_ITEM
+} GtkTree2ViewMode;
+
+typedef struct _GtkTree2       GtkTree2;
+typedef struct _GtkTree2Class  GtkTree2Class;
+
+struct _GtkTree2
+{
+  GtkContainer container;
+  
+  GList *children;
+  
+  GtkTree2* root_tree; /* owner of selection list */
+  GtkWidget* tree_owner;
+  GList *selection;
+  guint level;
+  guint indent_value;
+  guint current_indent;
+  guint selection_mode : 2;
+  guint view_mode : 1;
+  guint view_line : 1;
+};
+
+struct _GtkTree2Class
+{
+  GtkContainerClass parent_class;
+  
+  void (* selection_changed) (GtkTree2   *tree);
+  void (* select_child)      (GtkTree2   *tree,
+                             GtkWidget *child);
+  void (* unselect_child)    (GtkTree2   *tree,
+                             GtkWidget *child);
+};
+
+
+GtkType    gtk_tree2_get_type           (void);
+GtkWidget* gtk_tree2_new                (void);
+void       gtk_tree2_append             (GtkTree2          *tree,
+                                       GtkWidget        *tree_item);
+void       gtk_tree2_prepend            (GtkTree2          *tree,
+                                       GtkWidget        *tree_item);
+void       gtk_tree2_insert             (GtkTree2          *tree,
+                                       GtkWidget        *tree_item,
+                                       gint              position);
+void       gtk_tree2_remove_items       (GtkTree2          *tree,
+                                       GList            *items);
+void       gtk_tree2_clear_items        (GtkTree2          *tree,
+                                       gint              start,
+                                       gint              end);
+void       gtk_tree2_select_item        (GtkTree2          *tree,
+                                       gint              item);
+void       gtk_tree2_unselect_item      (GtkTree2          *tree,
+                                       gint              item);
+void       gtk_tree2_select_child       (GtkTree2          *tree,
+                                       GtkWidget        *tree_item);
+void       gtk_tree2_unselect_child     (GtkTree2          *tree,
+                                       GtkWidget        *tree_item);
+gint       gtk_tree2_child_position     (GtkTree2          *tree,
+                                       GtkWidget        *child);
+void       gtk_tree2_set_selection_mode (GtkTree2          *tree,
+                                       GtkSelectionMode  mode);
+void       gtk_tree2_set_view_mode      (GtkTree2          *tree,
+                                       GtkTree2ViewMode   mode); 
+void       gtk_tree2_set_view_lines     (GtkTree2          *tree,
+                                       guint            flag);
+
+/* deprecated function, use gtk_container_remove instead.
+ */
+void       gtk_tree2_remove_item        (GtkTree2          *tree,
+                                       GtkWidget        *child);
+void       gtk_tree2_item_up             (GtkTree2   *tree,
+                                        gint       position);
+
+void gtk_tree2_select_next_child (GtkTree2   *tree,
+                                 GtkWidget *tree_item, gboolean descend);
+
+void gtk_tree2_select_prev_child (GtkTree2   *tree,
+                                 GtkWidget *tree_item);
+
+#ifdef __cplusplus
+}
+#endif /* __cplusplus */
+
+
+#endif /* __GTK_TREE2_H__ */