mirror of
https://github.com/libretro/scummvm.git
synced 2025-01-13 13:10:53 +00:00
dc3c3a84fd
Also make it possible to somewhat easily have hotkeys within the button text itself and not just having to use the very first button text character as hotkey.
88 lines
2.3 KiB
C++
88 lines
2.3 KiB
C++
/* ScummVM - Graphic Adventure Engine
|
|
*
|
|
* ScummVM is the legal property of its developers, whose names
|
|
* are too numerous to list here. Please refer to the COPYRIGHT
|
|
* file distributed with this source distribution.
|
|
*
|
|
* 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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
|
*
|
|
*/
|
|
|
|
#ifndef SHERLOCK_SETTINGS_H
|
|
#define SHERLOCK_SETTINGS_H
|
|
|
|
#include "common/scummsys.h"
|
|
|
|
namespace Sherlock {
|
|
|
|
class SherlockEngine;
|
|
|
|
namespace Scalpel {
|
|
|
|
class Settings {
|
|
private:
|
|
SherlockEngine *_vm;
|
|
|
|
Settings(SherlockEngine *vm) : _vm(vm) {
|
|
_hotkeyExit = 0;
|
|
_hotkeyMusic = 0;
|
|
_hotkeyPortraits = 0;
|
|
_hotkeyNewFontStyle = 0;
|
|
_hotkeySoundEffects = 0;
|
|
_hotkeyWindows = 0;
|
|
_hotkeyAutoHelp = 0;
|
|
_hotkeyVoices = 0;
|
|
_hotkeyFade = 0;
|
|
|
|
memset(_hotkeysIndexed, 0, sizeof(_hotkeysIndexed));
|
|
}
|
|
|
|
byte _hotkeyExit;
|
|
byte _hotkeyMusic;
|
|
byte _hotkeyPortraits;
|
|
byte _hotkeyNewFontStyle;
|
|
byte _hotkeySoundEffects;
|
|
byte _hotkeyWindows;
|
|
byte _hotkeyAutoHelp;
|
|
byte _hotkeyVoices;
|
|
byte _hotkeyFade;
|
|
|
|
byte _hotkeysIndexed[12];
|
|
|
|
/**
|
|
* Draws the interface for the settings window
|
|
*/
|
|
void drawInterface(bool flag);
|
|
|
|
/**
|
|
* Draws the buttons for the settings dialog
|
|
*/
|
|
int drawButtons(const Common::Point &pt, int key);
|
|
public:
|
|
/**
|
|
* Handles input when the settings window is being shown
|
|
* @remarks Whilst this would in theory be better in the Journal class, since it displays in
|
|
* the user interface, it uses so many internal UI fields, that it sort of made some sense
|
|
* to put it in the UserInterface class.
|
|
*/
|
|
static void show(SherlockEngine *vm);
|
|
};
|
|
|
|
} // End of namespace Scalpel
|
|
|
|
} // End of namespace Sherlock
|
|
|
|
#endif
|