From bda0a18eeeb8e8c3f2bc6ba947878075a2f355bc Mon Sep 17 00:00:00 2001 From: Max Horn Date: Tue, 22 Jul 2003 16:05:51 +0000 Subject: [PATCH] made about dialog global (so that it can be used from the launcher and from sky/simon; also added our copyright to it svn-id: r9122 --- gui/about.cpp | 48 +++++++++++++++++++++++++++++++++++++++++++++++ gui/about.h | 31 ++++++++++++++++++++++++++++++ gui/module.mk | 1 + scumm/dialogs.cpp | 16 +--------------- scumm/dialogs.h | 6 +----- 5 files changed, 82 insertions(+), 20 deletions(-) create mode 100644 gui/about.cpp create mode 100644 gui/about.h diff --git a/gui/about.cpp b/gui/about.cpp new file mode 100644 index 00000000000..dc402f73dc7 --- /dev/null +++ b/gui/about.cpp @@ -0,0 +1,48 @@ +/* ScummVM - Scumm Interpreter + * Copyright (C) 2002-2003 The ScummVM project + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * + * $Header$ + */ + +#include "stdafx.h" +#include "about.h" +#include "newgui.h" +#include "common/engine.h" +#include "common/str.h" + +AboutDialog::AboutDialog(NewGui *gui) + : Dialog(gui, 10, 20, 300, 124) { + addButton((_w - kButtonWidth)/2, 100, "OK", kCloseCmd, '\r'); // Close dialog - FIXME + + ScummVM::String version("ScummVM "); + version += gScummVMVersion; + new StaticTextWidget(this, 10, 10, _w - 20, 16, version, kTextAlignCenter); + + ScummVM::String date("(built on "); + date += gScummVMBuildDate; + date += ')'; + new StaticTextWidget(this, 10, 20, _w - 20, 16, date, kTextAlignCenter); + + // TODO: Probably should display something regarding GPL + new StaticTextWidget(this, 10, 35, _w - 20, 16, "Copyright (C) 2002-2003 The ScummVM project", kTextAlignCenter); + new StaticTextWidget(this, 10, 45, _w - 20, 16, "http://www.scummvm.org", kTextAlignCenter); + + new StaticTextWidget(this, 10, 65, _w - 20, 16, "SCUMM Games (C) LucasArts", kTextAlignCenter); + new StaticTextWidget(this, 10, 75, _w - 20, 16, "Simon the Sorcerer (C) Adventuresoft", kTextAlignCenter); + new StaticTextWidget(this, 10, 85, _w - 20, 16, "Beneath a Steel Sky (C) Revolution", kTextAlignCenter); +} + diff --git a/gui/about.h b/gui/about.h new file mode 100644 index 00000000000..24534478968 --- /dev/null +++ b/gui/about.h @@ -0,0 +1,31 @@ +/* ScummVM - Scumm Interpreter + * Copyright (C) 2002-2003 The ScummVM project + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * + * $Header$ + */ + +#ifndef ABOUT_DIALOG_H +#define ABOUT_DIALOG_H + +#include "dialog.h" + +class AboutDialog : public Dialog { +public: + AboutDialog(NewGui *gui); +}; + +#endif diff --git a/gui/module.mk b/gui/module.mk index b31d0e7e31a..76c4ee20841 100644 --- a/gui/module.mk +++ b/gui/module.mk @@ -1,6 +1,7 @@ MODULE := gui MODULE_OBJS = \ + gui/about.o \ gui/browser.o \ gui/chooser.o \ gui/console.o \ diff --git a/scumm/dialogs.cpp b/scumm/dialogs.cpp index 5c4901cd006..e7f6fe8d543 100644 --- a/scumm/dialogs.cpp +++ b/scumm/dialogs.cpp @@ -258,7 +258,7 @@ SaveLoadDialog::SaveLoadDialog(NewGui *gui, Scumm *scumm) // // Create the sub dialog(s) // - _aboutDialog = new AboutDialog(gui, scumm); + _aboutDialog = new AboutDialog(gui); #ifndef DISABLE_HELP _helpDialog = new HelpDialog(gui, scumm); #endif @@ -577,20 +577,6 @@ void OptionsDialog::handleCommand(CommandSender *sender, uint32 cmd, uint32 data } } -#pragma mark - - -AboutDialog::AboutDialog(NewGui *gui, Scumm *scumm) - : ScummDialog(gui, scumm, 30, 20, 260, 124) { - addButton((_w - kButtonWidth)/2, 100, queryCustomString(23), kCloseCmd, 'C'); // Close dialog - FIXME - new StaticTextWidget(this, 10, 10, 240, 16, gScummVMFullVersion, kTextAlignCenter); -// new StaticTextWidget(this, 10, 20, 240, 16, "(built on " __DATE__ ")", kTextAlignCenter); - - new StaticTextWidget(this, 10, 30, 240, 16, "http://www.scummvm.org", kTextAlignCenter); - new StaticTextWidget(this, 10, 50, 240, 16, "SCUMM Games (c) LucasArts", kTextAlignCenter); - new StaticTextWidget(this, 10, 64, 240, 16, "Simon the Sorcerer (c) Adventuresoft", kTextAlignCenter); - new StaticTextWidget(this, 10, 78, 240, 16, "Beneath a Steel Sky (c) Revolution", kTextAlignCenter); -} - #ifndef DISABLE_HELP #pragma mark - diff --git a/scumm/dialogs.h b/scumm/dialogs.h index d863ec7f417..e1cf5350806 100644 --- a/scumm/dialogs.h +++ b/scumm/dialogs.h @@ -22,6 +22,7 @@ #define SCUMM_DIALOGS_H #include "common/str.h" +#include "gui/about.h" #include "gui/dialog.h" #ifndef DISABLE_HELP @@ -79,11 +80,6 @@ protected: void switchToLoadMode(); }; -class AboutDialog : public ScummDialog { -public: - AboutDialog(NewGui *gui, Scumm *scumm); -}; - #ifndef DISABLE_HELP class HelpDialog : public ScummDialog {