X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fui%2Fgui%2Fpsppire-dialog-action.h;h=6abe81419c2ebeee35be8250c7dd00839800c5cc;hb=109eccf01c32b5784f464de2d424fd7a9905123f;hp=c0bab64e86e22200c73dcbba17da0fc7dfeb7223;hpb=53508ccb5785dfcad8080d9dcdacdf3b7af5be76;p=pspp diff --git a/src/ui/gui/psppire-dialog-action.h b/src/ui/gui/psppire-dialog-action.h index c0bab64e86..6abe81419c 100644 --- a/src/ui/gui/psppire-dialog-action.h +++ b/src/ui/gui/psppire-dialog-action.h @@ -15,7 +15,7 @@ along with this program. If not, see . */ /* - This is a an abstract base class, deriving from GtkAction. + This is a an abstract base class, which implements GAction. It's purpose is to abstract the way in which dialog boxes behave. That is, this action will fire whenever a dialog box is to be popped up. @@ -67,23 +67,24 @@ typedef struct _PsppireDialogActionClass PsppireDialogActionClass; struct _PsppireDialogAction { - GtkAction parent; + GObject parent; /*< private >*/ - GtkUIManager *uim; - + GVariantType *parameter_type; GtkWidget *source; GtkWidget *dialog; GtkWidget *toplevel; PsppireDict *dict; + + gboolean activated; }; struct _PsppireDialogActionClass { - GtkActionClass parent_class; - void (*activate) (PsppireDialogAction *); - char * (*generate_syntax) (PsppireDialogAction *); + GObjectClass parent_class; + void (*activate) (PsppireDialogAction *, GVariant *); + char * (*generate_syntax) (const PsppireDialogAction *); }; GType psppire_dialog_action_get_type (void) ; @@ -96,6 +97,15 @@ void psppire_dialog_action_set_refresh (PsppireDialogAction *pda, void psppire_dialog_action_set_valid_predicate (PsppireDialogAction *act, ContentsAreValid dialog_state_valid); +typedef void (*activation) (PsppireDialogAction *); + +void psppire_dialog_action_set_activation (gpointer class, activation a); + +GHashTable *psppire_dialog_action_get_hash_table (PsppireDialogAction *act); + +void psppire_dialog_action_activate_null (PsppireDialogAction *act); + + G_END_DECLS #endif /* __PSPPIRE_DIALOG_ACTION_H__ */