From 72ec802e0387953f19520cace2f63e6db919323b Mon Sep 17 00:00:00 2001 From: Robin Haberkorn Date: Wed, 1 Aug 2012 13:33:42 +0200 Subject: save/restore window positions * use X-style geometry strings * glade-configured default window sizes serve as configuration defaults * don't let glade show the windows since after they are shown, gtk_window_parse_geometry() cannot set the default size * prevent (main) window deletion from destroying the window widget so we can still query window properties (like position and size) * explicitly destroy window widgets (currently broken) * saving/restoring window position can be disabled via config file since some window managers can restore positions on their own (KDE...) --- src/experiment-player.h | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) (limited to 'src/experiment-player.h') diff --git a/src/experiment-player.h b/src/experiment-player.h index 0096b7a..9556ea8 100644 --- a/src/experiment-player.h +++ b/src/experiment-player.h @@ -50,7 +50,11 @@ gboolean load_transcript_file(const gchar *file); void show_message_dialog_gerror(GError *err); -extern GtkWidget *about_dialog; +const gchar *window_get_geometry(GtkWindow *window); + +extern GtkWidget *player_window, + *info_window, + *about_dialog; extern GtkWidget *player_widget, *controls_hbox, @@ -75,6 +79,11 @@ extern gchar *current_filename; */ void config_init_key_file(void); +void config_set_save_window_properties(gboolean enabled); +gboolean config_get_save_window_properties(void); +void config_set_window_geometry(const gchar *window, const gchar *geometry); +gchar *config_get_window_geometry(const gchar *window); + void config_set_quickopen_directory(const gchar *dir); gchar *config_get_quickopen_directory(void); void config_set_formats_directory(const gchar *dir); -- cgit v1.2.3