diff --git a/stella/src/gui/Dialog.cxx b/stella/src/gui/Dialog.cxx index 4a2b29629..978310edc 100644 --- a/stella/src/gui/Dialog.cxx +++ b/stella/src/gui/Dialog.cxx @@ -13,7 +13,7 @@ // See the file "license" for information on usage and redistribution of // this file, and for a DISCLAIMER OF ALL WARRANTIES. // -// $Id: Dialog.cxx,v 1.32 2005-10-14 13:50:00 stephena Exp $ +// $Id: Dialog.cxx,v 1.33 2005-11-13 22:25:47 stephena Exp $ // // Based on code from ScummVM - Scumm Interpreter // Copyright (C) 2002-2004 The ScummVM project @@ -224,7 +224,6 @@ void Dialog::handleMouseDown(int x, int y, int button, int clickCount) _focusedWidget = Widget::setFocusForChain(this, getFocusList(), w, 0); } - if(w) w->handleMouseDown(x - (w->getAbsX() - _x), y - (w->getAbsY() - _y), button, clickCount); } diff --git a/stella/src/gui/EventMappingDialog.cxx b/stella/src/gui/EventMappingWidget.cxx similarity index 63% rename from stella/src/gui/EventMappingDialog.cxx rename to stella/src/gui/EventMappingWidget.cxx index 02b02247e..8a8b1a905 100644 --- a/stella/src/gui/EventMappingDialog.cxx +++ b/stella/src/gui/EventMappingWidget.cxx @@ -13,7 +13,7 @@ // See the file "license" for information on usage and redistribution of // this file, and for a DISCLAIMER OF ALL WARRANTIES. // -// $Id: EventMappingDialog.cxx,v 1.20 2005-11-13 16:17:10 stephena Exp $ +// $Id: EventMappingWidget.cxx,v 1.1 2005-11-13 22:25:47 stephena Exp $ // // Based on code from ScummVM - Scumm Interpreter // Copyright (C) 2002-2004 The ScummVM project @@ -22,55 +22,58 @@ #include "OSystem.hxx" #include "Widget.hxx" #include "StringListWidget.hxx" -#include "PopUpWidget.hxx" -#include "Dialog.hxx" #include "GuiUtils.hxx" #include "Event.hxx" #include "EventHandler.hxx" -#include "EventMappingDialog.hxx" +#include "EventMappingWidget.hxx" #include "bspf.hxx" // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -EventMappingDialog::EventMappingDialog(OSystem* osystem, DialogContainer* parent, - int x, int y, int w, int h) - : Dialog(osystem, parent, x, y, w, h), - myActionSelected(-1), - myRemapStatus(false) +EventMappingWidget::EventMappingWidget(GuiObject* boss, int x, int y, int w, int h) + : Widget(boss, x, y, w, h), + CommandSender(boss), + myActionSelected(-1), + myRemapStatus(false) { - // Add Default and OK buttons - myDefaultsButton = addButton(10, h - 24, "Defaults", kDefaultsCmd, 0); - myOKButton = addButton(w - (kButtonWidth + 10), h - 24, "OK", kOKCmd, 0); + const GUI::Font& font = instance()->font(); + const int fontHeight = font.getFontHeight(), + lineHeight = font.getLineHeight(); + int xpos = 5, ypos = 5; - new StaticTextWidget(this, 10, 8, 150, kFontHeight, - "Select an event to remap:", kTextAlignCenter); - - myActionsList = new StringListWidget(this, instance()->font(), 10, 20, 150, 100); + myActionsList = new StringListWidget(boss, font, xpos, ypos, + _w - 70, _h - 3*lineHeight); + myActionsList->setTarget(this); myActionsList->setNumberingMode(kListNumberingOff); myActionsList->setEditable(false); - myActionsList->setFlags(WIDGET_NODRAW_FOCUS); +// myActionsList->setFlags(WIDGET_NODRAW_FOCUS); addFocusWidget(myActionsList); - myKeyMapping = new StaticTextWidget(this, 10, 125, w - 20, kFontHeight, + // Add remap, erase, cancel and default buttons + xpos += myActionsList->getWidth() + 15; ypos += 5; + myMapButton = new ButtonWidget(boss, xpos, ypos, 50, 16, + "Map", kStartMapCmd); + myMapButton->setTarget(this); + ypos += 20; + myEraseButton = new ButtonWidget(boss, xpos, ypos, 50, 16, + "Erase", kEraseCmd); + myEraseButton->setTarget(this); + ypos += 20; + myCancelMapButton = new ButtonWidget(boss, xpos, ypos, 50, 16, + "Cancel", kStopMapCmd); + myCancelMapButton->setTarget(this); + myCancelMapButton->clearFlags(WIDGET_ENABLED); + ypos += 30; + myDefaultsButton = new ButtonWidget(boss, xpos, ypos, 50, 16, + "Defaults", kDefaultsCmd); + myDefaultsButton->setTarget(this); + + // Show message for currently selected event + xpos = 10; ypos = 5 + myActionsList->getHeight() + 3; + myKeyMapping = new StaticTextWidget(boss, xpos, ypos, _w - 20, fontHeight, "Action: ", kTextAlignLeft); myKeyMapping->setFlags(WIDGET_CLEARBG); - // Add remap and erase buttons - myMapButton = addButton(170, 25, "Map", kStartMapCmd, 0); - myEraseButton = addButton(170, 45, "Erase", kEraseCmd, 0); - myCancelMapButton = addButton(170, 65, "Cancel", kStopMapCmd, 0); - myCancelMapButton->clearFlags(WIDGET_ENABLED); - - // Add 'mouse to paddle' mapping - myPaddleModeText = new StaticTextWidget(this, 168, 93, 50, kFontHeight, - "Mouse is", kTextAlignCenter); - myPaddleModePopup = new PopUpWidget(this, 160, 105, 60, kLineHeight, - "paddle: ", 40, 0); - myPaddleModePopup->appendEntry("0", 0); - myPaddleModePopup->appendEntry("1", 1); - myPaddleModePopup->appendEntry("2", 2); - myPaddleModePopup->appendEntry("3", 3); - // Get actions names StringList l; @@ -81,32 +84,25 @@ EventMappingDialog::EventMappingDialog(OSystem* osystem, DialogContainer* parent } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -EventMappingDialog::~EventMappingDialog() +EventMappingWidget::~EventMappingWidget() { } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -void EventMappingDialog::loadConfig() +void EventMappingWidget::loadConfig() { // Make sure remapping is turned off, just in case the user didn't properly - // exit from the dialog last time + // exit last time stopRemapping(); - - // Paddle mode - int mode = instance()->settings().getInt("paddle"); - myPaddleModePopup->setSelectedTag(mode); } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -void EventMappingDialog::saveConfig() +void EventMappingWidget::saveConfig() { - // Paddle mode - int mode = myPaddleModePopup->getSelectedTag(); - instance()->eventHandler().setPaddleMode(mode); } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -void EventMappingDialog::startRemapping() +void EventMappingWidget::startRemapping() { if(myActionSelected < 0 || myRemapStatus) return; @@ -119,9 +115,6 @@ void EventMappingDialog::startRemapping() myMapButton->setEnabled(false); myEraseButton->setEnabled(false); myDefaultsButton->setEnabled(false); - myOKButton->setEnabled(false); - myPaddleModeText->setEnabled(false); - myPaddleModePopup->setEnabled(false); myCancelMapButton->setEnabled(true); // And show a message indicating which key is being remapped @@ -133,7 +126,7 @@ void EventMappingDialog::startRemapping() } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -void EventMappingDialog::eraseRemapping() +void EventMappingWidget::eraseRemapping() { if(myActionSelected < 0) return; @@ -145,7 +138,7 @@ void EventMappingDialog::eraseRemapping() } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -void EventMappingDialog::stopRemapping() +void EventMappingWidget::stopRemapping() { // Turn off remap mode myRemapStatus = false; @@ -155,9 +148,6 @@ void EventMappingDialog::stopRemapping() myMapButton->setEnabled(false); myEraseButton->setEnabled(false); myDefaultsButton->setEnabled(true); - myOKButton->setEnabled(true); - myPaddleModeText->setEnabled(true); - myPaddleModePopup->setEnabled(true); myCancelMapButton->setEnabled(false); // Make sure the list widget is in a known state @@ -170,7 +160,7 @@ void EventMappingDialog::stopRemapping() } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -void EventMappingDialog::drawKeyMapping() +void EventMappingWidget::drawKeyMapping() { if(myActionSelected >= 0) { @@ -181,9 +171,9 @@ void EventMappingDialog::drawKeyMapping() } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -void EventMappingDialog::handleKeyDown(int ascii, int keycode, int modifiers) +bool EventMappingWidget::handleKeyDown(int ascii, int keycode, int modifiers) { - // Remap keys in remap mode, otherwise pass to listwidget + // Remap keys in remap mode if(myRemapStatus && myActionSelected >= 0) { Event::Type event = EventHandler::ourActionList[ myActionSelected ].event; @@ -191,14 +181,13 @@ void EventMappingDialog::handleKeyDown(int ascii, int keycode, int modifiers) stopRemapping(); } - else - myActionsList->handleKeyDown(ascii, keycode, modifiers); + return true; } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -void EventMappingDialog::handleJoyDown(int stick, int button) +void EventMappingWidget::handleJoyDown(int stick, int button) { - // Remap joystick buttons in remap mode, otherwise pass to listwidget + // Remap joystick buttons in remap mode if(myRemapStatus && myActionSelected >= 0) { Event::Type event = EventHandler::ourActionList[ myActionSelected ].event; @@ -206,21 +195,14 @@ void EventMappingDialog::handleJoyDown(int stick, int button) stopRemapping(); } - else - myActionsList->handleJoyDown(stick, button); } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -void EventMappingDialog::handleCommand(CommandSender* sender, int cmd, +void EventMappingWidget::handleCommand(CommandSender* sender, int cmd, int data, int id) { switch(cmd) { - case kOKCmd: - saveConfig(); - close(); - break; - case kListSelectionChangedCmd: if(myActionsList->getSelected() >= 0) { @@ -248,8 +230,5 @@ void EventMappingDialog::handleCommand(CommandSender* sender, int cmd, instance()->eventHandler().setDefaultMapping(); drawKeyMapping(); break; - - default: - Dialog::handleCommand(sender, cmd, data, 0); } } diff --git a/stella/src/gui/EventMappingDialog.hxx b/stella/src/gui/EventMappingWidget.hxx similarity index 78% rename from stella/src/gui/EventMappingDialog.hxx rename to stella/src/gui/EventMappingWidget.hxx index f8f9f893c..6608bdcb7 100644 --- a/stella/src/gui/EventMappingDialog.hxx +++ b/stella/src/gui/EventMappingWidget.hxx @@ -13,14 +13,14 @@ // See the file "license" for information on usage and redistribution of // this file, and for a DISCLAIMER OF ALL WARRANTIES. // -// $Id: EventMappingDialog.hxx,v 1.12 2005-08-22 18:17:10 stephena Exp $ +// $Id: EventMappingWidget.hxx,v 1.1 2005-11-13 22:25:47 stephena Exp $ // // Based on code from ScummVM - Scumm Interpreter // Copyright (C) 2002-2004 The ScummVM project //============================================================================ -#ifndef EVENT_MAPPING_DIALOG_HXX -#define EVENT_MAPPING_DIALOG_HXX +#ifndef EVENT_MAPPING_WIDGET_HXX +#define EVENT_MAPPING_WIDGET_HXX class DialogContainer; class CommandSender; @@ -28,30 +28,31 @@ class ButtonWidget; class StaticTextWidget; class StringListWidget; class PopUpWidget; +class GuiObject; -#include "OSystem.hxx" +#include "Widget.hxx" +#include "Command.hxx" #include "bspf.hxx" -class EventMappingDialog : public Dialog + +class EventMappingWidget : public Widget, public CommandSender { public: - EventMappingDialog(OSystem* osystem, DialogContainer* parent, - int x, int y, int w, int h); - ~EventMappingDialog(); + EventMappingWidget(GuiObject* boss, int x, int y, int w, int h); + ~EventMappingWidget(); - virtual void handleKeyDown(int ascii, int keycode, int modifiers); + virtual bool handleKeyDown(int ascii, int keycode, int modifiers); virtual void handleJoyDown(int stick, int button); + bool remapMode() { return myRemapStatus; } + protected: ButtonWidget* myMapButton; ButtonWidget* myCancelMapButton; ButtonWidget* myEraseButton; - ButtonWidget* myOKButton; ButtonWidget* myDefaultsButton; StringListWidget* myActionsList; StaticTextWidget* myKeyMapping; - PopUpWidget* myPaddleModePopup; - StaticTextWidget* myPaddleModeText; private: enum { diff --git a/stella/src/gui/InputDialog.cxx b/stella/src/gui/InputDialog.cxx new file mode 100644 index 000000000..4cfb7dba6 --- /dev/null +++ b/stella/src/gui/InputDialog.cxx @@ -0,0 +1,147 @@ +//============================================================================ +// +// SSSS tt lll lll +// SS SS tt ll ll +// SS tttttt eeee ll ll aaaa +// SSSS tt ee ee ll ll aa +// SS tt eeeeee ll ll aaaaa -- "An Atari 2600 VCS Emulator" +// SS SS tt ee ll ll aa aa +// SSSS ttt eeeee llll llll aaaaa +// +// Copyright (c) 1995-2005 by Bradford W. Mott and the Stella team +// +// See the file "license" for information on usage and redistribution of +// this file, and for a DISCLAIMER OF ALL WARRANTIES. +// +// $Id: InputDialog.cxx,v 1.1 2005-11-13 22:25:47 stephena Exp $ +//============================================================================ + +#include "OSystem.hxx" +#include "Widget.hxx" +#include "Array.hxx" +#include "TabWidget.hxx" +#include "EventMappingWidget.hxx" +#include "InputDialog.hxx" +#include "PopUpWidget.hxx" + +#include "bspf.hxx" + +// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +InputDialog::InputDialog( + OSystem* osystem, DialogContainer* parent, + int x, int y, int w, int h) + : Dialog(osystem, parent, x, y, w, h) +{ + const GUI::Font& font = instance()->font(); + const int fontHeight = font.getFontHeight(), + lineHeight = font.getLineHeight(); + + const int vBorder = 4; + int xpos, ypos, tabID; + WidgetArray wid; + + // The tab widget + xpos = 2; ypos = vBorder; + myTab = new TabWidget(this, xpos, ypos, _w - 2*xpos, _h - 24 - 2*ypos); + addTabWidget(myTab); + + // 1) Event mapper + tabID = myTab->addTab("Event Mapping"); + myEventMapper = new EventMappingWidget(myTab, 2, 2, + myTab->getWidth(), + myTab->getHeight() - ypos); + myTab->setParentWidget(tabID, myEventMapper); + addToFocusList(myEventMapper->getFocusList(), tabID); + + // 2) Virtual device support + wid.clear(); + tabID = myTab->addTab("Virtual Devices"); + + // Add 'mouse to paddle' mapping + myPaddleModeText = new StaticTextWidget(myTab, 168, 93, 50, fontHeight, + "Mouse is", kTextAlignCenter); + myPaddleModePopup = new PopUpWidget(myTab, 160, 105, 60, lineHeight, + "paddle: ", 40, 0); + myPaddleModePopup->appendEntry("0", 0); + myPaddleModePopup->appendEntry("1", 1); + myPaddleModePopup->appendEntry("2", 2); + myPaddleModePopup->appendEntry("3", 3); + wid.push_back(myPaddleModePopup); + + // Add items for virtual device ports + addToFocusList(wid, tabID); + + // Activate the first tab + myTab->setActiveTab(0); + + // Add OK and Cancel buttons +#ifndef MAC_OSX + addButton(_w - 2 * (kButtonWidth + 7), _h - 24, "OK", kOKCmd, 0); + addButton(_w - (kButtonWidth + 10), _h - 24, "Cancel", kCloseCmd, 0); +#else + addButton(_w - 2 * (kButtonWidth + 7), _h - 24, "Cancel", kCloseCmd, 0); + addButton(_w - (kButtonWidth + 10), _h - 24, "OK", kOKCmd, 0); +#endif +} + +// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +InputDialog::~InputDialog() +{ +} + +// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +void InputDialog::loadConfig() +{ + // Paddle mode + int mode = instance()->settings().getInt("paddle"); + myPaddleModePopup->setSelectedTag(mode); +} + +// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +void InputDialog::saveConfig() +{ + // Paddle mode + int mode = myPaddleModePopup->getSelectedTag(); + instance()->eventHandler().setPaddleMode(mode); +} + +// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +void InputDialog::handleKeyDown(int ascii, int keycode, int modifiers) +{ + // Remap key events in remap mode, otherwise pass to listwidget + if(myEventMapper->remapMode()) + myEventMapper->handleKeyDown(ascii, keycode, modifiers); + else + Dialog::handleKeyDown(ascii, keycode, modifiers); +} + +// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +void InputDialog::handleJoyDown(int stick, int button) +{ + // Remap joystick buttons in remap mode, otherwise pass to listwidget + if(myEventMapper->remapMode()) + myEventMapper->handleJoyDown(stick, button); + else + Dialog::handleJoyDown(stick, button); +} + +// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +void InputDialog::handleCommand(CommandSender* sender, int cmd, + int data, int id) +{ + switch(cmd) + { + case kOKCmd: + saveConfig(); + close(); + break; + + case kCloseCmd: + // Revert changes made to event mapping + close(); + break; + + default: + Dialog::handleCommand(sender, cmd, data, 0); + } +} diff --git a/stella/src/gui/InputDialog.hxx b/stella/src/gui/InputDialog.hxx new file mode 100644 index 000000000..10a3ae8e7 --- /dev/null +++ b/stella/src/gui/InputDialog.hxx @@ -0,0 +1,56 @@ +//============================================================================ +// +// SSSS tt lll lll +// SS SS tt ll ll +// SS tttttt eeee ll ll aaaa +// SSSS tt ee ee ll ll aa +// SS tt eeeeee ll ll aaaaa -- "An Atari 2600 VCS Emulator" +// SS SS tt ee ll ll aa aa +// SSSS ttt eeeee llll llll aaaaa +// +// Copyright (c) 1995-2005 by Bradford W. Mott and the Stella team +// +// See the file "license" for information on usage and redistribution of +// this file, and for a DISCLAIMER OF ALL WARRANTIES. +// +// $Id: InputDialog.hxx,v 1.1 2005-11-13 22:25:47 stephena Exp $ +//============================================================================ + +#ifndef INPUT_DIALOG_HXX +#define INPUT_DIALOG_HXX + +class OSystem; +class GuiObject; +class TabWidget; +class EventMappingWidget; +class StaticTextWidget; +class PopUpWidget; + +#include "Dialog.hxx" +#include "bspf.hxx" + +class InputDialog : public Dialog +{ + public: + InputDialog(OSystem* osystem, DialogContainer* parent, + int x, int y, int w, int h); + ~InputDialog(); + + virtual void handleKeyDown(int ascii, int keycode, int modifiers); + virtual void handleJoyDown(int stick, int button); + + protected: + virtual void handleCommand(CommandSender* sender, int cmd, int data, int id); + + void loadConfig(); + void saveConfig(); + + private: + TabWidget* myTab; + + EventMappingWidget* myEventMapper; + PopUpWidget* myPaddleModePopup; + StaticTextWidget* myPaddleModeText; +}; + +#endif diff --git a/stella/src/gui/OptionsDialog.cxx b/stella/src/gui/OptionsDialog.cxx index 1467ec80c..8c1b2475b 100644 --- a/stella/src/gui/OptionsDialog.cxx +++ b/stella/src/gui/OptionsDialog.cxx @@ -13,7 +13,7 @@ // See the file "license" for information on usage and redistribution of // this file, and for a DISCLAIMER OF ALL WARRANTIES. // -// $Id: OptionsDialog.cxx,v 1.32 2005-11-12 22:59:20 stephena Exp $ +// $Id: OptionsDialog.cxx,v 1.33 2005-11-13 22:25:47 stephena Exp $ // // Based on code from ScummVM - Scumm Interpreter // Copyright (C) 2002-2004 The ScummVM project @@ -26,7 +26,7 @@ #include "Control.hxx" #include "VideoDialog.hxx" #include "AudioDialog.hxx" -#include "EventMappingDialog.hxx" +#include "InputDialog.hxx" #include "GameInfoDialog.hxx" #include "HelpDialog.hxx" #include "AboutDialog.hxx" @@ -41,7 +41,7 @@ enum { kVidCmd = 'VIDO', kAudCmd = 'AUDO', - kEMapCmd = 'EMAP', + kInptCmd = 'INPT', kInfoCmd = 'INFO', kHelpCmd = 'HELP', kAboutCmd = 'ABOU', @@ -61,18 +61,19 @@ enum { // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - OptionsDialog::OptionsDialog(OSystem* osystem, DialogContainer* parent) - : Dialog(osystem, parent, - (osystem->frameBuffer().baseWidth() - kMainMenuWidth) / 2, - (osystem->frameBuffer().baseHeight() - kMainMenuHeight)/2, - kMainMenuWidth, kMainMenuHeight), - myVideoDialog(NULL), - myAudioDialog(NULL), - myEventMappingDialog(NULL), - myGameInfoDialog(NULL), - myCheatCodeDialog(NULL), - myHelpDialog(NULL), - myAboutDialog(NULL) + : Dialog(osystem, parent, 0, 0, kMainMenuWidth, kMainMenuHeight), + myVideoDialog(NULL), + myAudioDialog(NULL), + myInputDialog(NULL), + myGameInfoDialog(NULL), + myCheatCodeDialog(NULL), + myHelpDialog(NULL), + myAboutDialog(NULL) { + // Set actual dialog dimensions + _x = (osystem->frameBuffer().baseWidth() - kMainMenuWidth) / 2; + _y = (osystem->frameBuffer().baseHeight() - kMainMenuHeight) / 2; + int yoffset = 7; const int xoffset = (_w - kBigButtonWidth) / 2; ButtonWidget* b = NULL; @@ -84,7 +85,7 @@ OptionsDialog::OptionsDialog(OSystem* osystem, DialogContainer* parent) b = addBigButton("Audio Settings", kAudCmd, 0); b->clearFlags(WIDGET_ENABLED); #endif - addBigButton("Event Mapping", kEMapCmd, 0); + addBigButton("Input Settings", kInptCmd, 0); addBigButton("Game Properties", kInfoCmd, 0); #ifdef CHEATCODE_SUPPORT addBigButton("Cheat Code", kCheatCmd, 0); @@ -112,7 +113,7 @@ OptionsDialog::OptionsDialog(OSystem* osystem, DialogContainer* parent) w = 230; h = 170; checkBounds(fbWidth, fbHeight, &x, &y, &w, &h); - myEventMappingDialog = new EventMappingDialog(myOSystem, parent, x, y, w, h); + myInputDialog = new InputDialog(myOSystem, parent, x, y, w, h); w = 255; h = 175; checkBounds(fbWidth, fbHeight, &x, &y, &w, &h); @@ -138,7 +139,7 @@ OptionsDialog::~OptionsDialog() { delete myVideoDialog; delete myAudioDialog; - delete myEventMappingDialog; + delete myInputDialog; delete myGameInfoDialog; #ifdef CHEATCODE_SUPPORT delete myCheatCodeDialog; @@ -171,8 +172,8 @@ void OptionsDialog::handleCommand(CommandSender* sender, int cmd, parent()->addDialog(myAudioDialog); break; - case kEMapCmd: - parent()->addDialog(myEventMappingDialog); + case kInptCmd: + parent()->addDialog(myInputDialog); break; case kInfoCmd: diff --git a/stella/src/gui/OptionsDialog.hxx b/stella/src/gui/OptionsDialog.hxx index 9d5e416ab..c126c93e6 100644 --- a/stella/src/gui/OptionsDialog.hxx +++ b/stella/src/gui/OptionsDialog.hxx @@ -13,7 +13,7 @@ // See the file "license" for information on usage and redistribution of // this file, and for a DISCLAIMER OF ALL WARRANTIES. // -// $Id: OptionsDialog.hxx,v 1.15 2005-11-12 22:59:20 stephena Exp $ +// $Id: OptionsDialog.hxx,v 1.16 2005-11-13 22:25:47 stephena Exp $ // // Based on code from ScummVM - Scumm Interpreter // Copyright (C) 2002-2004 The ScummVM project @@ -27,7 +27,7 @@ class CommandSender; class DialogContainer; class VideoDialog; class AudioDialog; -class EventMappingDialog; +class InputDialog; class GameInfoDialog; class CheatCodeDialog; class HelpDialog; @@ -52,7 +52,7 @@ class OptionsDialog : public Dialog protected: VideoDialog* myVideoDialog; AudioDialog* myAudioDialog; - EventMappingDialog* myEventMappingDialog; + InputDialog* myInputDialog; GameInfoDialog* myGameInfoDialog; CheatCodeDialog* myCheatCodeDialog; HelpDialog* myHelpDialog; diff --git a/stella/src/gui/module.mk b/stella/src/gui/module.mk index be3fc1e9f..5d11f6a3c 100644 --- a/stella/src/gui/module.mk +++ b/stella/src/gui/module.mk @@ -10,11 +10,12 @@ MODULE_OBJS := \ src/gui/Dialog.o \ src/gui/EditableWidget.o \ src/gui/EditTextWidget.o \ - src/gui/EventMappingDialog.o \ + src/gui/EventMappingWidget.o \ src/gui/Font.o \ src/gui/GameInfoDialog.o \ src/gui/GameList.o \ src/gui/HelpDialog.o \ + src/gui/InputDialog.o \ src/gui/InputTextDialog.o \ src/gui/Launcher.o \ src/gui/LauncherDialog.o \