Merge pull request #404 from ntrel/enum-base
[geany-mirror.git] / src / win32.h
blobad1af903d0f1f8091c14c4d16ad9a862930b7728
1 /*
2 * win32.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.
22 #ifndef GEANY_WIN32_H
23 #define GEANY_WIN32_H 1
25 #include "document.h"
27 #include "gtkcompat.h"
30 #ifdef G_OS_WIN32
32 G_BEGIN_DECLS
34 void win32_show_pref_file_dialog(GtkEntry *item);
36 gchar *win32_show_file_dialog(GtkWindow *parent, const gchar *title, const gchar *initial_dir);
38 gboolean win32_show_document_open_dialog(GtkWindow *parent, const gchar *title, const gchar *initial_dir);
40 gchar *win32_show_document_save_as_dialog(GtkWindow *parent, const gchar *title,
41 GeanyDocument *doc);
43 void win32_show_font_dialog(void);
45 void win32_show_color_dialog(const gchar *colour);
47 gboolean win32_message_dialog(GtkWidget *parent, GtkMessageType type, const gchar *msg);
49 void win32_open_browser(const gchar *uri);
51 gchar *win32_show_project_open_dialog(GtkWidget *parent, const gchar *title,
52 const gchar *initial_dir, gboolean allow_new_file,
53 gboolean project_file_filter);
55 gchar *win32_show_folder_dialog(GtkWidget *parent, const gchar *title, const gchar *initial_dir);
57 gint win32_check_write_permission(const gchar *dir);
59 void win32_init_debug_code(void);
61 void win32_set_working_directory(const gchar *dir);
63 gboolean win32_get_exit_status(GPid child_pid);
65 gboolean win32_spawn(const gchar *dir, gchar **argv, gchar **env, GSpawnFlags flags,
66 gchar **std_out, gchar **std_err, gint *exit_status, GError **error);
68 gchar *win32_get_shortcut_target(const gchar *file_name);
70 gchar *win32_get_installation_dir(void);
72 gchar *win32_expand_environment_variables(const gchar *str);
74 gchar *win32_get_user_config_dir(void);
76 G_END_DECLS
78 #endif /* G_OS_WIN32 */
80 #endif /* GEANY_WIN32_H */