2012-02-22 15:33:29 +01:00
/* 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 .
2014-02-18 02:34:18 +01:00
*
2012-02-22 15:33:29 +01:00
* 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 .
2014-02-18 02:34:18 +01:00
*
2012-02-22 15:33:29 +01:00
* 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 COMMON_GUI_OPTIONS_H
# define COMMON_GUI_OPTIONS_H
2020-08-23 01:08:47 +02:00
# define GUIO_NONE "\x00"
# define GUIO_NOSUBTITLES "\x01"
# define GUIO_NOMUSIC "\x02"
2017-01-25 20:36:42 -06:00
// GUIO_NOSPEECH is a combination of GUIO_NOSPEECHVOLUME and GUIO_NOSUBTITLES
2020-08-23 01:08:47 +02:00
# define GUIO_NOSPEECH "\x03"
# define GUIO_NOSFX "\x04"
# define GUIO_NOMIDI "\x05"
# define GUIO_NOLAUNCHLOAD "\x06"
2012-02-22 15:33:29 +01:00
2020-08-23 01:08:47 +02:00
# define GUIO_MIDIPCSPK "\x07"
# define GUIO_MIDICMS "\x08"
# define GUIO_MIDIPCJR "\x09"
# define GUIO_MIDIADLIB "\x0a"
# define GUIO_MIDIC64 "\x0b"
# define GUIO_MIDIAMIGA "\x0c"
# define GUIO_MIDIAPPLEIIGS "\x0d"
# define GUIO_MIDITOWNS "\x0e"
# define GUIO_MIDIPC98 "\x0f"
# define GUIO_MIDISEGACD "\x10"
# define GUIO_MIDIMT32 "\x11"
# define GUIO_MIDIGM "\x12"
2012-02-22 15:33:29 +01:00
2020-08-23 01:08:47 +02:00
# define GUIO_NOASPECT "\x13"
2012-02-22 15:33:29 +01:00
2021-11-14 16:16:56 +01:00
# define GUIO_RENDERHERCGREEN "\x18"
# define GUIO_RENDERHERCAMBER "\x19"
# define GUIO_RENDERCGA "\x1a"
# define GUIO_RENDEREGA "\x1b"
# define GUIO_RENDERVGA "\x1c"
# define GUIO_RENDERAMIGA "\x1d"
# define GUIO_RENDERFMTOWNS "\x1e"
# define GUIO_RENDERPC9821 "\x1f"
# define GUIO_RENDERPC9801 "\x20"
# define GUIO_RENDERAPPLE2GS "\x21"
# define GUIO_RENDERATARIST "\x22"
# define GUIO_RENDERMACINTOSH "\x23"
# define GUIO_RENDERMACINTOSHBW "\x28" // Setting this to 0x28 is not ideal, but there is no free slot left. Maybe we need to migrate to 3-digit numbers...
2012-02-22 15:33:29 +01:00
2020-08-23 01:08:47 +02:00
# define GUIO_LINKSPEECHTOSFX "\x24"
# define GUIO_LINKMUSICTOSFX "\x25"
# define GUIO_NOSPEECHVOLUME "\x26"
2017-01-25 20:36:42 -06:00
2021-04-19 23:10:12 +01:00
# define GUIO_NOLANG "\x27"
2012-09-26 04:17:31 +02:00
// Special GUIO flags for the AdvancedDetector's caching of game specific
2012-02-29 16:48:25 +01:00
// options.
2020-08-23 01:08:47 +02:00
# define GUIO_GAMEOPTIONS1 "\x30"
# define GUIO_GAMEOPTIONS2 "\x31"
# define GUIO_GAMEOPTIONS3 "\x32"
# define GUIO_GAMEOPTIONS4 "\x33"
# define GUIO_GAMEOPTIONS5 "\x34"
# define GUIO_GAMEOPTIONS6 "\x35"
# define GUIO_GAMEOPTIONS7 "\x36"
# define GUIO_GAMEOPTIONS8 "\x37"
# define GUIO_GAMEOPTIONS9 "\x38"
# define GUIO_GAMEOPTIONS10 "\x39"
# define GUIO_GAMEOPTIONS11 "\x3a"
# define GUIO_GAMEOPTIONS12 "\x3b"
# define GUIO_GAMEOPTIONS13 "\x3c"
# define GUIO_GAMEOPTIONS14 "\x3d"
# define GUIO_GAMEOPTIONS15 "\x3e"
2021-08-09 15:25:13 -05:00
# define GUIO_GAMEOPTIONS16 "\x3f"
2021-12-19 11:35:34 +02:00
# define GUIO_GAMEOPTIONS17 "\x40"
# define GUIO_GAMEOPTIONS18 "\x41"
# define GUIO_GAMEOPTIONS19 "\x42"
# define GUIO_GAMEOPTIONS20 "\x43"
# define GUIO_GAMEOPTIONS21 "\x44"
# define GUIO_GAMEOPTIONS22 "\x45"
# define GUIO_GAMEOPTIONS23 "\x46"
# define GUIO_GAMEOPTIONS24 "\x47"
# define GUIO_GAMEOPTIONS25 "\x48"
# define GUIO_GAMEOPTIONS26 "\x49"
# define GUIO_GAMEOPTIONS27 "\x4a"
# define GUIO_GAMEOPTIONS28 "\x4b"
# define GUIO_GAMEOPTIONS29 "\x4c"
# define GUIO_GAMEOPTIONS30 "\x4d"
# define GUIO_GAMEOPTIONS31 "\x4e"
# define GUIO_GAMEOPTIONS32 "\x4f"
2012-02-29 16:48:25 +01:00
2012-02-22 15:33:29 +01:00
# define GUIO0() (GUIO_NONE)
# define GUIO1(a) (a)
# define GUIO2(a,b) (a b)
# define GUIO3(a,b,c) (a b c)
# define GUIO4(a,b,c,d) (a b c d)
# define GUIO5(a,b,c,d,e) (a b c d e)
# define GUIO6(a,b,c,d,e,f) (a b c d e f)
2012-02-29 17:06:13 +01:00
# define GUIO7(a,b,c,d,e,f,g) (a b c d e f g)
# define GUIO8(a,b,c,d,e,f,g,h) (a b c d e f g h)
2017-09-07 00:35:25 -05:00
# define GUIO9(a,b,c,d,e,f,g,h,i) (a b c d e f g h i)
2012-02-22 15:33:29 +01:00
namespace Common {
2020-07-08 23:30:36 +02:00
/**
* @ defgroup common_gui_options GUI options
* @ ingroup common
*
* @ brief API for managing the options of the graphical user interface ( GUI ) .
*
* @ {
*/
2012-02-29 12:57:34 +01:00
class String ;
2012-02-22 15:33:29 +01:00
bool checkGameGUIOption ( const String & option , const String & str ) ;
String parseGameGUIOptions ( const String & str ) ;
const String getGameGUIOptionsDescription ( const String & options ) ;
/**
2020-10-08 00:04:21 +02:00
* Update the GUI options of the current config manager
* domain when they differ to the ones passed as
2012-02-22 15:33:29 +01:00
* parameter .
*/
void updateGameGUIOptions ( const String & options , const String & langOption ) ;
2020-07-08 23:30:36 +02:00
/** @} */
2012-02-22 15:33:29 +01:00
} // End of namespace Common
# endif