aboutsummaryrefslogtreecommitdiff
path: root/gui
diff options
context:
space:
mode:
authorStrangerke2011-06-29 16:15:41 +0200
committerStrangerke2011-06-29 16:15:41 +0200
commitb0c9c9122fc678074aba30068e5b36d347208e65 (patch)
tree79a99db08ec985f2e5f1e216823b1104d5b753fb /gui
parentf2f3124246a77036f843dee2d83ad28084234ebc (diff)
parentc32a3ea0d30336771bab460ecccb58c4614e6294 (diff)
downloadscummvm-rg350-b0c9c9122fc678074aba30068e5b36d347208e65.tar.gz
scummvm-rg350-b0c9c9122fc678074aba30068e5b36d347208e65.tar.bz2
scummvm-rg350-b0c9c9122fc678074aba30068e5b36d347208e65.zip
Merge branch 'master' of github.com:scummvm/scummvm into soltys_wip2
Diffstat (limited to 'gui')
-rw-r--r--gui/ThemeParser.cpp22
-rw-r--r--gui/credits.h18
-rw-r--r--gui/massadd.cpp23
-rw-r--r--gui/massadd.h1
-rw-r--r--gui/options.cpp10
-rw-r--r--gui/themes/translations.datbin201273 -> 226564 bytes
6 files changed, 47 insertions, 27 deletions
diff --git a/gui/ThemeParser.cpp b/gui/ThemeParser.cpp
index 5b1faa4075..db45b5a995 100644
--- a/gui/ThemeParser.cpp
+++ b/gui/ThemeParser.cpp
@@ -352,11 +352,8 @@ bool ThemeParser::parserCallback_drawdata(ParserNode *node) {
}
if (node->values.contains("cache")) {
- if (node->values["cache"] == "true")
- cached = true;
- else if (node->values["cache"] == "false")
- cached = false;
- else return parserError("'Parsed' value must be either true or false.");
+ if (!Common::parseBool(node->values["cache"], cached))
+ return parserError("'Parsed' value must be either true or false.");
}
if (_theme->addDrawData(node->values["id"], cached) == false)
@@ -595,9 +592,7 @@ bool ThemeParser::parserCallback_widget(ParserNode *node) {
bool enabled = true;
if (node->values.contains("enabled")) {
- if (node->values["enabled"] == "false")
- enabled = false;
- else if (node->values["enabled"] != "true")
+ if (!Common::parseBool(node->values["enabled"], enabled))
return parserError("Invalid value for Widget enabling (expecting true/false)");
}
@@ -641,9 +636,7 @@ bool ThemeParser::parserCallback_dialog(ParserNode *node) {
}
if (node->values.contains("enabled")) {
- if (node->values["enabled"] == "false")
- enabled = false;
- else if (node->values["enabled"] != "true")
+ if (!Common::parseBool(node->values["enabled"], enabled))
return parserError("Invalid value for Dialog enabling (expecting true/false)");
}
@@ -677,16 +670,19 @@ bool ThemeParser::parserCallback_import(ParserNode *node) {
bool ThemeParser::parserCallback_layout(ParserNode *node) {
int spacing = -1;
+ bool center = false;
if (node->values.contains("spacing")) {
if (!parseIntegerKey(node->values["spacing"], 1, &spacing))
return false;
}
+ Common::parseBool(node->values["center"], center);
+
if (node->values["type"] == "vertical")
- _theme->getEvaluator()->addLayout(GUI::ThemeLayout::kLayoutVertical, spacing, node->values["center"] == "true");
+ _theme->getEvaluator()->addLayout(GUI::ThemeLayout::kLayoutVertical, spacing, center);
else if (node->values["type"] == "horizontal")
- _theme->getEvaluator()->addLayout(GUI::ThemeLayout::kLayoutHorizontal, spacing, node->values["center"] == "true");
+ _theme->getEvaluator()->addLayout(GUI::ThemeLayout::kLayoutHorizontal, spacing, center);
else
return parserError("Invalid layout type. Only 'horizontal' and 'vertical' layouts allowed.");
diff --git a/gui/credits.h b/gui/credits.h
index 1b13b31829..91ed2cb26a 100644
--- a/gui/credits.h
+++ b/gui/credits.h
@@ -3,13 +3,13 @@ static const char *credits[] = {
"C1""ScummVM Team",
"",
"C1""Project Leaders",
-"C0""Max Horn",
"C0""Eugene Sandulenko",
"",
"C1""Retired Project Leaders",
"C0""James Brown",
"C0""Vincent Hamm",
"C2""ScummVM co-founder, Original Cruise/CinE author",
+"C0""Max Horn",
"C0""Ludvig Strigeus",
"C2""Original ScummVM and SimonVM author",
"",
@@ -23,6 +23,7 @@ static const char *credits[] = {
"C0""Vincent Hamm",
"C2""(retired)",
"C0""Max Horn",
+"C2""(retired)",
"C0""Travis Howell",
"C2""(retired)",
"C0""Pawel Kolodziejski",
@@ -83,6 +84,10 @@ static const char *credits[] = {
"C0""Filippos Karapetis",
"C0""Pawel Kolodziejski",
"",
+"C1""DreamWeb",
+"C0""Vladimir Menshakov",
+"C0""Torbj\366rn Andersson",
+"",
"C1""Gob",
"C0""Torbj\366rn Andersson",
"C0""Arnaud Boutonn\351",
@@ -152,6 +157,7 @@ static const char *credits[] = {
"C0""Greg Frieger",
"C0""Paul Gilbert",
"C0""Max Horn",
+"C2""(retired)",
"C0""Filippos Karapetis",
"C0""Martin Kiewitz",
"C0""Walter van Niftrik",
@@ -185,6 +191,7 @@ static const char *credits[] = {
"C0""Eugene Sandulenko",
"C0""Filippos Karapetis",
"C0""Max Horn",
+"C2""(retired)",
"C0""Paul Gilbert",
"C0""Torbj\366rn Andersson",
"",
@@ -200,6 +207,7 @@ static const char *credits[] = {
"C0""Paul Gilbert",
"C0""Sven Hesse",
"C0""Max Horn",
+"C2""(retired)",
"C0""Filippos Karapetis",
"C0""Joost Peters",
"",
@@ -264,6 +272,7 @@ static const char *credits[] = {
"",
"C1""SDL (Win/Linux/OS X/etc.)",
"C0""Max Horn",
+"C2""(retired)",
"C0""Eugene Sandulenko",
"C2""Asm routines, GFX layers",
"",
@@ -281,7 +290,7 @@ static const char *credits[] = {
"C1""Other subsystems",
"C1""Infrastructure",
"C0""Max Horn",
-"C2""Backend & Engine APIs, file API, sound mixer, audiostreams, data structures, etc.",
+"C2""Backend & Engine APIs, file API, sound mixer, audiostreams, data structures, etc. (retired)",
"C0""Eugene Sandulenko",
"C0""Johannes Schickel",
"",
@@ -316,8 +325,6 @@ static const char *credits[] = {
"C2""Wiki maintainer",
"C0""Andre Heider",
"C2""Buildbot maintainer",
-"C0""Max Horn",
-"C2""Forum, IRC channel and Mailing list maintainer",
"C0""Joost Peters",
"C2""Doxygen Project Documentation maintainer",
"C0""Jordi Vilalta Prat",
@@ -386,6 +393,7 @@ static const char *credits[] = {
"",
"C1""Mac OS X",
"C0""Max Horn",
+"C2""(retired)",
"C0""Oystein Eftevaag",
"",
"C1""Mandriva",
@@ -521,7 +529,7 @@ static const char *credits[] = {
"C2""Initial MI1 CD music support",
"C0""Quietust",
"C2""Sound support for Amiga SCUMM V2/V3 games, MM NES support",
-"C0""segra",
+"C0""Robert Crossfield",
"C2""Improved support for Apple II/C64 versions of MM",
"C0""Andreas R\366ver",
"C2""Broken Sword I & II MPEG2 cutscene support",
diff --git a/gui/massadd.cpp b/gui/massadd.cpp
index b0adce3f47..70580e8b9c 100644
--- a/gui/massadd.cpp
+++ b/gui/massadd.cpp
@@ -24,6 +24,7 @@
#include "common/config-manager.h"
#include "common/debug.h"
#include "common/system.h"
+#include "common/taskbar.h"
#include "common/translation.h"
#include "gui/launcher.h" // For addGameToConf()
@@ -60,6 +61,7 @@ MassAddDialog::MassAddDialog(const Common::FSNode &startDir)
: Dialog("MassAdd"),
_dirsScanned(0),
_oldGamesCount(0),
+ _dirTotal(0),
_okButton(0),
_dirProgressText(0),
_gameProgressText(0) {
@@ -69,14 +71,14 @@ MassAddDialog::MassAddDialog(const Common::FSNode &startDir)
// The dir we start our scan at
_scanStack.push(startDir);
-// Removed for now... Why would you put a title on mass add dialog called "Mass Add Dialog"?
-// new StaticTextWidget(this, "massadddialog_caption", "Mass Add Dialog");
+ // Removed for now... Why would you put a title on mass add dialog called "Mass Add Dialog"?
+ // new StaticTextWidget(this, "massadddialog_caption", "Mass Add Dialog");
_dirProgressText = new StaticTextWidget(this, "MassAdd.DirProgressText",
- _("... progress ..."));
+ _("... progress ..."));
_gameProgressText = new StaticTextWidget(this, "MassAdd.GameProgressText",
- _("... progress ..."));
+ _("... progress ..."));
_dirProgressText->setAlign(Graphics::kTextAlignCenter);
_gameProgressText->setAlign(Graphics::kTextAlignCenter);
@@ -130,6 +132,12 @@ struct GameDescLess {
void MassAddDialog::handleCommand(CommandSender *sender, uint32 cmd, uint32 data) {
+#if defined(USE_TASKBAR)
+ // Remove progress bar and count from taskbar
+ g_system->getTaskbarManager()->setProgressState(Common::TaskbarManager::kTaskbarNoProgress);
+ g_system->getTaskbarManager()->setCount(0);
+#endif
+
// FIXME: It's a really bad thing that we use two arbitrary constants
if (cmd == kOkCmd) {
// Sort the detected games. This is not strictly necessary, but nice for
@@ -226,10 +234,17 @@ void MassAddDialog::handleTickle() {
for (Common::FSList::const_iterator file = files.begin(); file != files.end(); ++file) {
if (file->isDirectory()) {
_scanStack.push(*file);
+
+ _dirTotal++;
}
}
_dirsScanned++;
+
+#if defined(USE_TASKBAR)
+ g_system->getTaskbarManager()->setProgressValue(_dirsScanned, _dirTotal);
+ g_system->getTaskbarManager()->setCount(_games.size());
+#endif
}
diff --git a/gui/massadd.h b/gui/massadd.h
index 15cef7ba68..7350213835 100644
--- a/gui/massadd.h
+++ b/gui/massadd.h
@@ -60,6 +60,7 @@ private:
int _dirsScanned;
int _oldGamesCount;
+ int _dirTotal;
Widget *_okButton;
StaticTextWidget *_dirProgressText;
diff --git a/gui/options.cpp b/gui/options.cpp
index b0b9fe6c90..3cc2eea6b9 100644
--- a/gui/options.cpp
+++ b/gui/options.cpp
@@ -343,12 +343,12 @@ void OptionsDialog::close() {
ConfMan.removeKey("render_mode", _domain);
}
}
-
+
// Setup graphics again if needed
if (_domain == Common::ConfigManager::kApplicationDomain && graphicsModeChanged) {
g_system->beginGFXTransaction();
g_system->setGraphicsMode(ConfMan.get("gfx_mode", _domain).c_str());
-
+
if (ConfMan.hasKey("aspect_ratio"))
g_system->setFeatureState(OSystem::kFeatureAspectRatioCorrection, ConfMan.getBool("aspect_ratio", _domain));
if (ConfMan.hasKey("fullscreen"))
@@ -383,7 +383,7 @@ void OptionsDialog::close() {
message += "\n";
message += _("the video mode could not be changed.");
}
-
+
if (gfxError & OSystem::kTransactionAspectRatioFailed) {
ConfMan.setBool("aspect_ratio", g_system->getFeatureState(OSystem::kFeatureAspectRatioCorrection), _domain);
message += "\n";
@@ -808,7 +808,7 @@ void OptionsDialog::addMIDIControls(GuiObject *boss, const Common::String &prefi
_gmDevicePopUp->appendEntry(d->getCompleteName(), d->getHandle());
} else if (d->getMusicDriverId() == "auto") {
_gmDevicePopUp->appendEntry(_("Use first available device"), d->getHandle());
- }
+ }
}
}
@@ -855,7 +855,7 @@ void OptionsDialog::addMT32Controls(GuiObject *boss, const Common::String &prefi
// Make sure the null device is the first one in the list to avoid undesired
// auto detection for users who don't have a saved setting yet.
for (MusicPlugin::List::const_iterator m = p.begin(); m != p.end(); ++m) {
- MusicDevices i = (**m)->getDevices();
+ MusicDevices i = (**m)->getDevices();
for (MusicDevices::iterator d = i.begin(); d != i.end(); ++d) {
if (d->getMusicDriverId() == "null")
_mt32DevicePopUp->appendEntry(_("Don't use Roland MT-32 music"), d->getHandle());
diff --git a/gui/themes/translations.dat b/gui/themes/translations.dat
index e8823fda8f..df15d72567 100644
--- a/gui/themes/translations.dat
+++ b/gui/themes/translations.dat
Binary files differ