mirror of https://github.com/stella-emu/stella.git
Added remaining properties (except cartridge type) to GameInfoDialog.
So pressing 'OK' in that dialog will merge the properties into user.pro, and doing a reload of ROM (Crtl-r) or exit/enter ROM will use the new settings. git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@803 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
This commit is contained in:
parent
95c826f3d1
commit
7dcfdedda6
|
@ -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: EventHandler.cxx,v 1.101 2005-09-29 18:50:51 stephena Exp $
|
||||
// $Id: EventHandler.cxx,v 1.102 2005-09-30 18:17:29 stephena Exp $
|
||||
//============================================================================
|
||||
|
||||
#include <algorithm>
|
||||
|
@ -386,7 +386,7 @@ void EventHandler::poll(uInt32 time)
|
|||
break;
|
||||
|
||||
case SDLK_s: // Alt-s merges properties into user properties (user.pro)
|
||||
myOSystem->console().saveProperties(myOSystem->userProperties(), true);
|
||||
saveProperties();
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
@ -1717,6 +1717,12 @@ void EventHandler::leaveDebugMode()
|
|||
#endif
|
||||
}
|
||||
|
||||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
void EventHandler::saveProperties()
|
||||
{
|
||||
myOSystem->console().saveProperties(myOSystem->userProperties(), true);
|
||||
}
|
||||
|
||||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
void EventHandler::setSDLMappings()
|
||||
{
|
||||
|
|
|
@ -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: EventHandler.hxx,v 1.50 2005-09-16 18:15:44 stephena Exp $
|
||||
// $Id: EventHandler.hxx,v 1.51 2005-09-30 18:17:29 stephena Exp $
|
||||
//============================================================================
|
||||
|
||||
#ifndef EVENTHANDLER_HXX
|
||||
|
@ -74,7 +74,7 @@ struct Stella_Joystick {
|
|||
mapping can take place.
|
||||
|
||||
@author Stephen Anthony
|
||||
@version $Id: EventHandler.hxx,v 1.50 2005-09-16 18:15:44 stephena Exp $
|
||||
@version $Id: EventHandler.hxx,v 1.51 2005-09-30 18:17:29 stephena Exp $
|
||||
*/
|
||||
class EventHandler
|
||||
{
|
||||
|
@ -230,6 +230,7 @@ class EventHandler
|
|||
void leaveCmdMenuMode();
|
||||
bool enterDebugMode();
|
||||
void leaveDebugMode();
|
||||
void saveProperties();
|
||||
|
||||
// Holds static strings for the remap menu
|
||||
static ActionList ourActionList[62];
|
||||
|
|
|
@ -13,15 +13,12 @@
|
|||
// See the file "license" for information on usage and redistribution of
|
||||
// this file, and for a DISCLAIMER OF ALL WARRANTIES.
|
||||
//
|
||||
// $Id: GameInfoDialog.cxx,v 1.14 2005-09-30 00:40:34 stephena Exp $
|
||||
// $Id: GameInfoDialog.cxx,v 1.15 2005-09-30 18:17:29 stephena Exp $
|
||||
//
|
||||
// Based on code from ScummVM - Scumm Interpreter
|
||||
// Copyright (C) 2002-2004 The ScummVM project
|
||||
//============================================================================
|
||||
|
||||
#include <cctype>
|
||||
#include <algorithm>
|
||||
|
||||
#include "GuiUtils.hxx"
|
||||
#include "OSystem.hxx"
|
||||
#include "Props.hxx"
|
||||
|
@ -324,14 +321,6 @@ void GameInfoDialog::loadConfig()
|
|||
else
|
||||
myRightDiff->setSelectedTag(0);
|
||||
|
||||
s = myGameProperties->get("Console.RightDifficulty", true);
|
||||
if(s == "B")
|
||||
myRightDiff->setSelectedTag(1);
|
||||
else if(s == "A")
|
||||
myRightDiff->setSelectedTag(2);
|
||||
else
|
||||
myRightDiff->setSelectedTag(0);
|
||||
|
||||
s = myGameProperties->get("Console.TelevisionType", true);
|
||||
if(s == "COLOR")
|
||||
myTVType->setSelectedTag(1);
|
||||
|
@ -395,7 +384,7 @@ void GameInfoDialog::loadConfig()
|
|||
void GameInfoDialog::saveConfig()
|
||||
{
|
||||
string s;
|
||||
int i;
|
||||
int i, tag;
|
||||
|
||||
// Cartridge properties
|
||||
s = myName->getEditString();
|
||||
|
@ -413,14 +402,66 @@ void GameInfoDialog::saveConfig()
|
|||
s = myNote->getEditString();
|
||||
myGameProperties->set("Cartridge.Note", s);
|
||||
|
||||
i = mySound->getSelectedTag();
|
||||
s = (i == 1) ? "Mono" : "Stereo";
|
||||
tag = mySound->getSelectedTag();
|
||||
s = (tag == 1) ? "Mono" : "Stereo";
|
||||
myGameProperties->set("Cartridge.Sound", s);
|
||||
|
||||
// FIXME - type
|
||||
|
||||
// Console properties
|
||||
tag = myLeftDiff->getSelectedTag();
|
||||
s = (tag == 1) ? "B" : "A";
|
||||
myGameProperties->set("Console.LeftDifficulty", s);
|
||||
|
||||
tag = myRightDiff->getSelectedTag();
|
||||
s = (tag == 1) ? "B" : "A";
|
||||
myGameProperties->set("Console.RightDifficulty", s);
|
||||
|
||||
tag = myTVType->getSelectedTag();
|
||||
s = (tag == 1) ? "Color" : "BlackAndWhite";
|
||||
myGameProperties->set("Console.TelevisionType", s);
|
||||
|
||||
// Controller properties
|
||||
tag = myLeftController->getSelectedTag();
|
||||
for(i = 0; i < 5; ++i)
|
||||
{
|
||||
if(i == tag-1)
|
||||
{
|
||||
myGameProperties->set("Controller.Left", ourControllerList[i].name);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
tag = myRightController->getSelectedTag();
|
||||
for(i = 0; i < 5; ++i)
|
||||
{
|
||||
if(i == tag-1)
|
||||
{
|
||||
myGameProperties->set("Controller.Right", ourControllerList[i].name);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
// Display properties
|
||||
tag = myFormat->getSelectedTag();
|
||||
s = (tag == 1) ? "NTSC" : "PAL";
|
||||
myGameProperties->set("Display.Format", s);
|
||||
|
||||
s = myXStart->getEditString();
|
||||
myGameProperties->set("Cartridge.XStart", s);
|
||||
|
||||
s = myWidth->getEditString();
|
||||
myGameProperties->set("Cartridge.Width", s);
|
||||
|
||||
s = myYStart->getEditString();
|
||||
myGameProperties->set("Cartridge.YStart", s);
|
||||
|
||||
s = myHeight->getEditString();
|
||||
myGameProperties->set("Cartridge.Height", s);
|
||||
|
||||
tag = myHmoveBlanks->getSelectedTag();
|
||||
s = (tag == 1) ? "Yes" : "No";
|
||||
myGameProperties->set("Emulation.HmoveBlanks", s);
|
||||
}
|
||||
|
||||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
|
@ -431,6 +472,7 @@ void GameInfoDialog::handleCommand(CommandSender* sender, int cmd,
|
|||
{
|
||||
case kOKCmd:
|
||||
saveConfig();
|
||||
instance()->eventHandler().saveProperties();
|
||||
close();
|
||||
break;
|
||||
|
||||
|
|
|
@ -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: ListWidget.cxx,v 1.33 2005-09-23 23:35:02 stephena Exp $
|
||||
// $Id: ListWidget.cxx,v 1.34 2005-09-30 18:17:29 stephena Exp $
|
||||
//
|
||||
// Based on code from ScummVM - Scumm Interpreter
|
||||
// Copyright (C) 2002-2004 The ScummVM project
|
||||
|
@ -367,6 +367,11 @@ void ListWidget::handleCommand(CommandSender* sender, int cmd, int data, int id)
|
|||
}
|
||||
}
|
||||
|
||||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
GUI::Rect ListWidget::getRect() const
|
||||
{
|
||||
}
|
||||
|
||||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
void ListWidget::scrollToCurrent(int item)
|
||||
{
|
||||
|
|
|
@ -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: ListWidget.hxx,v 1.13 2005-09-13 18:27:42 stephena Exp $
|
||||
// $Id: ListWidget.hxx,v 1.14 2005-09-30 18:17:29 stephena Exp $
|
||||
//
|
||||
// Based on code from ScummVM - Scumm Interpreter
|
||||
// Copyright (C) 2002-2004 The ScummVM project
|
||||
|
@ -69,6 +69,7 @@ class ListWidget : public EditableWidget
|
|||
virtual bool handleKeyUp(int ascii, int keycode, int modifiers);
|
||||
virtual void handleCommand(CommandSender* sender, int cmd, int data, int id);
|
||||
|
||||
virtual GUI::Rect getRect() const;
|
||||
virtual bool wantsFocus() { return true; }
|
||||
|
||||
void startEditMode();
|
||||
|
|
Loading…
Reference in New Issue