X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fui%2Fgui%2Fpsppire-selector.h;h=bb267cd49cf08631a02e5cfd07e19cf54f31df4a;hb=a46ed36dcbab01d36c08cf560ff96a7effd9779a;hp=bdd358ebab30ebdb1dba610a9f58b0767dca1c1f;hpb=0bd0098aec2ee31d9460c8d4c1263d0b5ccc4324;p=pspp-builds.git diff --git a/src/ui/gui/psppire-selector.h b/src/ui/gui/psppire-selector.h index bdd358eb..bb267cd4 100644 --- a/src/ui/gui/psppire-selector.h +++ b/src/ui/gui/psppire-selector.h @@ -77,7 +77,10 @@ struct _PsppireSelector GtkWidget *arrow; GtkAction *action; + gboolean dispose_has_run; + enum psppire_selector_dir direction; + GtkWidget *source; GtkWidget *dest; @@ -97,6 +100,12 @@ struct _PsppireSelector FilterItemsFunc *filter; AllowSelectionFunc *allow_selection; + + gulong row_activate_id ; + + gulong source_select_id ; + + gboolean primary_requested; }; struct _PsppireSelectorClass @@ -106,18 +115,26 @@ 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 *, - GtkWidget *, - GtkWidget *, - 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); + + +void psppire_selector_set_allow (PsppireSelector *, AllowSelectionFunc *); GType psppire_selector_orientation_get_type (void) G_GNUC_CONST; @@ -130,10 +147,12 @@ typedef enum { PSPPIRE_SELECT_SOURCE_BELOW_DEST } PsppireSelectorOrientation; -#define G_TYPE_PSPPIRE_SELECTOR_ORIENTATION \ +#define PSPPIRE_TYPE_SELECTOR_ORIENTATION \ (psppire_selector_orientation_get_type()) +void psppire_selector_set_default_selection_func (GType type, SelectItemsFunc *); + G_END_DECLS