Author: cazfi Date: Mon Dec 8 19:03:25 2014 New Revision: 27208 URL: http://svn.gna.org/viewcvs/freeciv?rev=27208&view=rev Log: Replaced global fullscreen mode option with gui specific options.
See patch #5490 Modified: trunk/client/gui-gtk-2.0/gui_main.c trunk/client/gui-gtk-2.0/gui_stuff.c trunk/client/gui-gtk-2.0/menu.c trunk/client/gui-gtk-3.0/gui_main.c trunk/client/gui-gtk-3.0/gui_stuff.c trunk/client/gui-gtk-3.0/menu.c trunk/client/gui-qt/fc_client.cpp trunk/client/gui-qt/gui_main.cpp trunk/client/gui-qt/menu.cpp trunk/client/options.c trunk/client/options.h Modified: trunk/client/gui-gtk-2.0/gui_main.c URL: http://svn.gna.org/viewcvs/freeciv/trunk/client/gui-gtk-2.0/gui_main.c?rev=27208&r1=27207&r2=27208&view=diff ============================================================================== --- trunk/client/gui-gtk-2.0/gui_main.c (original) +++ trunk/client/gui-gtk-2.0/gui_main.c Mon Dec 8 19:03:25 2014 @@ -1483,6 +1483,18 @@ } /************************************************************************** + Migrate gtk2 client specific options from freeciv-2.5 options +**************************************************************************/ +static void migrate_options_from_2_5(void) +{ + log_normal("Migrating gtk2-client options from freeciv-2.5 options."); + + options.gui_gtk2_fullscreen = options.migrate_fullscreen; + + options.gui_gtk2_migrated_from_2_5 = TRUE; +} + +/************************************************************************** Called from client_main(), is what it's named. **************************************************************************/ void ui_main(int argc, char **argv) @@ -1520,10 +1532,14 @@ gtk_widget_set_name(toplevel, "Freeciv"); root_window = toplevel->window; - if (options.fullscreen_mode) { + if (!options.gui_gtk2_migrated_from_2_5) { + migrate_options_from_2_5(); + } + + if (options.gui_gtk2_fullscreen) { gtk_window_fullscreen(GTK_WINDOW(toplevel)); } - + gtk_window_set_title(GTK_WINDOW (toplevel), _("Freeciv")); g_signal_connect(toplevel, "delete_event", Modified: trunk/client/gui-gtk-2.0/gui_stuff.c URL: http://svn.gna.org/viewcvs/freeciv/trunk/client/gui-gtk-2.0/gui_stuff.c?rev=27208&r1=27207&r2=27208&view=diff ============================================================================== --- trunk/client/gui-gtk-2.0/gui_stuff.c (original) +++ trunk/client/gui-gtk-2.0/gui_stuff.c Mon Dec 8 19:03:25 2014 @@ -299,7 +299,7 @@ ***********************************************************************/ void setup_dialog(GtkWidget *shell, GtkWidget *parent) { - if (options.gui_gtk2_dialogs_on_top || options.fullscreen_mode) { + if (options.gui_gtk2_dialogs_on_top || options.gui_gtk2_fullscreen) { gtk_window_set_transient_for(GTK_WINDOW(shell), GTK_WINDOW(parent)); gtk_window_set_type_hint(GTK_WINDOW(shell), Modified: trunk/client/gui-gtk-2.0/menu.c URL: http://svn.gna.org/viewcvs/freeciv/trunk/client/gui-gtk-2.0/menu.c?rev=27208&r1=27207&r2=27208&view=diff ============================================================================== --- trunk/client/gui-gtk-2.0/menu.c (original) +++ trunk/client/gui-gtk-2.0/menu.c Mon Dec 8 19:03:25 2014 @@ -808,10 +808,10 @@ *****************************************************************/ static void full_screen_callback(GtkToggleAction *action, gpointer data) { - if (options.fullscreen_mode ^ gtk_toggle_action_get_active(action)) { - options.fullscreen_mode ^= 1; - - if (options.fullscreen_mode) { + if (options.gui_gtk2_fullscreen ^ gtk_toggle_action_get_active(action)) { + options.gui_gtk2_fullscreen ^= 1; + + if (options.gui_gtk2_fullscreen) { gtk_window_fullscreen(GTK_WINDOW(toplevel)); } else { gtk_window_unfullscreen(GTK_WINDOW(toplevel)); @@ -2632,5 +2632,5 @@ view_menu_update_sensitivity(); - menus_set_active(safe_group, "FULL_SCREEN", options.fullscreen_mode); -} + menus_set_active(safe_group, "FULL_SCREEN", options.gui_gtk2_fullscreen); +} Modified: trunk/client/gui-gtk-3.0/gui_main.c URL: http://svn.gna.org/viewcvs/freeciv/trunk/client/gui-gtk-3.0/gui_main.c?rev=27208&r1=27207&r2=27208&view=diff ============================================================================== --- trunk/client/gui-gtk-3.0/gui_main.c (original) +++ trunk/client/gui-gtk-3.0/gui_main.c Mon Dec 8 19:03:25 2014 @@ -1556,6 +1556,18 @@ } /************************************************************************** + Migrate gtk3 client specific options from freeciv-2.5 options +**************************************************************************/ +static void migrate_options_from_2_5(void) +{ + log_normal("Migrating gtk3-client options from freeciv-2.5 options."); + + options.gui_gtk3_fullscreen = options.migrate_fullscreen; + + options.gui_gtk3_migrated_from_2_5 = TRUE; +} + +/************************************************************************** Called from client_main(), is what it's named. **************************************************************************/ void ui_main(int argc, char **argv) @@ -1585,8 +1597,11 @@ if (!options.gui_gtk3_migrated_from_gtk2) { migrate_options_from_gtk2(); } - - if (options.fullscreen_mode) { + if (!options.gui_gtk3_migrated_from_2_5) { + migrate_options_from_2_5(); + } + + if (options.gui_gtk3_fullscreen) { gtk_window_fullscreen(GTK_WINDOW(toplevel)); } @@ -2176,6 +2191,6 @@ if (screen_height() <= 480) { /* Freeciv is practically unusable outside fullscreen mode in so * small display */ - options.fullscreen_mode = TRUE; - } -} + options.gui_gtk3_fullscreen = TRUE; + } +} Modified: trunk/client/gui-gtk-3.0/gui_stuff.c URL: http://svn.gna.org/viewcvs/freeciv/trunk/client/gui-gtk-3.0/gui_stuff.c?rev=27208&r1=27207&r2=27208&view=diff ============================================================================== --- trunk/client/gui-gtk-3.0/gui_stuff.c (original) +++ trunk/client/gui-gtk-3.0/gui_stuff.c Mon Dec 8 19:03:25 2014 @@ -278,7 +278,7 @@ ***********************************************************************/ void setup_dialog(GtkWidget *shell, GtkWidget *parent) { - if (options.gui_gtk3_dialogs_on_top || options.fullscreen_mode) { + if (options.gui_gtk3_dialogs_on_top || options.gui_gtk3_fullscreen) { gtk_window_set_transient_for(GTK_WINDOW(shell), GTK_WINDOW(parent)); gtk_window_set_type_hint(GTK_WINDOW(shell), Modified: trunk/client/gui-gtk-3.0/menu.c URL: http://svn.gna.org/viewcvs/freeciv/trunk/client/gui-gtk-3.0/menu.c?rev=27208&r1=27207&r2=27208&view=diff ============================================================================== --- trunk/client/gui-gtk-3.0/menu.c (original) +++ trunk/client/gui-gtk-3.0/menu.c Mon Dec 8 19:03:25 2014 @@ -808,10 +808,10 @@ *****************************************************************/ static void full_screen_callback(GtkToggleAction *action, gpointer data) { - if (options.fullscreen_mode ^ gtk_toggle_action_get_active(action)) { - options.fullscreen_mode ^= 1; - - if (options.fullscreen_mode) { + if (options.gui_gtk3_fullscreen ^ gtk_toggle_action_get_active(action)) { + options.gui_gtk3_fullscreen ^= 1; + + if (options.gui_gtk3_fullscreen) { gtk_window_fullscreen(GTK_WINDOW(toplevel)); } else { gtk_window_unfullscreen(GTK_WINDOW(toplevel)); @@ -2633,5 +2633,5 @@ view_menu_update_sensitivity(); - menus_set_active(safe_group, "FULL_SCREEN", options.fullscreen_mode); -} + menus_set_active(safe_group, "FULL_SCREEN", options.gui_gtk3_fullscreen); +} Modified: trunk/client/gui-qt/fc_client.cpp URL: http://svn.gna.org/viewcvs/freeciv/trunk/client/gui-qt/fc_client.cpp?rev=27208&r1=27207&r2=27208&view=diff ============================================================================== --- trunk/client/gui-qt/fc_client.cpp (original) +++ trunk/client/gui-qt/fc_client.cpp Mon Dec 8 19:03:25 2014 @@ -285,7 +285,7 @@ update_load_page(); break; case PAGE_GAME: - if (options.fullscreen_mode){ + if (options.gui_qt_fullscreen){ gui()->main_window->showFullScreen(); gui()->mapview_wdg->showFullScreen(); } else { Modified: trunk/client/gui-qt/gui_main.cpp URL: http://svn.gna.org/viewcvs/freeciv/trunk/client/gui-qt/gui_main.cpp?rev=27208&r1=27207&r2=27208&view=diff ============================================================================== --- trunk/client/gui-qt/gui_main.cpp (original) +++ trunk/client/gui-qt/gui_main.cpp Mon Dec 8 19:03:25 2014 @@ -129,6 +129,18 @@ } /************************************************************************** + Migrate Qt client specific options from freeciv-2.5 options +**************************************************************************/ +static void migrate_options_from_2_5() +{ + log_normal("Migrating Qt-client options from freeciv-2.5 options."); + + options.gui_qt_fullscreen = options.migrate_fullscreen; + + options.gui_qt_migrated_from_2_5 = TRUE; +} + +/************************************************************************** The main loop for the UI. This is called from main(), and when it exits the client will exit. **************************************************************************/ @@ -145,6 +157,11 @@ qpm = get_icon_sprite(tileset, ICON_FREECIV)->pm; app_icon = ::QIcon(*qpm); qapp->setWindowIcon(app_icon); + + if (!options.gui_qt_migrated_from_2_5) { + migrate_options_from_2_5(); + } + freeciv_qt = new fc_client(); freeciv_qt->main(qapp); } Modified: trunk/client/gui-qt/menu.cpp URL: http://svn.gna.org/viewcvs/freeciv/trunk/client/gui-qt/menu.cpp?rev=27208&r1=27207&r2=27208&view=diff ============================================================================== --- trunk/client/gui-qt/menu.cpp (original) +++ trunk/client/gui-qt/menu.cpp Mon Dec 8 19:03:25 2014 @@ -297,7 +297,7 @@ act = menu->addAction(_("Fullscreen")); act->setShortcut(QKeySequence(tr("alt+return"))); act->setCheckable(true); - act->setChecked(options.fullscreen_mode); + act->setChecked(options.gui_qt_fullscreen); connect(act, SIGNAL(triggered()), this, SLOT(slot_fullscreen())); menu->addSeparator(); minimap_status = menu->addAction(_("Minimap")); @@ -1564,13 +1564,13 @@ ***************************************************************************/ void mr_menu::slot_fullscreen() { - if (!options.fullscreen_mode) { + if (!options.gui_qt_fullscreen) { gui()->main_window->showFullScreen(); gui()->mapview_wdg->showFullScreen(); } else { gui()->main_window->showNormal(); } - options.fullscreen_mode = !options.fullscreen_mode; + options.gui_qt_fullscreen = !options.gui_qt_fullscreen; } /*************************************************************************** Modified: trunk/client/options.c URL: http://svn.gna.org/viewcvs/freeciv/trunk/client/options.c?rev=27208&r1=27207&r2=27208&view=diff ============================================================================== --- trunk/client/options.c (original) +++ trunk/client/options.c Mon Dec 8 19:03:25 2014 @@ -79,11 +79,15 @@ .default_chat_logfile = GUI_DEFAULT_CHAT_LOGFILE, .save_options_on_exit = TRUE, - .fullscreen_mode = FALSE, /** Migrations **/ .gui_gtk3_migrated_from_gtk2 = FALSE, .gui_sdl2_migrated_from_sdl = FALSE, + .gui_gtk2_migrated_from_2_5 = FALSE, + .gui_gtk3_migrated_from_2_5 = FALSE, + .gui_qt_migrated_from_2_5 = FALSE, + + .migrate_fullscreen = FALSE, /** Local Options: **/ @@ -172,6 +176,7 @@ /* gui-gtk-2.0 client specific options. */ .gui_gtk2_default_theme_name = FC_GTK2_DEFAULT_THEME_NAME, + .gui_gtk2_fullscreen = FALSE, .gui_gtk2_map_scrollbars = FALSE, .gui_gtk2_dialogs_on_top = TRUE, .gui_gtk2_show_task_icons = TRUE, @@ -205,6 +210,7 @@ /* gui-gtk-3.0 client specific options. */ .gui_gtk3_default_theme_name = FC_GTK3_DEFAULT_THEME_NAME, + .gui_gtk3_fullscreen = FALSE, .gui_gtk3_map_scrollbars = FALSE, .gui_gtk3_dialogs_on_top = TRUE, .gui_gtk3_show_task_icons = TRUE, @@ -251,6 +257,7 @@ .gui_sdl2_use_color_cursors = TRUE, /* gui-qt client specific options. */ + .gui_qt_fullscreen = FALSE, .gui_qt_font_city_label = "Monospace,8,-1,5,50,0,0,0,0,0", .gui_qt_font_notify_label = "Monospace,8,-1,5,75,0,0,0,0,0", .gui_qt_font_spaceship_label = "Monospace,8,-1,5,50,0,0,0,0,0", @@ -2222,6 +2229,10 @@ COC_MAPIMG, GUI_STUB, GUI_DEFAULT_MAPIMG_FILENAME, NULL), /* gui-gtk-2.0 client specific options. */ + GEN_BOOL_OPTION(gui_gtk2_fullscreen, N_("Fullscreen"), + N_("If this option is set the client will use the " + "whole screen area for drawing."), + COC_INTERFACE, GUI_GTK2, FALSE, NULL), GEN_BOOL_OPTION(gui_gtk2_map_scrollbars, N_("Show map scrollbars"), N_("Disable this option to hide the scrollbars on the " "map view."), @@ -2432,6 +2443,10 @@ "Serif 10", NULL), /* gui-gtk-3.0 client specific options. */ + GEN_BOOL_OPTION(gui_gtk3_fullscreen, N_("Fullscreen"), + N_("If this option is set the client will use the " + "whole screen area for drawing."), + COC_INTERFACE, GUI_GTK3, FALSE, NULL), GEN_BOOL_OPTION(gui_gtk3_map_scrollbars, N_("Show map scrollbars"), N_("Disable this option to hide the scrollbars on the " "map view."), @@ -2678,6 +2693,10 @@ COC_INTERFACE, GUI_SDL2, TRUE, NULL), /* gui-qt client specific options. */ + GEN_BOOL_OPTION(gui_qt_fullscreen, N_("Fullscreen"), + N_("If this option is set the client will use the " + "whole screen area for drawing."), + COC_INTERFACE, GUI_QT, FALSE, NULL), GEN_FONT_OPTION(gui_qt_font_city_label, "city_label", N_("City Label"), N_("This font is used to display the city labels on city " @@ -5308,8 +5327,8 @@ options.save_options_on_exit = secfile_lookup_bool_default(sf, options.save_options_on_exit, "%s.save_options_on_exit", prefix); - options.fullscreen_mode = - secfile_lookup_bool_default(sf, options.fullscreen_mode, + options.migrate_fullscreen = + secfile_lookup_bool_default(sf, options.migrate_fullscreen, "%s.fullscreen_mode", prefix); /* Settings migrations */ @@ -5319,6 +5338,15 @@ options.gui_sdl2_migrated_from_sdl = secfile_lookup_bool_default(sf, options.gui_sdl2_migrated_from_sdl, "%s.migration_sdl2_from_sdl", prefix); + options.gui_gtk2_migrated_from_2_5 = + secfile_lookup_bool_default(sf, options.gui_gtk3_migrated_from_2_5, + "%s.migration_gtk2_from_2_5", prefix); + options.gui_gtk3_migrated_from_2_5 = + secfile_lookup_bool_default(sf, options.gui_gtk2_migrated_from_2_5, + "%s.migration_gtk3_from_2_5", prefix); + options.gui_qt_migrated_from_2_5 = + secfile_lookup_bool_default(sf, options.gui_qt_migrated_from_2_5, + "%s.migration_qt_from_2_5", prefix); /* Backwards compatibility for removed options replaced by entirely "new" * options. The equivalent "new" option will override these, if set. */ @@ -5399,13 +5427,19 @@ secfile_insert_str(sf, VERSION_STRING, "client.version"); secfile_insert_bool(sf, options.save_options_on_exit, "client.save_options_on_exit"); - secfile_insert_bool(sf, options.fullscreen_mode, "client.fullscreen_mode"); + secfile_insert_bool_comment(sf, options.migrate_fullscreen, "deprecated", "client.fullscreen_mode"); /* Migrations */ secfile_insert_bool(sf, options.gui_gtk3_migrated_from_gtk2, "client.migration_gtk3_from_gtk2"); secfile_insert_bool(sf, options.gui_sdl2_migrated_from_sdl, "client.migration_sdl2_from_sdl"); + secfile_insert_bool(sf, options.gui_gtk2_migrated_from_2_5, + "client.migration_gtk2_from_2_5"); + secfile_insert_bool(sf, options.gui_gtk3_migrated_from_2_5, + "client.migration_gtk3_from_2_5"); + secfile_insert_bool(sf, options.gui_qt_migrated_from_2_5, + "client.migration_qt_from_2_5"); client_options_iterate_all(poption) { client_option_save(poption, sf); Modified: trunk/client/options.h URL: http://svn.gna.org/viewcvs/freeciv/trunk/client/options.h?rev=27208&r1=27207&r2=27208&view=diff ============================================================================== --- trunk/client/options.h (original) +++ trunk/client/options.h Mon Dec 8 19:03:25 2014 @@ -98,11 +98,15 @@ char default_chat_logfile[512]; bool save_options_on_exit; - bool fullscreen_mode; /** Migrations **/ bool gui_gtk3_migrated_from_gtk2; bool gui_sdl2_migrated_from_sdl; + bool gui_gtk2_migrated_from_2_5; + bool gui_gtk3_migrated_from_2_5; + bool gui_qt_migrated_from_2_5; + + bool migrate_fullscreen; /** Local Options: **/ @@ -182,6 +186,7 @@ /* gui-gtk-2.0 client specific options. */ #define FC_GTK2_DEFAULT_THEME_NAME "Freeciv" char gui_gtk2_default_theme_name[512]; + bool gui_gtk2_fullscreen; bool gui_gtk2_map_scrollbars; bool gui_gtk2_dialogs_on_top; bool gui_gtk2_show_task_icons; @@ -216,6 +221,7 @@ /* gui-gtk-3.0 client specific options. */ #define FC_GTK3_DEFAULT_THEME_NAME "Freeciv" char gui_gtk3_default_theme_name[512]; + bool gui_gtk3_fullscreen; bool gui_gtk3_map_scrollbars; bool gui_gtk3_dialogs_on_top; bool gui_gtk3_show_task_icons; @@ -264,6 +270,7 @@ bool gui_sdl2_use_color_cursors; /* gui-qt client specific options. */ + bool gui_qt_fullscreen; bool gui_qt_allied_chat_only; char gui_qt_font_city_label[512]; char gui_qt_font_notify_label[512]; _______________________________________________ Freeciv-commits mailing list Freeciv-commits@gna.org https://mail.gna.org/listinfo/freeciv-commits