#ifndef HEADER_SUPERTUX_SUPERTUX_GAMECONFIG_HPP
#define HEADER_SUPERTUX_SUPERTUX_GAMECONFIG_HPP
-#include "video/video_systems.hpp"
+#include "control/joystick_config.hpp"
+#include "control/keyboard_config.hpp"
#include "math/size.hpp"
+#include "video/video_system.hpp"
class Config
{
int profile;
- // the width/height to be used to display the game in fullscreen
+ /** the width/height to be used to display the game in fullscreen */
Size fullscreen_size;
+ /** refresh rate for use in fullscreen, 0 for auto */
+ int fullscreen_refresh_rate;
+
/** the width/height of the window managers window */
Size window_size;
/** the aspect ratio */
Size aspect_size;
-
+
float magnification;
bool use_fullscreen;
bool music_enabled;
bool console_enabled;
- int random_seed; // initial random seed. 0 ==> set from time()
+ /** initial random seed. 0 ==> set from time() */
+ int random_seed;
/** this variable is set if supertux should start in a specific level */
std::string start_level;
std::string start_demo;
std::string record_demo;
- std::string locale; /**< force SuperTux language to this locale, e.g. "de". A file "data/locale/xx.po" must exist for this to work. An empty string means autodetect. */
+ /** force SuperTux language to this locale, e.g. "de". A file
+ "data/locale/xx.po" must exist for this to work. An empty string
+ means autodetect. */
+ std::string locale;
+
+ KeyboardConfig keyboard_config;
+ JoystickConfig joystick_config;
+
+ struct Addon
+ {
+ std::string id;
+ bool enabled;
+ };
+ std::vector<Addon> addons;
+
+ bool developer_mode;
};
#endif