BEAST/BSE - Better Audio System and Sound Engine
0.8.2
|
00001 // Licensed GNU LGPL v2.1 or later: http://www.gnu.org/licenses/lgpl.html 00002 #ifndef __BST_CLUE_HUNTER_H__ 00003 #define __BST_CLUE_HUNTER_H__ 00004 00005 #include <gxk/gxk.hh> 00006 00007 #ifdef __cplusplus 00008 extern "C" { 00009 #endif /* __cplusplus */ 00010 00011 00012 /* --- type macros --- */ 00013 #define BST_TYPE_CLUE_HUNTER (bst_clue_hunter_get_type ()) 00014 #define BST_CLUE_HUNTER(object) (GTK_CHECK_CAST ((object), BST_TYPE_CLUE_HUNTER, BstClueHunter)) 00015 #define BST_CLUE_HUNTER_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), BST_TYPE_CLUE_HUNTER, BstClueHunterClass)) 00016 #define BST_IS_CLUE_HUNTER(object) (GTK_CHECK_TYPE ((object), BST_TYPE_CLUE_HUNTER)) 00017 #define BST_IS_CLUE_HUNTER_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), BST_TYPE_CLUE_HUNTER)) 00018 #define BST_CLUE_HUNTER_GET_CLASS(obj) (GTK_CHECK_GET_CLASS ((obj), BST_TYPE_CLUE_HUNTER, BstClueHunterClass)) 00019 00020 00021 /* --- typedefs --- */ 00022 typedef struct _BstClueHunterClass BstClueHunterClass; 00023 typedef struct _BstClueHunter BstClueHunter; 00024 00025 00026 /* --- structures --- */ 00027 struct _BstClueHunter 00028 { 00029 GtkWindow window; 00030 00031 guint popped_up : 1; 00032 guint completion_tag : 1; 00033 guint pattern_matching : 1; 00034 guint keep_history : 1; 00035 guint clist_column : 16; 00036 00037 gchar *cstring; 00038 00039 GtkWidget *align_widget; 00040 GtkWidget *scw; 00041 GtkCList *clist; 00042 GtkEntry *entry; 00043 }; 00044 struct _BstClueHunterClass 00045 { 00046 GtkWindowClass parent_class; 00047 00048 void (*activate) (BstClueHunter *clue_hunter); 00049 void (*popup) (BstClueHunter *clue_hunter); 00050 void (*popdown) (BstClueHunter *clue_hunter); 00051 void (*select_on) (BstClueHunter *clue_hunter, 00052 const gchar *string); 00053 void (*poll_refresh) (BstClueHunter *clue_hunter); 00054 }; 00055 00056 00057 /* --- prototypes --- */ 00058 GtkType bst_clue_hunter_get_type (void); 00059 void bst_clue_hunter_popup (BstClueHunter *clue_hunter); 00060 void bst_clue_hunter_popup_if_editable (BstClueHunter *clue_hunter); 00061 void bst_clue_hunter_set_clist (BstClueHunter *clue_hunter, 00062 GtkCList *clist, 00063 guint16 column); 00064 void bst_clue_hunter_set_entry (BstClueHunter *clue_hunter, 00065 GtkEntry *entry); 00066 void bst_clue_hunter_add_string (BstClueHunter *clue_hunter, 00067 const gchar *string); 00068 void bst_clue_hunter_remove_string (BstClueHunter *clue_hunter, 00069 const gchar *string); 00070 void bst_clue_hunter_remove_matches (BstClueHunter *clue_hunter, 00071 const gchar *pattern); 00072 void bst_clue_hunter_select_on (BstClueHunter *clue_hunter, 00073 const gchar *string); 00074 void bst_clue_hunter_poll_refresh (BstClueHunter *clue_hunter); 00075 gchar* bst_clue_hunter_try_complete (BstClueHunter *clue_hunter); 00076 GtkWidget* bst_clue_hunter_create_arrow (BstClueHunter *clue_hunter, 00077 gboolean require_editable); 00078 gpointer bst_clue_hunter_from_entry (gpointer entry); 00079 00080 00081 00082 00083 00084 #ifdef __cplusplus 00085 } 00086 #endif /* __cplusplus */ 00087 00088 00089 #endif /* __BST_CLUE_HUNTER_H__ */