2 * dialogs.h - this file is part of Geany, a fast and lightweight IDE
4 * Copyright 2005-2012 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
5 * Copyright 2006-2012 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License as published by
9 * the Free Software Foundation; either version 2 of the License, or
10 * (at your option) any later version.
12 * This program is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 * GNU General Public License for more details.
17 * You should have received a copy of the GNU General Public License along
18 * with this program; if not, write to the Free Software Foundation, Inc.,
19 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
24 * File related dialogs, miscellaneous dialogs, font dialog.
28 #ifndef GEANY_DIALOGS_H
29 #define GEANY_DIALOGS_H 1
33 #include "gtkcompat.h"
37 gboolean
dialogs_show_question(const gchar
*text
, ...) G_GNUC_PRINTF (1, 2);
39 void dialogs_show_msgbox(GtkMessageType type
, const gchar
*text
, ...) G_GNUC_PRINTF (2, 3);
41 gboolean
dialogs_show_save_as(void);
43 gboolean
dialogs_show_input_numeric(const gchar
*title
, const gchar
*label_text
,
44 gdouble
*value
, gdouble min
, gdouble max
, gdouble step
);
46 gchar
*dialogs_show_input(const gchar
*title
, GtkWindow
*parent
,
47 const gchar
*label_text
, const gchar
*default_text
);
52 typedef void (*GeanyInputCallback
)(const gchar
*text
, gpointer data
);
55 void dialogs_show_open_file(void);
57 gboolean
dialogs_show_unsaved_file(GeanyDocument
*doc
);
59 void dialogs_show_open_font(void);
61 void dialogs_show_word_count(void);
63 void dialogs_show_color(gchar
*colour
);
65 gchar
*dialogs_show_input_goto_line(const gchar
*title
, GtkWindow
*parent
,
66 const gchar
*label_text
, const gchar
*default_text
);
68 GtkWidget
*dialogs_show_input_persistent(const gchar
*title
, GtkWindow
*parent
,
69 const gchar
*label_text
, const gchar
*default_text
, GeanyInputCallback input_cb
, gpointer input_cb_data
);
71 void dialogs_show_file_properties(GeanyDocument
*doc
);
73 gboolean
dialogs_show_question_full(GtkWidget
*parent
, const gchar
*yes_btn
, const gchar
*no_btn
,
74 const gchar
*extra_text
, const gchar
*main_text
, ...) G_GNUC_PRINTF (5, 6);
76 gint
dialogs_show_prompt(GtkWidget
*parent
,
77 const gchar
*btn_1
, GtkResponseType response_1
,
78 const gchar
*btn_2
, GtkResponseType response_2
,
79 const gchar
*btn_3
, GtkResponseType response_3
,
80 const gchar
*extra_text
, const gchar
*main_text
, ...) G_GNUC_PRINTF (9, 10);
82 void dialogs_show_msgbox_with_secondary(GtkMessageType type
, const gchar
*text
, const gchar
*secondary
);
84 #endif /* GEANY_PRIVATE */
88 #endif /* GEANY_DIALOGS_H */