X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fui%2Fgui%2Fpsppire-selector.h;h=c4990c9229eec3e156be160fad6d01de9a1c693d;hb=0f447caa885d8f0fd8c30d4440556d9b6abb99ea;hp=8174f97c8f5f4a20a1888774e75a05e72402d1fc;hpb=7c2fa3735ac1115b6c1ad4b5e0613673de2faf4c;p=pspp diff --git a/src/ui/gui/psppire-selector.h b/src/ui/gui/psppire-selector.h index 8174f97c8f..c4990c9229 100644 --- a/src/ui/gui/psppire-selector.h +++ b/src/ui/gui/psppire-selector.h @@ -1,5 +1,5 @@ /* PSPPIRE - a graphical user interface for PSPP. - Copyright (C) 2007 Free Software Foundation + Copyright (C) 2007, 2010 Free Software Foundation This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -21,11 +21,7 @@ #include #include -#include -#include -#include -#include -#include +#include G_BEGIN_DECLS @@ -75,7 +71,6 @@ struct _PsppireSelector /* */ GtkWidget *arrow; - GtkAction *action; gboolean dispose_has_run; @@ -92,14 +87,18 @@ struct _PsppireSelector gint orientation; - GtkTreeModelFilter *filtered_source; - SelectItemsFunc *select_items; gpointer select_user_data; FilterItemsFunc *filter; AllowSelectionFunc *allow_selection; + + gulong row_activate_id ; + gulong source_select_id ; + + gboolean primary_requested; + GList *source_litem; }; struct _PsppireSelectorClass @@ -109,16 +108,29 @@ struct _PsppireSelectorClass /* This is a hash of Lists of FilterItemsFunc pointers, keyed by address of the source widget */ GHashTable *source_hash; + + /* A hash of SelectItemFuncs indexed by GType */ + GHashTable *default_selection_funcs; }; GType psppire_selector_get_type (void); GtkWidget* psppire_selector_new (void); -void psppire_selector_set_subjects (PsppireSelector *, - SelectItemsFunc *, - FilterItemsFunc *, - gpointer ); -void psppire_selector_set_allow (PsppireSelector *, AllowSelectionFunc *); + +/* Set FILTER_FUNC for this selector */ +void psppire_selector_set_filter_func (PsppireSelector *selector, + FilterItemsFunc *filter_func); + +/* Set SELECT_FUNC for this selector */ +void psppire_selector_set_select_func (PsppireSelector *selector, + SelectItemsFunc *select_func, + gpointer user_data); + +/* Force the selector to update its dest and source widgets */ +void psppire_selector_update_subjects (PsppireSelector *selector); + + +void psppire_selector_set_allow (PsppireSelector *, AllowSelectionFunc *); GType psppire_selector_orientation_get_type (void) G_GNUC_CONST; @@ -135,6 +147,8 @@ typedef enum { (psppire_selector_orientation_get_type()) +void psppire_selector_set_default_selection_func (GType type, SelectItemsFunc *); + G_END_DECLS