]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/gtk/treeentry_gtk.h
Applied Ryan's native wxListBox and wxCheckListBox patch
[wxWidgets.git] / include / wx / gtk / treeentry_gtk.h
diff --git a/include/wx/gtk/treeentry_gtk.h b/include/wx/gtk/treeentry_gtk.h
new file mode 100644 (file)
index 0000000..7853399
--- /dev/null
@@ -0,0 +1,76 @@
+/* ///////////////////////////////////////////////////////////////////////////
+// Name:        treeentry_gtk.h
+// Purpose:     GtkTreeEntry - a string/userdata combo for use with treeview
+// Author:      Ryan Norton
+// Id:          $Id$
+// Copyright:   (c) 2006 Ryan Norton
+// Licence:     wxWindows licence
+/////////////////////////////////////////////////////////////////////////// */
+
+#ifndef __GTK_TREE_ENTRY_H__
+#define __GTK_TREE_ENTRY_H__
+
+#ifdef __cplusplus
+extern "C" {
+#endif /* __cplusplus */
+
+#include <gtk/gtk.h> /* for gpointer and gchar* etc. */
+
+#include "wx/dlimpexp.h"
+
+#define GTK_TYPE_TREE_ENTRY          (gtk_tree_entry_get_type())
+#define GTK_TREE_ENTRY(obj)          (GTK_CHECK_CAST (obj, gtk_tree_entry_get_type (), GtkTreeEntry))
+#define GTK_TREE_ENTRY_CLASS(klass)  (GTK_CHECK_CLASS_CAST (klass, gtk_tree_entry_get_type (), GtkTreeEntryClass))
+#define GTK_IS_TREE_ENTRY(obj)       (GTK_CHECK_TYPE (obj, gtk_tree_entry_get_type ()))
+
+typedef struct _GtkTreeEntry        GtkTreeEntry;
+typedef struct _GtkTreeEntryClass   GtkTreeEntryClass;
+
+typedef void (*GtkTreeEntryDestroy) (GtkTreeEntry* entry, gpointer context);
+
+struct _GtkTreeEntry
+{
+    GObject parent;                     /* object instance */
+    gchar*  label;                      /* label - always copied by this object except on get */
+    gchar*  collate_key;                /* collate key used for string comparisons/sorting */
+    gpointer userdata;                  /* untouched userdata */
+    GtkTreeEntryDestroy destroy_func;   /* called upon destruction - use for freeing userdata etc. */
+    gpointer destroy_func_data;         /* context passed to destroy_func */
+};
+
+struct _GtkTreeEntryClass
+{
+    GObjectClass parent;
+};
+
+WXDLLIMPEXP_CORE
+GtkTreeEntry* gtk_tree_entry_new        (void);
+
+WXDLLIMPEXP_CORE
+GtkType    gtk_tree_entry_get_type      (void);
+
+WXDLLIMPEXP_CORE
+gchar*     gtk_tree_entry_get_collate_key     (GtkTreeEntry* entry);
+
+WXDLLIMPEXP_CORE
+gchar*     gtk_tree_entry_get_label     (GtkTreeEntry* entry);
+
+WXDLLIMPEXP_CORE
+gpointer   gtk_tree_entry_get_userdata  (GtkTreeEntry* entry);
+
+WXDLLIMPEXP_CORE
+void     gtk_tree_entry_set_label       (GtkTreeEntry* entry, const gchar* label);
+
+WXDLLIMPEXP_CORE
+void   gtk_tree_entry_set_userdata      (GtkTreeEntry* entry, gpointer userdata);
+
+WXDLLIMPEXP_CORE
+void   gtk_tree_entry_set_destroy_func (GtkTreeEntry* entry, 
+                                        GtkTreeEntryDestroy destroy_func,
+                                        gpointer destroy_func_data);
+
+#ifdef __cplusplus
+}
+#endif /* __cplusplus */
+
+#endif /* __GTK_TREE_ENTRY_H__ */