X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fui%2Fgui%2Fpsppire-dialog.h;h=af56aac1e8a8fcff9de48d088329f8ac96c9c17a;hb=3e98eec9f2c774a7c695944c15de651ecd120430;hp=05215ce984e2b14bd332aad5bb02f86ffd25d2ef;hpb=c65449a628d13f4683e7dc7125874608c7152017;p=pspp diff --git a/src/ui/gui/psppire-dialog.h b/src/ui/gui/psppire-dialog.h index 05215ce984..af56aac1e8 100644 --- a/src/ui/gui/psppire-dialog.h +++ b/src/ui/gui/psppire-dialog.h @@ -1,5 +1,5 @@ /* PSPPIRE - a graphical user interface for PSPP. - Copyright (C) 2007 Free Software Foundation + Copyright (C) 2007, 2010, 2011, 2012 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,7 +21,8 @@ #include #include -#include +#include +#include "psppire-window-base.h" #define PSPPIRE_RESPONSE_PASTE 1 @@ -30,11 +31,11 @@ G_BEGIN_DECLS -#define PSPPIRE_DIALOG_TYPE (psppire_dialog_get_type ()) -#define PSPPIRE_DIALOG(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PSPPIRE_DIALOG_TYPE, PsppireDialog)) -#define PSPPIRE_DIALOG_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PSPPIRE_DIALOG_TYPE, PsppireDialogClass)) -#define PSPPIRE_IS_DIALOG(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PSPPIRE_DIALOG_TYPE)) -#define PSPPIRE_IS_DIALOG_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PSPPIRE_DIALOG_TYPE)) +#define PSPPIRE_TYPE_DIALOG (psppire_dialog_get_type ()) +#define PSPPIRE_DIALOG(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PSPPIRE_TYPE_DIALOG, PsppireDialog)) +#define PSPPIRE_DIALOG_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PSPPIRE_TYPE_DIALOG, PsppireDialogClass)) +#define PSPPIRE_IS_DIALOG(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PSPPIRE_TYPE_DIALOG)) +#define PSPPIRE_IS_DIALOG_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PSPPIRE_TYPE_DIALOG)) typedef struct _PsppireDialog PsppireDialog; @@ -42,10 +43,18 @@ typedef struct _PsppireDialogClass PsppireDialogClass; typedef gboolean (*ContentsAreValid) (gpointer); +typedef enum + { + PSPPIRE_HORIZONTAL, + PSPPIRE_VERTICAL, + PSPPIRE_TABULAR + } PsppireOrientation; + + struct _PsppireDialog { - GtkWindow window; + PsppireWindowBase window; GtkWidget *box; /* Private */ @@ -54,22 +63,31 @@ struct _PsppireDialog ContentsAreValid contents_are_valid; gpointer validity_data; + ContentsAreValid contents_are_acceptable; + gpointer acceptable_data; + gboolean slidable; + PsppireOrientation orientation; }; struct _PsppireDialogClass { - GtkWindowClass parent_class; + PsppireWindowBaseClass parent_class; }; GType psppire_dialog_get_type (void); GtkWidget* psppire_dialog_new (void); void psppire_dialog_reload (PsppireDialog *); +void psppire_dialog_help (PsppireDialog *); void psppire_dialog_close (PsppireDialog *); gint psppire_dialog_run (PsppireDialog *); void psppire_dialog_set_valid_predicate (PsppireDialog *, ContentsAreValid, gpointer ); +void psppire_dialog_set_accept_predicate (PsppireDialog *, + ContentsAreValid, + gpointer ); +gboolean psppire_dialog_is_acceptable (const PsppireDialog *); void psppire_dialog_notify_change (PsppireDialog *); @@ -77,14 +95,7 @@ void psppire_dialog_notify_change (PsppireDialog *); GType psppire_orientation_get_type (void); -typedef enum - { - PSPPIRE_HORIZONTAL, - PSPPIRE_VERTICAL, - PSPPIRE_TABULAR - } PsppireOrientation; - -#define G_TYPE_PSPPIRE_ORIENTATION (psppire_orientation_get_type ()) +#define PSPPIRE_TYPE_ORIENTATION (psppire_orientation_get_type ()) G_END_DECLS