]>
Commit | Line | Data |
---|---|---|
1 | /* /////////////////////////////////////////////////////////////////////////// | |
2 | // Name: treeentry_gtk.h | |
3 | // Purpose: GtkTreeEntry - a string/userdata combo for use with treeview | |
4 | // Author: Ryan Norton | |
5 | // Id: $Id$ | |
6 | // Copyright: (c) 2006 Ryan Norton | |
7 | // Licence: wxWindows licence | |
8 | /////////////////////////////////////////////////////////////////////////// */ | |
9 | ||
10 | #ifndef __GTK_TREE_ENTRY_H__ | |
11 | #define __GTK_TREE_ENTRY_H__ | |
12 | ||
13 | #ifdef __cplusplus | |
14 | extern "C" { | |
15 | #endif /* __cplusplus */ | |
16 | ||
17 | #include <gtk/gtk.h> /* for gpointer and gchar* etc. */ | |
18 | ||
19 | #include "wx/dlimpexp.h" | |
20 | ||
21 | #define GTK_TYPE_TREE_ENTRY (gtk_tree_entry_get_type()) | |
22 | #define GTK_TREE_ENTRY(obj) (GTK_CHECK_CAST (obj, gtk_tree_entry_get_type (), GtkTreeEntry)) | |
23 | #define GTK_TREE_ENTRY_CLASS(klass) (GTK_CHECK_CLASS_CAST (klass, gtk_tree_entry_get_type (), GtkTreeEntryClass)) | |
24 | #define GTK_IS_TREE_ENTRY(obj) (GTK_CHECK_TYPE (obj, gtk_tree_entry_get_type ())) | |
25 | ||
26 | typedef struct _GtkTreeEntry GtkTreeEntry; | |
27 | typedef struct _GtkTreeEntryClass GtkTreeEntryClass; | |
28 | ||
29 | typedef void (*GtkTreeEntryDestroy) (GtkTreeEntry* entry, gpointer context); | |
30 | ||
31 | struct _GtkTreeEntry | |
32 | { | |
33 | GObject parent; /* object instance */ | |
34 | gchar* label; /* label - always copied by this object except on get */ | |
35 | gchar* collate_key; /* collate key used for string comparisons/sorting */ | |
36 | gpointer userdata; /* untouched userdata */ | |
37 | GtkTreeEntryDestroy destroy_func; /* called upon destruction - use for freeing userdata etc. */ | |
38 | gpointer destroy_func_data; /* context passed to destroy_func */ | |
39 | }; | |
40 | ||
41 | struct _GtkTreeEntryClass | |
42 | { | |
43 | GObjectClass parent; | |
44 | }; | |
45 | ||
46 | WXDLLIMPEXP_CORE | |
47 | GtkTreeEntry* gtk_tree_entry_new (void); | |
48 | ||
49 | WXDLLIMPEXP_CORE | |
50 | GtkType gtk_tree_entry_get_type (void); | |
51 | ||
52 | WXDLLIMPEXP_CORE | |
53 | gchar* gtk_tree_entry_get_collate_key (GtkTreeEntry* entry); | |
54 | ||
55 | WXDLLIMPEXP_CORE | |
56 | gchar* gtk_tree_entry_get_label (GtkTreeEntry* entry); | |
57 | ||
58 | WXDLLIMPEXP_CORE | |
59 | gpointer gtk_tree_entry_get_userdata (GtkTreeEntry* entry); | |
60 | ||
61 | WXDLLIMPEXP_CORE | |
62 | void gtk_tree_entry_set_label (GtkTreeEntry* entry, const gchar* label); | |
63 | ||
64 | WXDLLIMPEXP_CORE | |
65 | void gtk_tree_entry_set_userdata (GtkTreeEntry* entry, gpointer userdata); | |
66 | ||
67 | WXDLLIMPEXP_CORE | |
68 | void gtk_tree_entry_set_destroy_func (GtkTreeEntry* entry, | |
69 | GtkTreeEntryDestroy destroy_func, | |
70 | gpointer destroy_func_data); | |
71 | ||
72 | #ifdef __cplusplus | |
73 | } | |
74 | #endif /* __cplusplus */ | |
75 | ||
76 | #endif /* __GTK_TREE_ENTRY_H__ */ |