1 /* 2 * Claws Mail -- a GTK+ based, lightweight, and fast e-mail client 3 * Copyright (C) 1999-2017 Hiroyuki Yamamoto and the Claws Mail team 4 * 5 * This program is free software; you can redistribute it and/or modify 6 * it under the terms of the GNU General Public License as published by 7 * the Free Software Foundation; either version 3 of the License, or 8 * (at your option) any later version. 9 * 10 * This program is distributed in the hope that it will be useful, 11 * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 * GNU General Public License for more details. 14 * 15 * You should have received a copy of the GNU General Public License 16 * along with this program. If not, see <http://www.gnu.org/licenses/>. 17 */ 18 19 #ifndef __ALERTPANEL_H__ 20 #define __ALERTPANEL_H__ 21 22 #include <glib.h> 23 #include <gtk/gtk.h> 24 25 typedef enum 26 { 27 G_ALERTDEFAULT, 28 G_ALERTALTERNATE, 29 G_ALERTOTHER, 30 G_ALERTCANCEL, 31 G_ALERTWAIT, 32 33 G_ALERTDISABLE = 1 << 16 34 } AlertValue; 35 36 typedef enum 37 { 38 ALERT_NOTICE, 39 ALERT_QUESTION, 40 ALERT_WARNING, 41 ALERT_ERROR 42 } AlertType; 43 #define G_ALERT_VALUE_MASK 0x0000ffff 44 45 typedef enum 46 { 47 ALERTFOCUS_FIRST, 48 ALERTFOCUS_SECOND, 49 ALERTFOCUS_THIRD 50 } AlertFocus; 51 52 #define ALERTPANEL_OPENED_HOOKLIST "alertpanel_opened_hooklist" 53 54 AlertValue alertpanel_full(const gchar *title, const gchar *message, 55 const gchar *button1_label, 56 const gchar *button2_label, 57 const gchar *button3_label, 58 AlertFocus focus, 59 gboolean can_disable, 60 GtkWidget *widget, 61 AlertType alert_type); 62 63 AlertValue alertpanel (const gchar *title, 64 const gchar *message, 65 const gchar *button1_label, 66 const gchar *button2_label, 67 const gchar *button3_label, 68 AlertFocus focus); 69 70 AlertValue alertpanel_with_widget (const gchar *title, 71 const gchar *message, 72 const gchar *button1_label, 73 const gchar *button2_label, 74 const gchar *button3_label, 75 AlertFocus focus, 76 gboolean can_disable, 77 GtkWidget *widget); 78 79 void alertpanel_notice (const gchar *format, 80 ...) G_GNUC_PRINTF(1, 2); 81 void alertpanel_warning (const gchar *format, 82 ...) G_GNUC_PRINTF(1, 2); 83 void alertpanel_error (const gchar *format, 84 ...) G_GNUC_PRINTF(1, 2); 85 void alertpanel_error_log(const gchar *format, 86 ...) G_GNUC_PRINTF(1, 2); 87 88 #endif /* __ALERTPANEL_H__ */ 89