Author: sapient
Date: Sat Apr 7 05:35:50 2007
New Revision: 16659
URL: http://svn.gna.org/viewcvs/wesnoth?rev=16659&view=rev
Log:
silene's patch #716: Make --nogui actually useful on its own
Modified:
trunk/src/game.cpp
trunk/src/preferences.cpp
trunk/src/preferences.hpp
trunk/src/video.cpp
Modified: trunk/src/game.cpp
URL:
http://svn.gna.org/viewcvs/wesnoth/trunk/src/game.cpp?rev=16659&r1=16658&r2=16659&view=diff
==============================================================================
--- trunk/src/game.cpp (original)
+++ trunk/src/game.cpp Sat Apr 7 05:35:50 2007
@@ -164,6 +164,7 @@
no_gui_(false), use_caching_(true), force_valid_cache_(false),
force_bpp_(-1), disp_(NULL), loaded_game_show_replay_(false)
{
+ bool no_sound = false;
for(arg_ = 1; arg_ != argc_; ++arg_) {
const std::string val(argv_[arg_]);
if(val.empty()) {
@@ -215,6 +216,8 @@
}
} else if(val == "--nogui") {
no_gui_ = true;
+ no_sound = true;
+ preferences::disable_preferences_save();
} else if(val == "--windowed" || val == "-w") {
preferences::set_fullscreen(false);
} else if(val == "--fullscreen" || val == "-f") {
@@ -231,10 +234,7 @@
game_config::no_delay = true;
} else if (val.substr(0, 6) == "--log-") {
} else if(val == "--nosound") {
- preferences::set_turn_bell(false);
- preferences::set_UI_sound(false);
- preferences::set_sound(false);
- preferences::set_music(false);
+ no_sound = true;
} else if(val[0] == '-') {
std::cerr << "unknown option: " << val << std::endl;
throw config::error("unknown option");
@@ -255,13 +255,14 @@
}
}
- if (preferences::sound_on() || preferences::music_on() ||
preferences::turn_bell() || preferences::UI_sound_on()) {
- if(!sound::init_sound()) {
- preferences::set_sound(false);
- preferences::set_music(false);
- preferences::set_turn_bell(false);
- preferences::set_UI_sound(false);
- }
+ // disable sound in nosound mode, or when sound engine failed to
initialize
+ if (no_sound || ((preferences::sound_on() || preferences::music_on() ||
+ preferences::turn_bell() ||
preferences::UI_sound_on()) &&
+ !sound::init_sound())) {
+ preferences::set_sound(false);
+ preferences::set_music(false);
+ preferences::set_turn_bell(false);
+ preferences::set_UI_sound(false);
}
}
Modified: trunk/src/preferences.cpp
URL:
http://svn.gna.org/viewcvs/wesnoth/trunk/src/preferences.cpp?rev=16659&r1=16658&r2=16659&view=diff
==============================================================================
--- trunk/src/preferences.cpp (original)
+++ trunk/src/preferences.cpp Sat Apr 7 05:35:50 2007
@@ -52,6 +52,8 @@
bool lobby_minimaps = true;
+bool no_preferences_save = false;
+
std::set<std::string> encountered_units_set;
std::set<t_translation::t_letter> encountered_terrains_set;
@@ -96,6 +98,8 @@
encountered_units_set.clear();
encountered_terrains_set.clear();
+
+ if (no_preferences_save) return;
try {
scoped_ostream prefs_file = ostream_file(get_prefs_file());
write(*prefs_file, prefs);
@@ -110,6 +114,10 @@
std::string get(const std::string key) {
return prefs[key];
+}
+
+void disable_preferences_save() {
+ no_preferences_save = true;
}
config* get_prefs(){
Modified: trunk/src/preferences.hpp
URL:
http://svn.gna.org/viewcvs/wesnoth/trunk/src/preferences.hpp?rev=16659&r1=16658&r2=16659&view=diff
==============================================================================
--- trunk/src/preferences.hpp (original)
+++ trunk/src/preferences.hpp Sat Apr 7 05:35:50 2007
@@ -46,6 +46,8 @@
// low-level, should be seen only by preferences_display ?
void set(std::string key, std::string value);
std::string get(const std::string key);
+
+ void disable_preferences_save();
config* get_prefs();
Modified: trunk/src/video.cpp
URL:
http://svn.gna.org/viewcvs/wesnoth/trunk/src/video.cpp?rev=16659&r1=16658&r2=16659&view=diff
==============================================================================
--- trunk/src/video.cpp (original)
+++ trunk/src/video.cpp Sat Apr 7 05:35:50 2007
@@ -265,6 +265,7 @@
int CVideo::setMode( int x, int y, int bits_per_pixel, int flags )
{
update_rects.clear();
+ if (fake_screen) return 0;
mode_changed_ = true;
flags = get_flags(flags);
_______________________________________________
Wesnoth-commits mailing list
[email protected]
https://mail.gna.org/listinfo/wesnoth-commits