5872558fee
* Added a cancel button returning 1 if clicked * Renamed the Close button to Ok, still returning 0 if clicked * Added --ok-label=TEXT option to change the Ok button label * Added --cancel-label=TEXT option to change the Cancel button label * Added --checkbox=TEXT option to show an "I Agree and accept the terms" checkbox If --checkbox is enabled, the Ok button will be disabled if the checkbox isn't checked.
200 lines
4.7 KiB
C
200 lines
4.7 KiB
C
#ifndef ZENITY_H
|
|
#define ZENITY_H
|
|
|
|
#include <gtk/gtk.h>
|
|
|
|
G_BEGIN_DECLS
|
|
|
|
#ifdef ENABLE_NLS
|
|
#include <libintl.h>
|
|
#define _(String) dgettext(GETTEXT_PACKAGE,String)
|
|
#ifdef gettext_noop
|
|
#define N_(String) gettext_noop(String)
|
|
#else
|
|
#define N_(String) (String)
|
|
#endif
|
|
#else /* NLS is disabled */
|
|
#define _(String) (String)
|
|
#define N_(String) (String)
|
|
#define textdomain(String) (String)
|
|
#define gettext(String) (String)
|
|
#define dgettext(Domain,String) (String)
|
|
#define dcgettext(Domain,String,Type) (String)
|
|
#define bindtextdomain(Domain,Directory) (Domain)
|
|
#endif
|
|
|
|
typedef struct {
|
|
gchar *dialog_title;
|
|
gchar *window_icon;
|
|
gint width;
|
|
gint height;
|
|
gint exit_code;
|
|
gint timeout_delay;
|
|
} ZenityData;
|
|
|
|
typedef enum {
|
|
ZENITY_OK,
|
|
ZENITY_CANCEL,
|
|
ZENITY_ESC,
|
|
ZENITY_ERROR,
|
|
ZENITY_EXTRA,
|
|
ZENITY_TIMEOUT
|
|
} ZenityExitCode;
|
|
|
|
typedef struct {
|
|
gchar *dialog_text;
|
|
gint day;
|
|
gint month;
|
|
gint year;
|
|
gchar *date_format;
|
|
} ZenityCalendarData;
|
|
|
|
typedef enum {
|
|
ZENITY_MSG_WARNING,
|
|
ZENITY_MSG_QUESTION,
|
|
ZENITY_MSG_ERROR,
|
|
ZENITY_MSG_INFO
|
|
} MsgMode;
|
|
|
|
typedef struct {
|
|
gchar *dialog_text;
|
|
MsgMode mode;
|
|
gboolean no_wrap;
|
|
gchar *ok_label;
|
|
gchar *cancel_label;
|
|
} ZenityMsgData;
|
|
|
|
typedef struct {
|
|
gchar *dialog_text;
|
|
gint value;
|
|
gint min_value;
|
|
gint max_value;
|
|
gint step;
|
|
gboolean print_partial;
|
|
gboolean hide_value;
|
|
} ZenityScaleData;
|
|
|
|
typedef struct {
|
|
gchar *uri;
|
|
gboolean multi;
|
|
gboolean directory;
|
|
gboolean save;
|
|
gboolean confirm_overwrite;
|
|
gchar *separator;
|
|
gchar **filter;
|
|
} ZenityFileData;
|
|
|
|
typedef struct {
|
|
gchar *dialog_text;
|
|
gchar *entry_text;
|
|
gboolean hide_text;
|
|
const gchar **data;
|
|
} ZenityEntryData;
|
|
|
|
typedef struct {
|
|
gchar *dialog_text;
|
|
gchar *entry_text;
|
|
gboolean pulsate;
|
|
gboolean autoclose;
|
|
gboolean autokill;
|
|
gdouble percentage;
|
|
gboolean no_cancel;
|
|
} ZenityProgressData;
|
|
|
|
typedef struct {
|
|
gchar *uri;
|
|
gboolean editable;
|
|
gboolean no_wrap;
|
|
gchar *font;
|
|
GtkTextBuffer *buffer;
|
|
gchar *ok_label;
|
|
gchar *cancel_label;
|
|
gchar *checkbox;
|
|
} ZenityTextData;
|
|
|
|
typedef struct {
|
|
gchar *dialog_text;
|
|
GSList *columns;
|
|
gboolean checkbox;
|
|
gboolean radiobox;
|
|
gboolean hide_header;
|
|
gchar *separator;
|
|
gboolean multi;
|
|
gboolean editable;
|
|
gchar *print_column;
|
|
gchar *hide_column;
|
|
const gchar **data;
|
|
} ZenityTreeData;
|
|
|
|
#ifdef HAVE_LIBNOTIFY
|
|
typedef struct {
|
|
gchar *notification_text;
|
|
gboolean listen;
|
|
} ZenityNotificationData;
|
|
#endif
|
|
|
|
typedef struct {
|
|
gchar *color;
|
|
gboolean show_palette;
|
|
} ZenityColorData;
|
|
|
|
typedef struct {
|
|
GSList *list;
|
|
GSList *list_widgets;
|
|
gchar *dialog_text;
|
|
gchar *separator;
|
|
gchar *date_format;
|
|
} ZenityFormsData;
|
|
|
|
typedef enum {
|
|
ZENITY_FORMS_ENTRY,
|
|
ZENITY_FORMS_PASSWORD,
|
|
ZENITY_FORMS_CALENDAR
|
|
} ZenityFormsType;
|
|
|
|
typedef struct {
|
|
gchar *option_value;
|
|
ZenityFormsType type;
|
|
GtkWidget *forms_widget;
|
|
} ZenityFormsValue;
|
|
|
|
typedef struct {
|
|
gboolean username;
|
|
gchar *password;
|
|
GtkWidget *entry_username;
|
|
GtkWidget *entry_password;
|
|
} ZenityPasswordData;
|
|
|
|
void zenity_calendar (ZenityData *data,
|
|
ZenityCalendarData *calendar_data);
|
|
void zenity_msg (ZenityData *data,
|
|
ZenityMsgData *msg_data);
|
|
void zenity_fileselection (ZenityData *data,
|
|
ZenityFileData *file_data);
|
|
void zenity_entry (ZenityData *data,
|
|
ZenityEntryData *entry_data);
|
|
void zenity_progress (ZenityData *data,
|
|
ZenityProgressData *progress_data);
|
|
void zenity_text (ZenityData *data,
|
|
ZenityTextData *text_data);
|
|
void zenity_tree (ZenityData *data,
|
|
ZenityTreeData *tree_data);
|
|
#ifdef HAVE_LIBNOTIFY
|
|
void zenity_notification (ZenityData *data,
|
|
ZenityNotificationData *notification_data);
|
|
#endif
|
|
|
|
void zenity_colorselection (ZenityData *data,
|
|
ZenityColorData *notification_data);
|
|
void zenity_scale (ZenityData *data,
|
|
ZenityScaleData *scale_data);
|
|
void zenity_about (ZenityData *data);
|
|
|
|
void zenity_password_dialog (ZenityData *data,
|
|
ZenityPasswordData *password_data);
|
|
void zenity_forms_dialog (ZenityData *data,
|
|
ZenityFormsData *forms_data);
|
|
G_END_DECLS
|
|
|
|
#endif /* ZENITY_H */
|