コード例 #1
0
void Options_Interface_MenuInit ( void )
{
	static const char *yesno_names[] =
	{
		"no",
		"yes",
		0
	};

	static const char *textcolor_names[] =
	{
		"gray",
		"red",
		"green",
		"yellow",
		"blue",
		"cyan",
		"magenta",
		"white",
		"black",
		"orange",
		0
	};

	int32_t y = 3*MENU_LINE_SIZE;

	s_options_interface_menu.x = SCREEN_WIDTH*0.5;
	s_options_interface_menu.y = SCREEN_HEIGHT*0.5 - 80;
	s_options_interface_menu.nitems = 0;

	s_options_interface_header.generic.type		= MTYPE_SEPARATOR;
	s_options_interface_header.generic.name		= "Interface";
	s_options_interface_header.generic.x		= MENU_FONT_SIZE/2 * strlen(s_options_interface_header.generic.name);
	s_options_interface_header.generic.y		= 0;

	// Knightmare- Psychospaz's menu mouse support
/*	s_options_interface_menumouse_slider.generic.type		= MTYPE_SLIDER;
	s_options_interface_menumouse_slider.generic.x			= 0;
	s_options_interface_menumouse_slider.generic.y			= y;
	s_options_interface_menumouse_slider.generic.name		= "mouse speed";
	s_options_interface_menumouse_slider.generic.callback	= MouseMenuFunc;
	s_options_interface_menumouse_slider.minvalue			= 1;
	s_options_interface_menumouse_slider.maxvalue			= 8;
	s_options_interface_menumouse_slider.generic.statusbar	= "changes sensitivity of mouse in menus";
	*/
    if (!font_names)
        font_names = SetFontNames ();
	s_options_interface_font_box.generic.type				= MTYPE_SPINCONTROL;
	s_options_interface_font_box.generic.x					= 0;
	s_options_interface_font_box.generic.y					= y;
	s_options_interface_font_box.generic.name				= "font";
	s_options_interface_font_box.generic.callback			= FontFunc;
	s_options_interface_font_box.itemnames					= (const char **)font_names;
	s_options_interface_font_box.generic.statusbar			= "changes console and menu text font";

	s_options_interface_fontsize_slider.generic.type		= MTYPE_SLIDER;
	s_options_interface_fontsize_slider.generic.x			= 0;
	s_options_interface_fontsize_slider.generic.y			= y+=MENU_LINE_SIZE;
	s_options_interface_fontsize_slider.generic.name		= "console font size";
	s_options_interface_fontsize_slider.generic.callback	= FontSizeFunc;
	s_options_interface_fontsize_slider.minvalue			= 3;
	s_options_interface_fontsize_slider.maxvalue			= 8;
	s_options_interface_fontsize_slider.generic.statusbar	= "changes size of console text";

	s_options_interface_alt_text_color_box.generic.type		= MTYPE_SPINCONTROL;
	s_options_interface_alt_text_color_box.generic.x		= 0;
	s_options_interface_alt_text_color_box.generic.y		= y+=MENU_LINE_SIZE;
	s_options_interface_alt_text_color_box.generic.name		= "alt text color";
	s_options_interface_alt_text_color_box.generic.callback	= AltTextColorFunc;
	s_options_interface_alt_text_color_box.itemnames		= textcolor_names;
	s_options_interface_alt_text_color_box.generic.statusbar	= "changes color of highlighted text";

	s_options_interface_menualpha_slider.generic.type		= MTYPE_SLIDER;
	s_options_interface_menualpha_slider.generic.x			= 0;
	s_options_interface_menualpha_slider.generic.y			= y+=2*MENU_LINE_SIZE;
	s_options_interface_menualpha_slider.generic.name		= "ingame menu transparency";
	s_options_interface_menualpha_slider.generic.callback	= MenuAlphaFunc;
	s_options_interface_menualpha_slider.minvalue			= 0;
	s_options_interface_menualpha_slider.maxvalue			= 20;
	s_options_interface_menualpha_slider.generic.statusbar	= "changes opacity of menu background";

	s_options_interface_conalpha_slider.generic.type		= MTYPE_SLIDER;
	s_options_interface_conalpha_slider.generic.x			= 0;
	s_options_interface_conalpha_slider.generic.y			= y+=MENU_LINE_SIZE;
	s_options_interface_conalpha_slider.generic.name		= "console transparency";
	s_options_interface_conalpha_slider.generic.callback	= ConAlphaFunc;
	s_options_interface_conalpha_slider.minvalue			= 0;
	s_options_interface_conalpha_slider.maxvalue			= 20;
	s_options_interface_conalpha_slider.generic.statusbar	= "changes opacity of console";

	/*
	s_options_interface_conheight_slider.generic.type	= MTYPE_SLIDER;
	s_options_interface_conheight_slider.generic.x		= 0;
	s_options_interface_conheight_slider.generic.y		= y+=MENU_LINE_SIZE;
	s_options_interface_conheight_slider.generic.name	= "console height";
	s_options_interface_conheight_slider.generic.callback = ConHeightFunc;
	s_options_interface_conheight_slider.minvalue		= 0;
	s_options_interface_conheight_slider.maxvalue		= 10;
	*/

	s_options_interface_simple_loadscreen_box.generic.type		= MTYPE_SPINCONTROL;
	s_options_interface_simple_loadscreen_box.generic.x			= 0;
	s_options_interface_simple_loadscreen_box.generic.y			= y+=2*MENU_LINE_SIZE;
	s_options_interface_simple_loadscreen_box.generic.name		= "simple load screens";
	s_options_interface_simple_loadscreen_box.generic.callback	= SimpleLoadscreenFunc;
	s_options_interface_simple_loadscreen_box.itemnames			= yesno_names;
	s_options_interface_simple_loadscreen_box.generic.statusbar	= "toggles simple map load screen";

	s_options_interface_defaults_action.generic.type		= MTYPE_ACTION;
	s_options_interface_defaults_action.generic.x			= MENU_FONT_SIZE;
	s_options_interface_defaults_action.generic.y			= 18*MENU_LINE_SIZE;
	s_options_interface_defaults_action.generic.name		= "reset defaults";
	s_options_interface_defaults_action.generic.callback	= InterfaceResetDefaultsFunc;
	s_options_interface_defaults_action.generic.statusbar	= "resets all interface settings to internal defaults";

	s_options_interface_back_action.generic.type		= MTYPE_ACTION;
	s_options_interface_back_action.generic.x			= MENU_FONT_SIZE;
	s_options_interface_back_action.generic.y			= 20*MENU_LINE_SIZE;
	s_options_interface_back_action.generic.name		= "back to options";
	s_options_interface_back_action.generic.callback	= UI_BackMenu;

	Menu_AddItem( &s_options_interface_menu, ( void * ) &s_options_interface_header );
//	Menu_AddItem( &s_options_interface_menu, ( void * ) &s_options_interface_menumouse_slider );
	Menu_AddItem( &s_options_interface_menu, ( void * ) &s_options_interface_font_box );
	Menu_AddItem( &s_options_interface_menu, ( void * ) &s_options_interface_fontsize_slider );
	Menu_AddItem( &s_options_interface_menu, ( void * ) &s_options_interface_alt_text_color_box );
	Menu_AddItem( &s_options_interface_menu, ( void * ) &s_options_interface_menualpha_slider );
	Menu_AddItem( &s_options_interface_menu, ( void * ) &s_options_interface_conalpha_slider );
	//Menu_AddItem( &s_options_interface_menu, ( void * ) &s_options_interface_conheight_slider );
	Menu_AddItem( &s_options_interface_menu, ( void * ) &s_options_interface_simple_loadscreen_box );
	Menu_AddItem( &s_options_interface_menu, ( void * ) &s_options_interface_defaults_action );
	Menu_AddItem( &s_options_interface_menu, ( void * ) &s_options_interface_back_action );

	InterfaceSetMenuItemValues();
}
コード例 #2
0
void Options_Interface_MenuInit ( void )
{
	static const char *yesno_names[] =
	{
		"no",
		"yes",
		0
	};

	static const char *textcolor_names[] =
	{
		"gray",
		"red",
		"green",
		"yellow",
		"blue",
		"cyan",
		"magenta",
		"white",
		"black",
		"orange",
		0
	};

	int y = 3*MENU_LINE_SIZE;

	s_options_interface_menu.x = SCREEN_WIDTH*0.5;
	s_options_interface_menu.y = SCREEN_HEIGHT*0.5 - 58;
//	s_options_interface_menu.x = viddef.width * 0.50;
//	s_options_interface_menu.y = viddef.height * 0.50 - SCR_ScaledVideo(7.25*MENU_FONT_SIZE); //58
	s_options_interface_menu.nitems = 0;

	s_options_interface_header.generic.type	= MTYPE_SEPARATOR;
	s_options_interface_header.generic.name	= "interface";
	s_options_interface_header.generic.x	= MENU_FONT_SIZE/2 * strlen(s_options_interface_header.generic.name);
	s_options_interface_header.generic.y	= 0;

	// Knightmare- Psychospaz's menu mouse support
	s_options_interface_menumouse_slider.generic.type		= MTYPE_SLIDER;
	s_options_interface_menumouse_slider.generic.x		= 0;
	s_options_interface_menumouse_slider.generic.y		= y;
	s_options_interface_menumouse_slider.generic.name		= "mouse speed";
	s_options_interface_menumouse_slider.generic.callback = MouseMenuFunc;
	s_options_interface_menumouse_slider.minvalue			= 1;
	s_options_interface_menumouse_slider.maxvalue			= 8;

	s_options_interface_menualpha_slider.generic.type		= MTYPE_SLIDER;
	s_options_interface_menualpha_slider.generic.x		= 0;
	s_options_interface_menualpha_slider.generic.y		= y+=MENU_LINE_SIZE;
	s_options_interface_menualpha_slider.generic.name		= "ingame menu transparency";
	s_options_interface_menualpha_slider.generic.callback	= MenuAlphaFunc;
	s_options_interface_menualpha_slider.minvalue			= 0;
	s_options_interface_menualpha_slider.maxvalue			= 20;

	font_names = SetFontNames ();
	s_options_interface_font_box.generic.type = MTYPE_SPINCONTROL;
	s_options_interface_font_box.generic.x	= 0;
	s_options_interface_font_box.generic.y	= y+=2*MENU_LINE_SIZE;
	s_options_interface_font_box.generic.name	= "font";
	s_options_interface_font_box.generic.callback = FontFunc;
	s_options_interface_font_box.itemnames = font_names;

	s_options_interface_fontsize_slider.generic.type		= MTYPE_SLIDER;
	s_options_interface_fontsize_slider.generic.x			= 0;
	s_options_interface_fontsize_slider.generic.y			= y+=MENU_LINE_SIZE;
	s_options_interface_fontsize_slider.generic.name		= "console font size";
	s_options_interface_fontsize_slider.generic.callback	= FontSizeFunc;
	s_options_interface_fontsize_slider.minvalue			= 2;
	s_options_interface_fontsize_slider.maxvalue			= 6;

	s_options_interface_alt_text_color_box.generic.type = MTYPE_SPINCONTROL;
	s_options_interface_alt_text_color_box.generic.x	= 0;
	s_options_interface_alt_text_color_box.generic.y	= y+=MENU_LINE_SIZE;
	s_options_interface_alt_text_color_box.generic.name	= "alt text color";
	s_options_interface_alt_text_color_box.generic.callback = AltTextColorFunc;
	s_options_interface_alt_text_color_box.itemnames = textcolor_names;

	s_options_interface_conalpha_slider.generic.type	= MTYPE_SLIDER;
	s_options_interface_conalpha_slider.generic.x		= 0;
	s_options_interface_conalpha_slider.generic.y		= y+=2*MENU_LINE_SIZE;
	s_options_interface_conalpha_slider.generic.name	= "console transparency";
	s_options_interface_conalpha_slider.generic.callback = ConAlphaFunc;
	s_options_interface_conalpha_slider.minvalue		= 0;
	s_options_interface_conalpha_slider.maxvalue		= 20;

	/*
	s_options_interface_conheight_slider.generic.type	= MTYPE_SLIDER;
	s_options_interface_conheight_slider.generic.x		= 0;
	s_options_interface_conheight_slider.generic.y		= y+=MENU_LINE_SIZE;
	s_options_interface_conheight_slider.generic.name	= "console height";
	s_options_interface_conheight_slider.generic.callback = ConHeightFunc;
	s_options_interface_conheight_slider.minvalue		= 0;
	s_options_interface_conheight_slider.maxvalue		= 10;
	*/

	s_options_interface_noalttab_box.generic.type = MTYPE_SPINCONTROL;
	s_options_interface_noalttab_box.generic.x	= 0;
	s_options_interface_noalttab_box.generic.y	= y+=2*MENU_LINE_SIZE;
	s_options_interface_noalttab_box.generic.name	= "disable alt-tab";
	s_options_interface_noalttab_box.generic.callback = NoAltTabFunc;
	s_options_interface_noalttab_box.itemnames = yesno_names;

	s_options_interface_defaults_action.generic.type	= MTYPE_ACTION;
	s_options_interface_defaults_action.generic.x		= MENU_FONT_SIZE;
	s_options_interface_defaults_action.generic.y		= 18*MENU_LINE_SIZE;
	s_options_interface_defaults_action.generic.name	= "reset defaults";
	s_options_interface_defaults_action.generic.callback = InterfaceResetDefaultsFunc;

	s_options_interface_back_action.generic.type	= MTYPE_ACTION;
	s_options_interface_back_action.generic.x		= MENU_FONT_SIZE;
	s_options_interface_back_action.generic.y		= 20*MENU_LINE_SIZE;
	s_options_interface_back_action.generic.name	= "back to options";
	s_options_interface_back_action.generic.callback = UI_BackMenu;

	Menu_AddItem( &s_options_interface_menu, ( void * ) &s_options_interface_header );
	Menu_AddItem( &s_options_interface_menu, ( void * ) &s_options_interface_menumouse_slider );
	Menu_AddItem( &s_options_interface_menu, ( void * ) &s_options_interface_menualpha_slider );
	Menu_AddItem( &s_options_interface_menu, ( void * ) &s_options_interface_font_box );
	Menu_AddItem( &s_options_interface_menu, ( void * ) &s_options_interface_fontsize_slider );
	Menu_AddItem( &s_options_interface_menu, ( void * ) &s_options_interface_alt_text_color_box );
	Menu_AddItem( &s_options_interface_menu, ( void * ) &s_options_interface_conalpha_slider );
	//Menu_AddItem( &s_options_interface_menu, ( void * ) &s_options_interface_conheight_slider );
	Menu_AddItem( &s_options_interface_menu, ( void * ) &s_options_interface_noalttab_box );
	Menu_AddItem( &s_options_interface_menu, ( void * ) &s_options_interface_defaults_action );
	Menu_AddItem( &s_options_interface_menu, ( void * ) &s_options_interface_back_action );

	InterfaceSetMenuItemValues();
}