Remove deprecated objects GtkAction and GtkUIManager
[pspp] / src / ui / gui / psppire-dialog-action.h
index c0bab64e86e22200c73dcbba17da0fc7dfeb7223..6abe81419c2ebeee35be8250c7dd00839800c5cc 100644 (file)
@@ -15,7 +15,7 @@
    along with this program.  If not, see <http://www.gnu.org/licenses/>. */
 
 /* 
-   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__ */