aboutsummaryrefslogtreecommitdiff
path: root/engines/scumm
diff options
context:
space:
mode:
authorTravis Howell2009-08-17 01:42:39 +0000
committerTravis Howell2009-08-17 01:42:39 +0000
commit445b01676ee13fde91042094585376c2674fe606 (patch)
tree090a5a882974933d42866cd615dbb78a2e920494 /engines/scumm
parentcbffcb609f752edcc3f086521c9e0c75b5ee4cc4 (diff)
parent0d4fc8169879e0ec476b45fa58601d69e6e0db3c (diff)
downloadscummvm-rg350-445b01676ee13fde91042094585376c2674fe606.tar.gz
scummvm-rg350-445b01676ee13fde91042094585376c2674fe606.tar.bz2
scummvm-rg350-445b01676ee13fde91042094585376c2674fe606.zip
Merged revisions 43417,43420,43425-43426,43428,43431,43434,43436-43438,43440-43441,43444-43447,43449-43452 via svnmerge from
https://scummvm.svn.sourceforge.net/svnroot/scummvm/scummvm/trunk ........ r43417 | Kirben | 2009-08-16 10:53:55 +1000 (Sun, 16 Aug 2009) | 1 line Fix overflow in convertFilePath(). ........ r43420 | mthreepwood | 2009-08-16 11:43:18 +1000 (Sun, 16 Aug 2009) | 1 line Fix using the backspace key on Mac OS X in HE games. ........ r43425 | lordhoto | 2009-08-16 15:38:03 +1000 (Sun, 16 Aug 2009) | 1 line Fix options dialog's reflowLayout. ........ r43426 | lordhoto | 2009-08-16 15:38:16 +1000 (Sun, 16 Aug 2009) | 1 line Added Ninteno DS specific hack, which takes care of tab button width problems. This actually is not a NDS specific problem, but so far the NDS seems to be the only backend, which has a custom (hardcoded) dialog, which makes problems with our theme layouts. Instead of r43423, which enabled auto width calculaction for tab buttons on all platforms, this commit limits this to the Nintendo DS backend. This takes care of possible layout changes, caused by the changes of the commit. I also added a comment with possible solutions to this problem. ........ r43428 | lordhoto | 2009-08-16 16:33:34 +1000 (Sun, 16 Aug 2009) | 1 line Fix valgrind warnings. ........ r43431 | lordhoto | 2009-08-16 21:28:59 +1000 (Sun, 16 Aug 2009) | 1 line Fix bug #2838464 "SCUMM: GUI messages misaligned". ........ r43434 | dreammaster | 2009-08-16 22:03:48 +1000 (Sun, 16 Aug 2009) | 1 line Added detection entry for the UK 16 colour version ........ r43436 | lordhoto | 2009-08-16 22:10:37 +1000 (Sun, 16 Aug 2009) | 1 line Fix F5's save button in DOTT CD for me. Actually I was able to reproduce the issue before I wrote this code, after reverting it for more testing, I couldn't reproduce it anymore. Probably it was some random problem, at least this code should now assure the "Save" button's state is always matching the return value of ScummEngine::canSaveGameStateCurrently. ........ r43437 | lordhoto | 2009-08-16 22:10:51 +1000 (Sun, 16 Aug 2009) | 1 line For a better user experience, clear all meta infos, when clicking on an unused slot in the GMM save/load dialog. ........ r43438 | lordhoto | 2009-08-16 22:11:45 +1000 (Sun, 16 Aug 2009) | 1 line Cleanup. ........ r43440 | mthreepwood | 2009-08-16 23:47:48 +1000 (Sun, 16 Aug 2009) | 1 line Fix for bug #2838517 (FF: backspace does not work when typing save game name). ........ r43441 | mthreepwood | 2009-08-17 00:04:54 +1000 (Mon, 17 Aug 2009) | 1 line Introduce a better fix for the Mac OS X backspace problem by adding the workaround to default-events.cpp. ........ r43444 | lordhoto | 2009-08-17 03:35:59 +1000 (Mon, 17 Aug 2009) | 1 line Fix format arugments in LoL code. (triggered via -Wformat-security) ........ r43445 | lordhoto | 2009-08-17 03:36:16 +1000 (Mon, 17 Aug 2009) | 1 line Fix warning caused by -Wformat-security, also fixed a possible buffer overflow along with it. ........ r43446 | lordhoto | 2009-08-17 03:36:31 +1000 (Mon, 17 Aug 2009) | 1 line Fix warning caused by -Wformat-security. ........ r43447 | lordhoto | 2009-08-17 03:38:09 +1000 (Mon, 17 Aug 2009) | 1 line Fix for bug #2838568 "AMIGAOS4: Compiler error in audiostream.cpp" ........ r43449 | waltervn | 2009-08-17 05:18:19 +1000 (Mon, 17 Aug 2009) | 3 lines SCI: Stage 1 of the game detection overhaul. The end goal is to autodetect as much as possible. All SCI_VERSION_* information was removed from detection.cpp (much of it was incorrect anyway). ........ r43450 | waltervn | 2009-08-17 05:19:26 +1000 (Mon, 17 Aug 2009) | 1 line SCI: Fix regression in previous commit (QFG2). ........ r43451 | waltervn | 2009-08-17 05:20:09 +1000 (Mon, 17 Aug 2009) | 1 line SCI: Fix whitespace. ........ r43452 | sev | 2009-08-17 05:48:13 +1000 (Mon, 17 Aug 2009) | 2 lines Fix bug #2838551: "PSP: AGI games are unbearably slow" ........ svn-id: r43457
Diffstat (limited to 'engines/scumm')
-rw-r--r--engines/scumm/dialogs.cpp15
-rw-r--r--engines/scumm/dialogs.h1
-rw-r--r--engines/scumm/he/script_v60he.cpp5
-rw-r--r--engines/scumm/imuse/imuse.cpp8
4 files changed, 17 insertions, 12 deletions
diff --git a/engines/scumm/dialogs.cpp b/engines/scumm/dialogs.cpp
index 42e49afcc1..63ac952265 100644
--- a/engines/scumm/dialogs.cpp
+++ b/engines/scumm/dialogs.cpp
@@ -471,10 +471,13 @@ ScummMenuDialog::~ScummMenuDialog() {
delete _loadDialog;
}
-void ScummMenuDialog::reflowLayout() {
- if (!_vm->canSaveGameStateCurrently())
- _saveButton->setEnabled(false);
+int ScummMenuDialog::runModal() {
+ _saveButton->setEnabled(_vm->canSaveGameStateCurrently());
+ return ScummDialog::runModal();
+}
+void ScummMenuDialog::reflowLayout() {
+ _saveButton->setEnabled(_vm->canSaveGameStateCurrently());
Dialog::reflowLayout();
}
@@ -745,7 +748,7 @@ InfoDialog::InfoDialog(ScummEngine *scumm, int res)
_message = queryResString(res);
// Width and height are dummy
- _text = new StaticTextWidget(this, 4, 4, 10, 10, _message, kTextAlignCenter);
+ _text = new StaticTextWidget(this, 0, 0, 10, 10, _message, kTextAlignCenter);
}
InfoDialog::InfoDialog(ScummEngine *scumm, const String& message)
@@ -754,7 +757,7 @@ InfoDialog::InfoDialog(ScummEngine *scumm, const String& message)
_message = message;
// Width and height are dummy
- _text = new StaticTextWidget(this, 4, 4, 10, 10, _message, kTextAlignCenter);
+ _text = new StaticTextWidget(this, 0, 0, 10, 10, _message, kTextAlignCenter);
}
void InfoDialog::setInfoText(const String& message) {
@@ -775,7 +778,7 @@ void InfoDialog::reflowLayout() {
_x = (screenW - width) / 2;
_y = (screenH - height) / 2;
- _text->setSize(_w - 8, _h);
+ _text->setSize(_w, _h);
}
const Common::String InfoDialog::queryResString(int stringno) {
diff --git a/engines/scumm/dialogs.h b/engines/scumm/dialogs.h
index d4ecbde534..85b562ed67 100644
--- a/engines/scumm/dialogs.h
+++ b/engines/scumm/dialogs.h
@@ -90,6 +90,7 @@ public:
virtual void reflowLayout();
+ int runModal();
protected:
ScummEngine *_vm;
diff --git a/engines/scumm/he/script_v60he.cpp b/engines/scumm/he/script_v60he.cpp
index 79b589df00..92848ce981 100644
--- a/engines/scumm/he/script_v60he.cpp
+++ b/engines/scumm/he/script_v60he.cpp
@@ -115,9 +115,10 @@ int ScummEngine_v60he::convertFilePath(byte *dst, int dstSize) {
int r = 0;
if (dst[len - 3] == 's' && dst[len - 2] == 'g') { // Save Game File
// Change filename prefix to target name, for save game files.
- char saveName[20];
+ char saveName[40];
+ memset(saveName, 0, sizeof(saveName));
sprintf(saveName, "%s.sg%c", _targetName.c_str(), dst[len - 1]);
- memcpy(dst, saveName, 20);
+ memcpy(dst, saveName, 40);
} else if (dst[0] == '.' && dst[1] == '/') { // Game Data Path
// The default game data path is set to './' by ScummVM
r = 2;
diff --git a/engines/scumm/imuse/imuse.cpp b/engines/scumm/imuse/imuse.cpp
index 2d20b72db6..455eaac984 100644
--- a/engines/scumm/imuse/imuse.cpp
+++ b/engines/scumm/imuse/imuse.cpp
@@ -695,11 +695,11 @@ int32 IMuseInternal::doCommand_internal(int numargs, int a[]) {
return -1;
{
- char string[128];
- sprintf(string, "doCommand - %d (%d/%d)", a[0], (int)param, (int)cmd);
+ Common::String string = "doCommand - ";
+ string += Common::String::printf("%d (%d/%d)", a[0], (int)param, (int)cmd);
for (i = 1; i < numargs; ++i)
- sprintf(string + strlen(string), ", %d", a[i]);
- debugC(DEBUG_IMUSE, string);
+ string += Common::String::printf(", %d", a[i]);
+ debugC(DEBUG_IMUSE, "%s", string.c_str());
}
if (param == 0) {