#pragma progs_dat "../csprogs.dat"

//#pragma TARGET FTE

#define CSQC_SIMPLE
#define CSQC		//select the module
#ifdef CSQC_SIMPLE
	#include "qsextensions.qc"		//also sets up system defs
#undef CSQC_SIMPLE
	#include "fteextensions.qc"		//extra stuff...
#else
	#include "fteextensions.qc"		//also sets up system defs
#endif

#includelist
menusys/mitems.qc			//root type
menusys/mitems_common.qc			//basic types
menusys/mitem_desktop.qc		//other sort of root item
menusys/mitem_exmenu.qc		//fullscreen/exclusive menus
menusys/mitem_edittext.qc		//simple text editor
menusys/mitem_tabs.qc			//tabs
menusys/mitem_colours.qc		//colour picker
menusys/mitem_checkbox.qc		//checkbox (boolean thingies)
menusys/mitem_slider.qc		//scrollbars
menusys/mitem_combo.qc		//multiple-choice thingies
menusys/mitem_bind.qc			//key binding thingie
menusys/mitem_spinnymodel.qc	//rotating 3d models, used for art/theme.
#endlist

//define the commands.
//cmd argments are: Name, Function, Sourcefile(may be empty)
//note that this list can be expanded in multiple places.
#define concommandslist													\
	cmd("togglemenu", 	M_ToggleMenu, 		)							\
	cmd("m_main",		M_Main,				menu/main.qc)				\
	cmd("m_pop",		M_Pop, 				)							\
	cmd("m_options",	M_Options, 			menu/options.qc)			\
	cmd("m_keys",		M_Options_Keys, 	menu/options_keys.qc)		\
	cmd("m_basicopts",	M_Options_Basic,	menu/options_basic.qc)		\
	cmd("m_video",		M_Options_Video, 	menu/options_video.qc)		\
	cmd("m_effects",	M_Options_Effects,	menu/options_effects.qc)	\
	cmd("m_audio",		M_Options_Audio, 	menu/options_audio.qc)		\
	cmd("m_particles",	M_Options_Particles,menu/options_particles.qc)	\
	cmd("m_hud",		M_Options_Hud,		menu/options_hud.qc)		\
	cmd("m_load",		M_Load, 			menu/loadsave.qc)			\
	cmd("m_save",		M_Save, 			)							\
	cmd("m_quit",		M_Quit, 			menu/quit.qc)				\
	cmd("m_newgame",	M_NewGame, 			menu/newgame.qc)			\
	cmd("m_servers",	M_Servers, 			menu/servers.qc)			\
	cmd("m_configs",	M_Configs,			menu/options_configs.qc)	\
	cmd("m_reset",		M_Reset,			)							\
	cmd("m_preset",		M_Preset, 			menu/presets.qc)

//make sure all the right files are included
#define cmd(n,fnc,inc) inc
#includelist
	concommandslist
#endlist
#undef cmd

#include "cs/hud.qc"
#include "cs/entrypoints.qc"