Example #1
0
/*
=================
UI_CustomGame_Precache
=================
*/
void UI_CustomGame_Precache( void )
{
	PIC_Load( ART_BACKGROUND );
	PIC_Load( ART_BANNER );
}
/*
=================
UI_GameOptions_Precache
=================
*/
void UI_GameOptions_Precache( void )
{
	PIC_Load( ART_BACKGROUND );
	PIC_Load( ART_BANNER );
}
Example #3
0
/*
=================
UI_LoadBmpButtons
=================
*/
void UI_LoadBmpButtons( void )
{
	memset( uiStatic.buttonsPics, 0, sizeof( uiStatic.buttonsPics ));

	int bmp_len_holder;
	byte *bmp_buffer = (byte*)LOAD_FILE( ART_BUTTONS_MAIN, &bmp_len_holder );

	if( !bmp_buffer || !bmp_len_holder )
	{
		Con_Printf( "UI_LoadBmpButtons: btns_main.bmp not found\n" );
		return;
	}

	BITMAPINFOHEADER *pInfoHdr;
	bmphdr_t *pHdr;

	pInfoHdr =(BITMAPINFOHEADER *)&bmp_buffer[sizeof(bmphdr_t)];
	pHdr = (bmphdr_t*)bmp_buffer;

	BITMAPINFOHEADER CuttedDibHdr;
	bmphdr_t CuttedHdr;

	memcpy( &CuttedHdr, pHdr, sizeof( bmphdr_t ));
	memcpy( &CuttedDibHdr, pInfoHdr, pInfoHdr->biSize );

	int pallete_sz = pHdr->bmp_offset - sizeof( bmphdr_t ) - pInfoHdr->biSize;

	uiStatic.buttons_height = ( pInfoHdr->biBitCount == 4 ) ? 80 : 78; // bugstompers issues
	uiStatic.buttons_width = pInfoHdr->biWidth - 3; // make some offset

	int stride = (pInfoHdr->biWidth * pInfoHdr->biBitCount / 8);
	int cutted_img_sz = ((stride + 3 ) & ~3) * uiStatic.buttons_height;
	int CuttedBmpSize = sizeof( bmphdr_t ) + pInfoHdr->biSize + pallete_sz + cutted_img_sz;
	byte *img_data = &bmp_buffer[bmp_len_holder-cutted_img_sz];

	if ( pInfoHdr->biBitCount <= 8 )
	{
		byte* pallete=&bmp_buffer[sizeof( bmphdr_t ) + pInfoHdr->biSize];
		byte* firstpixel_col=&pallete[img_data[0]*4];
		firstpixel_col[0]=firstpixel_col[1]=firstpixel_col[2]=0;
	}

	CuttedDibHdr.biHeight = 78;     //uiStatic.buttons_height;
	CuttedHdr.filesz = CuttedBmpSize;
	CuttedDibHdr.biSizeImage = CuttedBmpSize - CuttedHdr.bmp_offset;

	char fname[256];
	byte *raw_img_buff = (byte *)MALLOC( sizeof( bmphdr_t ) + pInfoHdr->biSize + pallete_sz + cutted_img_sz );

	// determine buttons count by image height...
	//      int pic_count = ( pInfoHdr->biHeight == 5538 ) ? PC_BUTTONCOUNT : PC_BUTTONCOUNT - 2;
	int pic_count = ( pInfoHdr->biHeight / 78 );

	for( int i = 0; i < pic_count; i++ )
	{
		sprintf( fname, "#btns_%d.bmp", i );

		int offset = 0;
		memcpy( &raw_img_buff[offset], &CuttedHdr, sizeof( bmphdr_t ));
		offset += sizeof( bmphdr_t );

		memcpy( &raw_img_buff[offset], &CuttedDibHdr, CuttedDibHdr.biSize );
		offset += CuttedDibHdr.biSize;

		if( CuttedDibHdr.biBitCount <= 8 )
		{
			memcpy( &raw_img_buff[offset], &bmp_buffer[offset], pallete_sz );
			offset += pallete_sz;
		}

		memcpy( &raw_img_buff[offset], img_data, cutted_img_sz );

		// upload image into viedo memory
		uiStatic.buttonsPics[i] = PIC_Load( fname, raw_img_buff, CuttedBmpSize );

		img_data -= cutted_img_sz;
	}

	FREE( raw_img_buff );
	FREE_FILE( bmp_buffer );
}
Example #4
0
/*
=================
UI_RecDemo_Precache
=================
*/
void UI_RecDemo_Precache( void )
{
	PIC_Load( ART_BACKGROUND );
	PIC_Load( ART_BANNER );
}
Example #5
0
/*
=================
UI_MultiPlayer_Precache
=================
*/
void UI_MultiPlayer_Precache( void )
{
	PIC_Load( ART_BACKGROUND );
	PIC_Load( ART_BANNER );
}
/*
=================
UI_PlayerSetup_UpdateConfig
=================
*/
static void UI_PlayerSetup_UpdateConfig( void )
{
	char	path[256], name[256];
	char	newImage[256];
	int	topColor, bottomColor;

	// see if the model has changed
	if( stricmp( uiPlayerSetup.currentModel, uiPlayerSetup.models[(int)uiPlayerSetup.model.curValue] ))
	{
		strcpy( uiPlayerSetup.currentModel, uiPlayerSetup.models[(int)uiPlayerSetup.model.curValue] );
	}

	uiPlayerSetup.model.generic.name = uiPlayerSetup.models[(int)uiPlayerSetup.model.curValue];
	strcpy( name, uiPlayerSetup.models[(int)uiPlayerSetup.model.curValue] );

	if( !stricmp( name, "player" ))
	{
		strcpy( path, "models/player.mdl" );
		newImage[0] = '\0';
	}
	else
	{
		sprintf( path, "models/player/%s/%s.mdl", name, name );
		sprintf( newImage, "models/player/%s/%s.bmp", name, name );
	}

	topColor = (int)(uiPlayerSetup.topColor.curValue * 255 );
	bottomColor = (int)(uiPlayerSetup.bottomColor.curValue * 255 );

	CVAR_SET_STRING( "model", uiPlayerSetup.currentModel );
	CVAR_SET_FLOAT( "cl_himodels", uiPlayerSetup.hiModels.enabled );
	CVAR_SET_FLOAT( "ui_showmodels", uiPlayerSetup.showModels.enabled );
	CVAR_SET_FLOAT( "topcolor", topColor );
	CVAR_SET_FLOAT( "bottomcolor", bottomColor );

	// IMPORTANT: always set default model becuase we need to have something valid here
	// if you wish draw your playermodel as normal studiomodel please change "models/player.mdl" to path
	if( uiPlayerSetup.ent )
		ENGINE_SET_MODEL( uiPlayerSetup.ent, "models/player.mdl" );

	if( !ui_showmodels->value )
	{
		if( stricmp( lastImage, newImage ))
		{
			if( lastImage[0] && playerImage )
			{
				// release old image
				PIC_Free( lastImage );
				lastImage[0] = '\0';
				playerImage = 0;
			}

			if( stricmp( name, "player" ))
			{
				sprintf( lastImage, "models/player/%s/%s.bmp", name, name );
				playerImage = PIC_Load( lastImage, PIC_KEEP_8BIT ); // if present of course
			}
			else if( lastImage[0] && playerImage )
			{
				// release old image
				PIC_Free( lastImage );
				lastImage[0] = '\0';
				playerImage = 0;
			}
		}

		if( playerImage != 0 ) // update remap colors
			PIC_Remap( playerImage, topColor, bottomColor );
	}
}
/*
=================
UI_PlayerSetup_Precache
=================
*/
void UI_PlayerSetup_Precache( void )
{
	PIC_Load( ART_BACKGROUND );
	PIC_Load( ART_BANNER );
}
Example #8
0
/*
=================
UI_PlayerSetup_Init
=================
*/
static void UI_PlayerSetup_Init( void )
{
	memset( &uiPlayerSetup, 0, sizeof( uiPlayerSetup_t ));

	uiPlayerSetup.menu.vidInitFunc = UI_PlayerSetup_Init;

	uiPlayerSetup.uiWhite = PIC_Load("*white");

	uiPlayerSetup.background.generic.id = ID_BACKGROUND;
	uiPlayerSetup.background.generic.type = QMTYPE_BITMAP;
	uiPlayerSetup.background.generic.flags = QMF_INACTIVE;
	uiPlayerSetup.background.generic.x = 0;
	uiPlayerSetup.background.generic.y = 0;
	uiPlayerSetup.background.generic.width = uiStatic.width;
	uiPlayerSetup.background.generic.height = 768;
	uiPlayerSetup.background.pic = ART_BACKGROUND;

	uiPlayerSetup.banner.generic.id = ID_BANNER;
	uiPlayerSetup.banner.generic.type = QMTYPE_BITMAP;
	uiPlayerSetup.banner.generic.flags = QMF_INACTIVE|QMF_DRAW_ADDITIVE;
	uiPlayerSetup.banner.generic.x = UI_BANNER_POSX;
	uiPlayerSetup.banner.generic.y = UI_BANNER_POSY;
	uiPlayerSetup.banner.generic.width = UI_BANNER_WIDTH;
	uiPlayerSetup.banner.generic.height = UI_BANNER_HEIGHT;
	uiPlayerSetup.banner.pic = ART_BANNER;

	uiPlayerSetup.done.generic.id = ID_DONE;
	uiPlayerSetup.done.generic.type = QMTYPE_BM_BUTTON;
	uiPlayerSetup.done.generic.flags = QMF_HIGHLIGHTIFFOCUS|QMF_DROPSHADOW;
	uiPlayerSetup.done.generic.x = 72;
	uiPlayerSetup.done.generic.y = 230;
	uiPlayerSetup.done.generic.name = "Done";
	uiPlayerSetup.done.generic.statusText = "Go back to the Multiplayer Menu";
	uiPlayerSetup.done.generic.callback = UI_PlayerSetup_Callback;

	UI_UtilSetupPicButton( &uiPlayerSetup.done, PC_DONE );

	uiPlayerSetup.AdvOptions.generic.id = ID_ADVOPTIONS;
	uiPlayerSetup.AdvOptions.generic.type = QMTYPE_BM_BUTTON;
	uiPlayerSetup.AdvOptions.generic.flags = QMF_HIGHLIGHTIFFOCUS|QMF_DROPSHADOW;
	uiPlayerSetup.AdvOptions.generic.x = 72;
	uiPlayerSetup.AdvOptions.generic.y = 280;
	uiPlayerSetup.AdvOptions.generic.name = "Adv. Options";
	uiPlayerSetup.AdvOptions.generic.statusText = "Configure handness, fov and other advanced options";
	uiPlayerSetup.AdvOptions.generic.callback = UI_PlayerSetup_Callback;

	UI_UtilSetupPicButton( &uiPlayerSetup.AdvOptions, PC_ADV_OPT );

	uiPlayerSetup.name.generic.id = ID_NAME;
	uiPlayerSetup.name.generic.type = QMTYPE_FIELD;
	uiPlayerSetup.name.generic.flags = QMF_CENTER_JUSTIFY|QMF_HIGHLIGHTIFFOCUS|QMF_DROPSHADOW;
	uiPlayerSetup.name.generic.x = 320;
	uiPlayerSetup.name.generic.y = 260;
	uiPlayerSetup.name.generic.width = 256;
	uiPlayerSetup.name.generic.height = 36;
	uiPlayerSetup.name.generic.callback = UI_PlayerSetup_Callback;
	uiPlayerSetup.name.generic.statusText = "Enter your multiplayer display name";
	uiPlayerSetup.name.maxLength = 32;

	uiPlayerSetup.crosshairView.generic.id = ID_CROSSHAIRVIEW;
	uiPlayerSetup.crosshairView.generic.type = QMTYPE_BITMAP;
	uiPlayerSetup.crosshairView.generic.flags = QMF_INACTIVE;
	uiPlayerSetup.crosshairView.generic.x = 320;
	uiPlayerSetup.crosshairView.generic.y = 310;
	uiPlayerSetup.crosshairView.generic.width = 96;
	uiPlayerSetup.crosshairView.generic.height = 96;
	uiPlayerSetup.crosshairView.generic.callback = UI_PlayerSetup_Callback;
	uiPlayerSetup.crosshairView.generic.ownerdraw = UI_Crosshair_Ownerdraw;
	uiPlayerSetup.crosshairView.generic.statusText = "Choose dynamic crosshair";
	uiPlayerSetup.crosshairView.pic = "gfx/vgui/crosshair";

	uiPlayerSetup.crosshairSize.generic.id = ID_CROSSHAIRSIZE;
	uiPlayerSetup.crosshairSize.generic.type = QMTYPE_SPINCONTROL;
	uiPlayerSetup.crosshairSize.generic.flags = QMF_CENTER_JUSTIFY|QMF_HIGHLIGHTIFFOCUS|QMF_DROPSHADOW;
	uiPlayerSetup.crosshairSize.generic.x = 480;
	uiPlayerSetup.crosshairSize.generic.y = 315;
	uiPlayerSetup.crosshairSize.generic.height = 26;
	uiPlayerSetup.crosshairSize.generic.width = 256;
	uiPlayerSetup.crosshairSize.generic.callback = UI_PlayerSetup_Callback;
	uiPlayerSetup.crosshairSize.generic.statusText = "Set crosshair size";
	uiPlayerSetup.crosshairSize.minValue = 0;
	uiPlayerSetup.crosshairSize.maxValue = 3;
	uiPlayerSetup.crosshairSize.range	 = 1;

	uiPlayerSetup.crosshairColor.generic.id = ID_CROSSHAIRCOLOR;
	uiPlayerSetup.crosshairColor.generic.type = QMTYPE_SPINCONTROL;
	uiPlayerSetup.crosshairColor.generic.flags = QMF_CENTER_JUSTIFY|QMF_HIGHLIGHTIFFOCUS|QMF_DROPSHADOW;
	uiPlayerSetup.crosshairColor.generic.x = 480;
	uiPlayerSetup.crosshairColor.generic.y = 375;
	uiPlayerSetup.crosshairColor.generic.height = 26;
	uiPlayerSetup.crosshairColor.generic.width = 256;
	uiPlayerSetup.crosshairColor.generic.callback = UI_PlayerSetup_Callback;
	uiPlayerSetup.crosshairColor.generic.statusText = "Set crosshair color";
	uiPlayerSetup.crosshairColor.minValue = 0;
	uiPlayerSetup.crosshairColor.maxValue = 4;
	uiPlayerSetup.crosshairColor.range	  = 1;

	uiPlayerSetup.crosshairTranslucent.generic.id = ID_CROSSHAIRCOLOR;
	uiPlayerSetup.crosshairTranslucent.generic.type = QMTYPE_CHECKBOX;
	uiPlayerSetup.crosshairTranslucent.generic.flags = QMF_HIGHLIGHTIFFOCUS | QMF_ACT_ONRELEASE | QMF_DROPSHADOW;
	uiPlayerSetup.crosshairTranslucent.generic.x = 320;
	uiPlayerSetup.crosshairTranslucent.generic.y = 420;
	uiPlayerSetup.crosshairTranslucent.generic.callback = UI_PlayerSetup_Callback;
	uiPlayerSetup.crosshairTranslucent.generic.name = "Translucent crosshair";
	uiPlayerSetup.crosshairTranslucent.generic.statusText = "Set additive render crosshair";

	UI_PlayerSetup_GetConfig();

	UI_AddItem( &uiPlayerSetup.menu, (void *)&uiPlayerSetup.background );
	UI_AddItem( &uiPlayerSetup.menu, (void *)&uiPlayerSetup.banner );
	UI_AddItem( &uiPlayerSetup.menu, (void *)&uiPlayerSetup.done );
	UI_AddItem( &uiPlayerSetup.menu, (void *)&uiPlayerSetup.AdvOptions );
	UI_AddItem( &uiPlayerSetup.menu, (void *)&uiPlayerSetup.name );
	UI_AddItem( &uiPlayerSetup.menu, (void *)&uiPlayerSetup.crosshairView );
	UI_AddItem( &uiPlayerSetup.menu, (void *)&uiPlayerSetup.crosshairSize );
	UI_AddItem( &uiPlayerSetup.menu, (void *)&uiPlayerSetup.crosshairTranslucent );
	UI_AddItem( &uiPlayerSetup.menu, (void *)&uiPlayerSetup.crosshairColor );

}
Example #9
0
/*
=================
UI_PlayerSetup_Precache
=================
*/
void UI_PlayerSetup_Precache( void )
{
	PIC_Load( "gfx/vgui/crosshair" );
	PIC_Load( ART_BACKGROUND );
	PIC_Load( ART_BANNER );
}
Example #10
0
/*
=================
UI_TouchButtons_Init
=================
*/
static void UI_TouchButtons_Init( void )
{
	memset( &uiTouchButtons, 0, sizeof( uiTouchButtons_t ));

	//uiTouchOptions.hTestImage = PIC_Load( ART_GAMMA, PIC_KEEP_RGBDATA );

	//uiTouchButtons.menu.vidInitFunc = UI_TouchButtons_Init;
	uiTouchButtons.initialized = true;

	uiTouchButtons.background.generic.id = ID_BACKGROUND;
	uiTouchButtons.background.generic.type = QMTYPE_BITMAP;
	uiTouchButtons.background.generic.flags = QMF_INACTIVE;
	uiTouchButtons.background.generic.x = 0;
	uiTouchButtons.background.generic.y = 0;
	uiTouchButtons.background.generic.width = uiStatic.width;
	uiTouchButtons.background.generic.height = 768;
	uiTouchButtons.background.pic = ART_BACKGROUND;

	uiTouchButtons.banner.generic.id = ID_BANNER;
	uiTouchButtons.banner.generic.type = QMTYPE_BITMAP;
	uiTouchButtons.banner.generic.flags = QMF_INACTIVE|QMF_DRAW_ADDITIVE;
	uiTouchButtons.banner.generic.x = UI_BANNER_POSX;
	uiTouchButtons.banner.generic.y = UI_BANNER_POSY - 70;
	uiTouchButtons.banner.generic.width = UI_BANNER_WIDTH;
	uiTouchButtons.banner.generic.height = UI_BANNER_HEIGHT;
	uiTouchButtons.banner.pic = ART_BANNER;
/*
	uiTouchOptions.testImage.generic.id = ID_BANNER;
	uiTouchOptions.testImage.generic.type = QMTYPE_BITMAP;
	uiTouchOptions.testImage.generic.flags = QMF_INACTIVE;
	uiTouchOptions.testImage.generic.x = 390;
	uiTouchOptions.testImage.generic.y = 225;
	uiTouchOptions.testImage.generic.width = 480;
	uiTouchOptions.testImage.generic.height = 450;
	uiTouchOptions.testImage.pic = ART_GAMMA;
	uiTouchOptions.testImage.generic.ownerdraw = UI_TouchButtons_Ownerdraw;
*/
	uiTouchButtons.done.generic.id = ID_DONE;
	uiTouchButtons.done.generic.type = QMTYPE_BM_BUTTON;
	uiTouchButtons.done.generic.flags = QMF_HIGHLIGHTIFFOCUS|QMF_DROPSHADOW;
	uiTouchButtons.done.generic.x = 72;
	uiTouchButtons.done.generic.y = 550;
	uiTouchButtons.done.generic.name = "Done";
	uiTouchButtons.done.generic.statusText = "Save changes and go back to the Touch Menu";
	uiTouchButtons.done.generic.callback = UI_TouchButtons_Callback;

	UI_UtilSetupPicButton( &uiTouchButtons.done, PC_DONE );

	uiTouchButtons.cancel.generic.id = ID_CANCEL;
	uiTouchButtons.cancel.generic.type = QMTYPE_BM_BUTTON;
	uiTouchButtons.cancel.generic.flags = QMF_HIGHLIGHTIFFOCUS|QMF_DROPSHADOW;
	uiTouchButtons.cancel.generic.x = 72;
	uiTouchButtons.cancel.generic.y = 600;
	uiTouchButtons.cancel.generic.name = "Cancel";
	uiTouchButtons.cancel.generic.statusText = "Discard changes and go back to the Touch Menu";
	uiTouchButtons.cancel.generic.callback = UI_TouchButtons_Callback;

	UI_UtilSetupPicButton( &uiTouchButtons.cancel, PC_CANCEL );

	uiTouchButtons.red.generic.id = ID_RED;
	uiTouchButtons.red.generic.type = QMTYPE_SLIDER;
	uiTouchButtons.red.generic.flags = QMF_PULSEIFFOCUS|QMF_DROPSHADOW;
	uiTouchButtons.red.generic.name = "Red:";
	uiTouchButtons.red.generic.x = 680;
	uiTouchButtons.red.generic.y = 150;
	uiTouchButtons.red.generic.callback = UI_TouchButtons_Callback;
	uiTouchButtons.red.generic.statusText = "Horizontal look sensitivity";
	uiTouchButtons.red.minValue = 0.0;
	uiTouchButtons.red.maxValue = 1.0;
	uiTouchButtons.red.range = 0.05f;

	uiTouchButtons.green.generic.id = ID_GREEN;
	uiTouchButtons.green.generic.type = QMTYPE_SLIDER;
	uiTouchButtons.green.generic.flags = QMF_PULSEIFFOCUS|QMF_DROPSHADOW;
	uiTouchButtons.green.generic.name = "Green:";
	uiTouchButtons.green.generic.x = 680;
	uiTouchButtons.green.generic.y = 210;
	uiTouchButtons.green.generic.callback = UI_TouchButtons_Callback;
	uiTouchButtons.green.generic.statusText = "Vertical look sensitivity";
	uiTouchButtons.green.minValue = 0.0;
	uiTouchButtons.green.maxValue = 1.0;
	uiTouchButtons.green.range = 0.05f;

	uiTouchButtons.blue.generic.id = ID_BLUE;
	uiTouchButtons.blue.generic.type = QMTYPE_SLIDER;
	uiTouchButtons.blue.generic.flags = QMF_PULSEIFFOCUS|QMF_DROPSHADOW;
	uiTouchButtons.blue.generic.name = "Blue:";
	uiTouchButtons.blue.generic.x = 680;
	uiTouchButtons.blue.generic.y = 270;
	uiTouchButtons.blue.generic.callback = UI_TouchButtons_Callback;
	uiTouchButtons.blue.generic.statusText = "Side move sensitivity";
	uiTouchButtons.blue.minValue = 0.0;
	uiTouchButtons.blue.maxValue = 1.0;
	uiTouchButtons.blue.range = 0.05f;

	uiTouchButtons.alpha.generic.id = ID_ALPHA;
	uiTouchButtons.alpha.generic.type = QMTYPE_SLIDER;
	uiTouchButtons.alpha.generic.flags = QMF_PULSEIFFOCUS|QMF_DROPSHADOW;
	uiTouchButtons.alpha.generic.name = "Alpha:";
	uiTouchButtons.alpha.generic.x = 680;
	uiTouchButtons.alpha.generic.y = 330;
	uiTouchButtons.alpha.generic.callback = UI_TouchButtons_Callback;
	uiTouchButtons.alpha.generic.statusText = "Forward move sensitivity";
	uiTouchButtons.alpha.minValue = 0.0;
	uiTouchButtons.alpha.maxValue = 1.0;
	uiTouchButtons.alpha.range = 0.05f;

	uiTouchButtons.hide.generic.id = ID_HIDE;
	uiTouchButtons.hide.generic.type = QMTYPE_CHECKBOX;
	uiTouchButtons.hide.generic.flags = QMF_HIGHLIGHTIFFOCUS|QMF_ACT_ONRELEASE|QMF_MOUSEONLY|QMF_DROPSHADOW;
	uiTouchButtons.hide.generic.name = "Hide";
	uiTouchButtons.hide.generic.x = 384 - 72 + 400;
	uiTouchButtons.hide.generic.y = 420;
	uiTouchButtons.hide.generic.callback = UI_TouchButtons_Callback;
	uiTouchButtons.hide.generic.statusText = "show/hide button";

	uiTouchButtons.additive.generic.id = ID_ADDITIVE;
	uiTouchButtons.additive.generic.type = QMTYPE_CHECKBOX;
	uiTouchButtons.additive.generic.flags = QMF_HIGHLIGHTIFFOCUS|QMF_ACT_ONRELEASE|QMF_MOUSEONLY|QMF_DROPSHADOW;
	uiTouchButtons.additive.generic.name = "Additive";
	uiTouchButtons.additive.generic.x = 650;
	uiTouchButtons.additive.generic.y = 470;
	uiTouchButtons.additive.generic.callback = UI_TouchButtons_Callback;
	uiTouchButtons.additive.generic.statusText = "Set button additive draw mode";

	uiTouchButtons.mp.generic.id = ID_MP;
	uiTouchButtons.mp.generic.type = QMTYPE_CHECKBOX;
	uiTouchButtons.mp.generic.flags = QMF_HIGHLIGHTIFFOCUS|QMF_ACT_ONRELEASE|QMF_MOUSEONLY|QMF_DROPSHADOW;
	uiTouchButtons.mp.generic.name = "MP";
	uiTouchButtons.mp.generic.x = 400;
	uiTouchButtons.mp.generic.y = 420;
	uiTouchButtons.mp.generic.callback = UI_TouchButtons_Callback;
	uiTouchButtons.mp.generic.statusText = "Show button only in multiplayer";

	uiTouchButtons.sp.generic.id = ID_SP;
	uiTouchButtons.sp.generic.type = QMTYPE_CHECKBOX;
	uiTouchButtons.sp.generic.flags = QMF_HIGHLIGHTIFFOCUS|QMF_ACT_ONRELEASE|QMF_MOUSEONLY|QMF_DROPSHADOW;
	uiTouchButtons.sp.generic.name = "SP";
	uiTouchButtons.sp.generic.x = 160 - 72 + 400;
	uiTouchButtons.sp.generic.y = 420;
	uiTouchButtons.sp.generic.callback = UI_TouchButtons_Callback;
	uiTouchButtons.sp.generic.statusText = "Show button only in singleplayer";

	uiTouchButtons.lock.generic.id = ID_LOCK;
	uiTouchButtons.lock.generic.type = QMTYPE_CHECKBOX;
	uiTouchButtons.lock.generic.flags = QMF_HIGHLIGHTIFFOCUS|QMF_ACT_ONRELEASE|QMF_MOUSEONLY|QMF_DROPSHADOW;
	uiTouchButtons.lock.generic.name = "Lock";
	uiTouchButtons.lock.generic.x = 256 - 72 + 400;
	uiTouchButtons.lock.generic.y = 420;
	uiTouchButtons.lock.generic.callback = UI_TouchButtons_Callback;
	uiTouchButtons.lock.generic.statusText = "Lock button editing";

	uiTouchButtons.precision.generic.id = ID_PRECISION;
	uiTouchButtons.precision.generic.type = QMTYPE_CHECKBOX;
	uiTouchButtons.precision.generic.flags = QMF_HIGHLIGHTIFFOCUS|QMF_ACT_ONRELEASE|QMF_MOUSEONLY|QMF_DROPSHADOW;
	uiTouchButtons.precision.generic.name = "Look precision";
	uiTouchButtons.precision.generic.x = 400;
	uiTouchButtons.precision.generic.y = 470;
	uiTouchButtons.precision.generic.callback = UI_TouchButtons_Callback;
	uiTouchButtons.precision.generic.statusText = "Increase look precision";

	uiTouchButtons.buttonList.generic.id = ID_BUTTONLIST;
	uiTouchButtons.buttonList.generic.type = QMTYPE_SCROLLLIST;
	uiTouchButtons.buttonList.generic.flags = QMF_HIGHLIGHTIFFOCUS|QMF_DROPSHADOW|QMF_SMALLFONT;
	uiTouchButtons.buttonList.generic.x = 72;
	uiTouchButtons.buttonList.generic.y = 150;
	uiTouchButtons.buttonList.generic.width = 300;
	uiTouchButtons.buttonList.generic.height = 370;
	uiTouchButtons.buttonList.generic.callback = UI_TouchButtons_Callback;

	uiTouchButtons.save.generic.id = ID_SAVE;
	uiTouchButtons.save.generic.type = QMTYPE_BM_BUTTON;
	uiTouchButtons.save.generic.flags = QMF_HIGHLIGHTIFFOCUS|QMF_DROPSHADOW | QMF_ACT_ONRELEASE;
	uiTouchButtons.save.generic.x = 384 - 72 + 320;
	uiTouchButtons.save.generic.y = 550;
	uiTouchButtons.save.generic.name = "Save";
	uiTouchButtons.save.generic.statusText = "Save as new button";
	uiTouchButtons.save.generic.callback = UI_TouchButtons_Callback;
	uiTouchButtons.save.pic = PIC_Load("gfx/shell/btn_touch_save");

	uiTouchButtons.editor.generic.id = ID_EDITOR;
	uiTouchButtons.editor.generic.type = QMTYPE_BM_BUTTON;
	uiTouchButtons.editor.generic.flags = QMF_HIGHLIGHTIFFOCUS|QMF_DROPSHADOW | QMF_ACT_ONRELEASE;
	uiTouchButtons.editor.generic.x = 384 - 72 + 320;
	uiTouchButtons.editor.generic.y = 600;
	uiTouchButtons.editor.generic.name = "Editor";
	uiTouchButtons.editor.generic.statusText = "Open interactive editor";
	uiTouchButtons.editor.generic.callback = UI_TouchButtons_Callback;
	uiTouchButtons.editor.pic = PIC_Load("gfx/shell/btn_touch_editor");

	uiTouchButtons.select.generic.id = ID_SELECT;
	uiTouchButtons.select.generic.type = QMTYPE_BM_BUTTON;
	uiTouchButtons.select.generic.flags = QMF_HIGHLIGHTIFFOCUS|QMF_DROPSHADOW | QMF_ACT_ONRELEASE;
	uiTouchButtons.select.generic.x = 500;
	uiTouchButtons.select.generic.y = 300;
	uiTouchButtons.select.generic.name = "Select";
	uiTouchButtons.select.generic.statusText = "Select texture from list";
	uiTouchButtons.select.generic.callback = UI_TouchButtons_Callback;
	uiTouchButtons.select.pic = PIC_Load("gfx/shell/btn_touch_select");

	uiTouchButtons.name.generic.id = ID_NAME;
	uiTouchButtons.name.generic.type = QMTYPE_FIELD;
	uiTouchButtons.name.generic.flags = QMF_HIGHLIGHTIFFOCUS|QMF_DROPSHADOW;
	uiTouchButtons.name.generic.name = "New Button:";
	uiTouchButtons.name.generic.x = 400;
	uiTouchButtons.name.generic.y = 550;
	uiTouchButtons.name.generic.width = 205;
	uiTouchButtons.name.generic.height = 32;
	uiTouchButtons.name.generic.callback = UI_TouchButtons_Callback;
	uiTouchButtons.name.maxLength = 255;

	uiTouchButtons.command.generic.id = ID_COMMAND;
	uiTouchButtons.command.generic.type = QMTYPE_FIELD;
	uiTouchButtons.command.generic.flags = QMF_HIGHLIGHTIFFOCUS|QMF_DROPSHADOW;
	uiTouchButtons.command.generic.name = "Command:";
	uiTouchButtons.command.generic.x = 400;
	uiTouchButtons.command.generic.y = 150;
	uiTouchButtons.command.generic.width = 205;
	uiTouchButtons.command.generic.height = 32;
	uiTouchButtons.command.generic.callback = UI_TouchButtons_Callback;
	uiTouchButtons.command.maxLength = 255;

	uiTouchButtons.texture.generic.id = ID_TEXTURE;
	uiTouchButtons.texture.generic.type = QMTYPE_FIELD;
	uiTouchButtons.texture.generic.flags = QMF_HIGHLIGHTIFFOCUS|QMF_DROPSHADOW;
	uiTouchButtons.texture.generic.name = "Texture:";
	uiTouchButtons.texture.generic.x = 400;
	uiTouchButtons.texture.generic.y = 250;
	uiTouchButtons.texture.generic.width = 205;
	uiTouchButtons.texture.generic.height = 32;
	uiTouchButtons.texture.generic.callback = UI_TouchButtons_Callback;
	uiTouchButtons.texture.maxLength = 255;

	uiTouchButtons.msgBox.generic.id = ID_MSGBOX;
	uiTouchButtons.msgBox.generic.type = QMTYPE_ACTION;
	uiTouchButtons.msgBox.generic.flags = QMF_INACTIVE|QMF_HIDDEN;
	uiTouchButtons.msgBox.generic.ownerdraw = UI_MsgBox_Ownerdraw; // just a fill rectangle
	uiTouchButtons.msgBox.generic.x = DLG_X + 192;
	uiTouchButtons.msgBox.generic.y = 256;
	uiTouchButtons.msgBox.generic.width = 640;
	uiTouchButtons.msgBox.generic.height = 256;

	uiTouchButtons.color.generic.id = ID_COLOR;
	uiTouchButtons.color.generic.type = QMTYPE_ACTION;
	uiTouchButtons.color.generic.flags = QMF_INACTIVE;
	uiTouchButtons.color.generic.ownerdraw = UI_Color_Ownerdraw; // just a fill rectangle
	uiTouchButtons.color.generic.x = 800;
	uiTouchButtons.color.generic.y = 360;
	uiTouchButtons.color.generic.width = 70;
	uiTouchButtons.color.generic.height = 50;

	uiTouchButtons.preview.generic.id = ID_PREVIEW;
	uiTouchButtons.preview.generic.type = QMTYPE_ACTION;
	uiTouchButtons.preview.generic.flags = QMF_INACTIVE;
	uiTouchButtons.preview.generic.ownerdraw = UI_Preview_Ownerdraw; // just a fill rectangle
	uiTouchButtons.preview.generic.x = 400;
	uiTouchButtons.preview.generic.y = 300;
	uiTouchButtons.preview.generic.width = 70;
	uiTouchButtons.preview.generic.height = 70;

	uiTouchButtons.promptMessage.generic.id = ID_MSGBOX;
	uiTouchButtons.promptMessage.generic.type = QMTYPE_ACTION;
	uiTouchButtons.promptMessage.generic.flags = QMF_INACTIVE|QMF_DROPSHADOW|QMF_HIDDEN;
	uiTouchButtons.promptMessage.generic.name = uiTouchButtons.dialogText;
	uiTouchButtons.promptMessage.generic.x = DLG_X + 315;
	uiTouchButtons.promptMessage.generic.y = 280;

	uiTouchButtons.yes.generic.id = ID_YES;
	uiTouchButtons.yes.generic.type = QMTYPE_BM_BUTTON;
	uiTouchButtons.yes.generic.flags = QMF_HIGHLIGHTIFFOCUS|QMF_DROPSHADOW|QMF_HIDDEN;
	uiTouchButtons.yes.generic.name = "Ok";
	uiTouchButtons.yes.generic.x = DLG_X + 380;
	uiTouchButtons.yes.generic.y = 460;
	uiTouchButtons.yes.generic.callback = UI_TouchButtons_Callback;

	UI_UtilSetupPicButton( &uiTouchButtons.yes, PC_OK );

	uiTouchButtons.no.generic.id = ID_NO;
	uiTouchButtons.no.generic.type = QMTYPE_BM_BUTTON;
	uiTouchButtons.no.generic.flags = QMF_HIGHLIGHTIFFOCUS|QMF_DROPSHADOW|QMF_HIDDEN;
	uiTouchButtons.no.generic.name = "Cancel";
	uiTouchButtons.no.generic.x = DLG_X + 530;
	uiTouchButtons.no.generic.y = 460;
	uiTouchButtons.no.generic.callback = UI_TouchButtons_Callback;

	UI_UtilSetupPicButton( &uiTouchButtons.no, PC_CANCEL );

	uiTouchButtons.reset.generic.id = ID_RESET;
	uiTouchButtons.reset.generic.type = QMTYPE_BM_BUTTON;
	uiTouchButtons.reset.generic.flags = QMF_HIGHLIGHTIFFOCUS | QMF_DROPSHADOW | QMF_ACT_ONRELEASE;
	uiTouchButtons.reset.generic.name = "Reset";
	uiTouchButtons.reset.generic.x = 384 - 72 + 480;
	uiTouchButtons.reset.generic.y = 600;
	uiTouchButtons.reset.generic.callback = UI_TouchButtons_Callback;
	uiTouchButtons.reset.generic.statusText = "Reset touch to default state";
	uiTouchButtons.reset.pic = PIC_Load("gfx/shell/btn_touch_reset");

	uiTouchButtons.remove.generic.id = ID_DELETE;
	uiTouchButtons.remove.generic.type = QMTYPE_BM_BUTTON;
	uiTouchButtons.remove.generic.flags = QMF_HIGHLIGHTIFFOCUS|QMF_DROPSHADOW;
	uiTouchButtons.remove.generic.x = 384 - 72 + 480;
	uiTouchButtons.remove.generic.y = 550;
	uiTouchButtons.remove.generic.name = "Delete";
	uiTouchButtons.remove.generic.statusText = "Delete selected button";
	uiTouchButtons.remove.generic.callback = UI_TouchButtons_Callback;
	UI_UtilSetupPicButton( &uiTouchButtons.remove, PC_DELETE );

	uiTouchButtons.buttonList.itemNames = (const char **)uiTouchButtons.bNamesPtr;

	UI_AddItem( &uiTouchButtons.menu, (void *)&uiTouchButtons.background );
	UI_AddItem( &uiTouchButtons.menu, (void *)&uiTouchButtons.remove );
	UI_AddItem( &uiTouchButtons.menu, (void *)&uiTouchButtons.reset );
	UI_AddItem( &uiTouchButtons.menu, (void *)&uiTouchButtons.done );
	UI_AddItem( &uiTouchButtons.menu, (void *)&uiTouchButtons.cancel );
	UI_AddItem( &uiTouchButtons.menu, (void *)&uiTouchButtons.red );
	UI_AddItem( &uiTouchButtons.menu, (void *)&uiTouchButtons.green );
	UI_AddItem( &uiTouchButtons.menu, (void *)&uiTouchButtons.blue );
	UI_AddItem( &uiTouchButtons.menu, (void *)&uiTouchButtons.alpha );
	UI_AddItem( &uiTouchButtons.menu, (void *)&uiTouchButtons.hide );
	UI_AddItem( &uiTouchButtons.menu, (void *)&uiTouchButtons.additive );
	UI_AddItem( &uiTouchButtons.menu, (void *)&uiTouchButtons.precision );
	UI_AddItem( &uiTouchButtons.menu, (void *)&uiTouchButtons.sp );
	UI_AddItem( &uiTouchButtons.menu, (void *)&uiTouchButtons.mp );
	UI_AddItem( &uiTouchButtons.menu, (void *)&uiTouchButtons.lock );

	UI_AddItem( &uiTouchButtons.menu, (void *)&uiTouchButtons.buttonList );

	UI_AddItem( &uiTouchButtons.menu, (void *)&uiTouchButtons.save );
	UI_AddItem( &uiTouchButtons.menu, (void *)&uiTouchButtons.select );
	UI_AddItem( &uiTouchButtons.menu, (void *)&uiTouchButtons.editor );

	UI_AddItem( &uiTouchButtons.menu, (void *)&uiTouchButtons.banner );
	UI_AddItem( &uiTouchButtons.menu, (void *)&uiTouchButtons.color );
	UI_AddItem( &uiTouchButtons.menu, (void *)&uiTouchButtons.preview );
	UI_AddItem( &uiTouchButtons.menu, (void *)&uiTouchButtons.command );
	UI_AddItem( &uiTouchButtons.menu, (void *)&uiTouchButtons.texture );
	UI_AddItem( &uiTouchButtons.menu, (void *)&uiTouchButtons.name );
	UI_AddItem( &uiTouchButtons.menu, (void *)&uiTouchButtons.msgBox );
	UI_AddItem( &uiTouchButtons.menu, (void *)&uiTouchButtons.promptMessage );
	UI_AddItem( &uiTouchButtons.menu, (void *)&uiTouchButtons.no );
	UI_AddItem( &uiTouchButtons.menu, (void *)&uiTouchButtons.yes );

	UI_TouchButtons_GetButtonList();
}
Example #11
0
/*
=================
UI_TouchButtons_Precache
=================
*/
void UI_TouchButtons_Precache( void )
{
	PIC_Load( ART_BACKGROUND );
	PIC_Load( ART_BANNER );
	uiTouchButtons.gettingList = false; // prevent filling list before init
}
Example #12
0
/*
=================
UI_TouchButtons_Callback
=================
*/
static void UI_TouchButtons_Callback( void *self, int event )
{
	menuCommon_s	*item = (menuCommon_s *)self;

	switch( item->id )
	{
	case ID_SP:
		if( uiTouchButtons.sp.enabled )
			uiTouchButtons.mp.enabled = false;
	case ID_MP:
		if( uiTouchButtons.mp.enabled )
			uiTouchButtons.sp.enabled = false;
    case ID_HIDE:
	case ID_ADDITIVE:
	case ID_PRECISION:
	case ID_LOCK:
		if( event == QM_PRESSED )
			((menuCheckBox_s *)self)->focusPic = UI_CHECKBOX_PRESSED;
		else ((menuCheckBox_s *)self)->focusPic = UI_CHECKBOX_FOCUS;
		// clean all flags that we may change
		uiTouchButtons.curflags &= ~ ( TOUCH_FL_HIDE | TOUCH_FL_NOEDIT | TOUCH_FL_MP | TOUCH_FL_SP | TOUCH_FL_DRAW_ADDITIVE | TOUCH_FL_PRECISION );
		if( uiTouchButtons.mp.enabled )
			uiTouchButtons.curflags |= TOUCH_FL_MP;
		if( uiTouchButtons.sp.enabled )
			uiTouchButtons.curflags |= TOUCH_FL_SP;
		if( uiTouchButtons.hide.enabled )
			uiTouchButtons.curflags |= TOUCH_FL_HIDE;
		if( uiTouchButtons.lock.enabled )
			uiTouchButtons.curflags |= TOUCH_FL_NOEDIT;
		if( uiTouchButtons.additive.enabled )
			uiTouchButtons.curflags |= TOUCH_FL_DRAW_ADDITIVE;
		if( uiTouchButtons.precision.enabled )
			uiTouchButtons.curflags |= TOUCH_FL_PRECISION;
		break;
	}

	if( event == QM_CHANGED )
	{
		switch( item->id )
		{
		case ID_TEXTURE:
			// update current texture
			if( uiTouchButtons.texture.buffer[0] && uiTouchButtons.texture.buffer[0] != '#' )
				uiTouchButtons.textureid = PIC_Load(uiTouchButtons.texture.buffer);
			else
				uiTouchButtons.textureid = 0;
			break;
		case ID_BUTTONLIST:
			UI_TouchButtons_UpdateFields();
			break;
		}
		return;
	}

	if( event != QM_ACTIVATED )
		return;

	switch( item->id )
	{
	case ID_DONE:
		CLIENT_COMMAND(0, "touch_writeconfig\n");
		UI_PopMenu();
		break;
	case ID_CANCEL:
		CLIENT_COMMAND(0, "touch_loadconfig\n");
		UI_PopMenu();
		break;
	case ID_RESET:
		UI_TouchButtons_DisableButtons();

        uiTouchButtons.msgBox.generic.flags &= ~QMF_HIDDEN;
        uiTouchButtons.promptMessage.generic.flags &= ~QMF_HIDDEN;
        uiTouchButtons.no.generic.flags &= ~QMF_HIDDEN;
        uiTouchButtons.yes.generic.flags &= ~QMF_HIDDEN;
        strcpy( uiTouchButtons.dialogText, "Reset all buttons?" );
        uiTouchButtons.dialogAction = UI_ResetButtons;
		break;
	case ID_DELETE:
		UI_TouchButtons_DisableButtons();


        uiTouchButtons.msgBox.generic.flags &= ~QMF_HIDDEN;
        uiTouchButtons.promptMessage.generic.flags &= ~QMF_HIDDEN;
        uiTouchButtons.no.generic.flags &= ~QMF_HIDDEN;
        uiTouchButtons.yes.generic.flags &= ~QMF_HIDDEN;
        strcpy( uiTouchButtons.dialogText, "Delete selected button?" );
        uiTouchButtons.dialogAction = UI_DeleteButton;
		break;
	case ID_YES:
    if( uiTouchButtons.dialogAction )
        uiTouchButtons.dialogAction();
	case ID_NO:
		UI_TouchButtons_EnableButtons();

        uiTouchButtons.msgBox.generic.flags |= QMF_HIDDEN;
        uiTouchButtons.promptMessage.generic.flags |= QMF_HIDDEN;
        uiTouchButtons.no.generic.flags |= QMF_HIDDEN;
        uiTouchButtons.yes.generic.flags |= QMF_HIDDEN;
		break;
	case ID_SAVE:
		if( strlen(uiTouchButtons.name.buffer) > 0)
		{
			char command[256];
			snprintf( command, 256, "touch_addbutton \"%s\" \"%s\" \"%s\"\n", uiTouchButtons.name.buffer,
					  uiTouchButtons.texture.buffer, uiTouchButtons.command.buffer );
			CLIENT_COMMAND(0, command);
			snprintf( command, 256, "touch_setflags \"%s\" %i\n", uiTouchButtons.name.buffer, uiTouchButtons.curflags );
			CLIENT_COMMAND(0, command);
			snprintf( command, 256, "touch_setcolor \"%s\" %d %d %d %d\n", uiTouchButtons.name.buffer, CURCOLOR1(red), CURCOLOR1(green), CURCOLOR1(blue),CURCOLOR1(alpha) );
			CLIENT_COMMAND(1, command);
			uiTouchButtons.name.buffer[0] = 0;
			uiTouchButtons.name.cursor = 0;
		}
		else
		{
			char command[256];
			snprintf( command, 256, "touch_settexture \"%s\" \"%s\"\n", uiTouchButtons.selectedName, uiTouchButtons.texture.buffer );
			CLIENT_COMMAND(0, command);
			snprintf( command, 256, "touch_setcommand \"%s\" \"%s\"\n", uiTouchButtons.selectedName, uiTouchButtons.command.buffer );
			CLIENT_COMMAND(0, command);
			snprintf( command, 256, "touch_setflags \"%s\" %i\n", uiTouchButtons.selectedName, uiTouchButtons.curflags );
			CLIENT_COMMAND(0, command);
			snprintf( command, 256, "touch_setcolor \"%s\" %d %d %d %d\n", uiTouchButtons.selectedName, CURCOLOR1(red), CURCOLOR1(green), CURCOLOR1(blue),CURCOLOR1(alpha) );
			CLIENT_COMMAND(1, command);
		}
		UI_TouchButtons_GetButtonList();
		break;
	case ID_EDITOR:
		UI_TouchEdit_Menu();
		break;
	case ID_SELECT:
		UI_TouchButtons_DisableButtons();
		uiFileDialogGlobal.npatterns = 7;
		strcpy( uiFileDialogGlobal.patterns[0], "touch/*.tga");
		strcpy( uiFileDialogGlobal.patterns[1], "touch_default/*.tga");
		strcpy( uiFileDialogGlobal.patterns[2], "gfx/touch/*");
		strcpy( uiFileDialogGlobal.patterns[3], "gfx/vgui/*");
		strcpy( uiFileDialogGlobal.patterns[4], "gfx/shell/*");
		strcpy( uiFileDialogGlobal.patterns[5], "*.tga");
		uiFileDialogGlobal.preview = true;
		uiFileDialogGlobal.valid = true;
		uiFileDialogGlobal.callback = UI_TouchButtons_FileDialogCallback;
		UI_FileDialog_Menu();
		break;
	}

}
Example #13
0
/*
=================
UI_PlayRec_Precache
=================
*/
void UI_PlayRec_Precache( void )
{
    PIC_Load( ART_BACKGROUND );
    PIC_Load( ART_BANNER );
}
Example #14
0
/*
=================
UI_VidModes_Precache
=================
*/
void UI_VidModes_Precache( void )
{
	PIC_Load( ART_BACKGROUND );
	PIC_Load( ART_BANNER );
}
/*
=================
UI_VidOptions_Init
=================
*/
static void UI_VidOptions_Init( void )
{
	memset( &uiVidOptions, 0, sizeof( uiVidOptions_t ));

	uiVidOptions.hTestImage = PIC_Load( ART_GAMMA, PIC_KEEP_RGBDATA );

	uiVidOptions.menu.vidInitFunc = UI_VidOptions_Init;

	uiVidOptions.background.generic.id = ID_BACKGROUND;
	uiVidOptions.background.generic.type = QMTYPE_BITMAP;
	uiVidOptions.background.generic.flags = QMF_INACTIVE;
	uiVidOptions.background.generic.x = 0;
	uiVidOptions.background.generic.y = 0;
	uiVidOptions.background.generic.width = uiStatic.width;
	uiVidOptions.background.generic.height = 768;
	uiVidOptions.background.pic = ART_BACKGROUND;

	uiVidOptions.banner.generic.id = ID_BANNER;
	uiVidOptions.banner.generic.type = QMTYPE_BITMAP;
	uiVidOptions.banner.generic.flags = QMF_INACTIVE|QMF_DRAW_ADDITIVE;
	uiVidOptions.banner.generic.x = UI_BANNER_POSX;
	uiVidOptions.banner.generic.y = UI_BANNER_POSY;
	uiVidOptions.banner.generic.width = UI_BANNER_WIDTH;
	uiVidOptions.banner.generic.height = UI_BANNER_HEIGHT;
	uiVidOptions.banner.pic = ART_BANNER;

	uiVidOptions.testImage.generic.id = ID_BANNER;
	uiVidOptions.testImage.generic.type = QMTYPE_BITMAP;
	uiVidOptions.testImage.generic.flags = QMF_INACTIVE;
	uiVidOptions.testImage.generic.x = 390;
	uiVidOptions.testImage.generic.y = 225;
	uiVidOptions.testImage.generic.width = 480;
	uiVidOptions.testImage.generic.height = 450;
	uiVidOptions.testImage.pic = ART_GAMMA;
	uiVidOptions.testImage.generic.ownerdraw = UI_VidOptions_Ownerdraw;

	uiVidOptions.done.generic.id = ID_DONE;
	uiVidOptions.done.generic.type = QMTYPE_BM_BUTTON;
	uiVidOptions.done.generic.flags = QMF_HIGHLIGHTIFFOCUS|QMF_DROPSHADOW;
	uiVidOptions.done.generic.x = 72;
	uiVidOptions.done.generic.y = 435;
	uiVidOptions.done.generic.name = "Done";
	uiVidOptions.done.generic.statusText = "Go back to the Video Menu";
	uiVidOptions.done.generic.callback = UI_VidOptions_Callback;

	UI_UtilSetupPicButton( &uiVidOptions.done, PC_DONE );

	uiVidOptions.screenSize.generic.id = ID_SCREEN_SIZE;
	uiVidOptions.screenSize.generic.type = QMTYPE_SLIDER;
	uiVidOptions.screenSize.generic.flags = QMF_PULSEIFFOCUS|QMF_DROPSHADOW;
	uiVidOptions.screenSize.generic.name = "Screen size";
	uiVidOptions.screenSize.generic.x = 72;
	uiVidOptions.screenSize.generic.y = 280;
	uiVidOptions.screenSize.generic.callback = UI_VidOptions_Callback;
	uiVidOptions.screenSize.generic.statusText = "Set the screen size";
	uiVidOptions.screenSize.minValue = 0.0;
	uiVidOptions.screenSize.maxValue = 1.0;
	uiVidOptions.screenSize.range = 0.05f;

	uiVidOptions.gammaIntensity.generic.id = ID_GAMMA;
	uiVidOptions.gammaIntensity.generic.type = QMTYPE_SLIDER;
	uiVidOptions.gammaIntensity.generic.flags = QMF_PULSEIFFOCUS|QMF_DROPSHADOW;
	uiVidOptions.gammaIntensity.generic.name = "Gamma";
	uiVidOptions.gammaIntensity.generic.x = 72;
	uiVidOptions.gammaIntensity.generic.y = 340;
	uiVidOptions.gammaIntensity.generic.callback = UI_VidOptions_Callback;
	uiVidOptions.gammaIntensity.generic.statusText = "Set gamma value (0.5 - 2.3)";
	uiVidOptions.gammaIntensity.minValue = 0.0;
	uiVidOptions.gammaIntensity.maxValue = 1.0;
	uiVidOptions.gammaIntensity.range = 0.05f;

	uiVidOptions.glareReduction.generic.id = ID_GLARE_REDUCTION;
	uiVidOptions.glareReduction.generic.type = QMTYPE_SLIDER;
	uiVidOptions.glareReduction.generic.flags = QMF_PULSEIFFOCUS|QMF_DROPSHADOW;
	uiVidOptions.glareReduction.generic.name = "Glare reduction";
	uiVidOptions.glareReduction.generic.x = 72;
	uiVidOptions.glareReduction.generic.y = 400;
	uiVidOptions.glareReduction.generic.callback = UI_VidOptions_Callback;
	uiVidOptions.glareReduction.generic.statusText = "Set glare reduction level";
	uiVidOptions.glareReduction.minValue = 0.0;
	uiVidOptions.glareReduction.maxValue = 1.0;
	uiVidOptions.glareReduction.range = 0.05f;

	uiVidOptions.fastSky.generic.id = ID_SIMPLE_SKY;
	uiVidOptions.fastSky.generic.type = QMTYPE_CHECKBOX;
	uiVidOptions.fastSky.generic.flags = QMF_HIGHLIGHTIFFOCUS|QMF_ACT_ONRELEASE|QMF_MOUSEONLY|QMF_DROPSHADOW;
	uiVidOptions.fastSky.generic.name = "Draw simple sky";
	uiVidOptions.fastSky.generic.x = 72;
	uiVidOptions.fastSky.generic.y = 615;
	uiVidOptions.fastSky.generic.callback = UI_VidOptions_Callback;
	uiVidOptions.fastSky.generic.statusText = "enable/disable fast sky rendering (for old computers)";

	uiVidOptions.hiTextures.generic.id = ID_ALLOW_MATERIALS;
	uiVidOptions.hiTextures.generic.type = QMTYPE_CHECKBOX;
	uiVidOptions.hiTextures.generic.flags = QMF_HIGHLIGHTIFFOCUS|QMF_ACT_ONRELEASE|QMF_MOUSEONLY|QMF_DROPSHADOW;
	uiVidOptions.hiTextures.generic.name = "Allow materials";
	uiVidOptions.hiTextures.generic.x = 72;
	uiVidOptions.hiTextures.generic.y = 665;
	uiVidOptions.hiTextures.generic.callback = UI_VidOptions_Callback;
	uiVidOptions.hiTextures.generic.statusText = "let engine replace 8-bit textures with full color hi-res prototypes (if present)";

	UI_VidOptions_GetConfig();

	UI_AddItem( &uiVidOptions.menu, (void *)&uiVidOptions.background );
	UI_AddItem( &uiVidOptions.menu, (void *)&uiVidOptions.banner );
	UI_AddItem( &uiVidOptions.menu, (void *)&uiVidOptions.done );
	UI_AddItem( &uiVidOptions.menu, (void *)&uiVidOptions.screenSize );
	UI_AddItem( &uiVidOptions.menu, (void *)&uiVidOptions.gammaIntensity );
	UI_AddItem( &uiVidOptions.menu, (void *)&uiVidOptions.glareReduction );
	UI_AddItem( &uiVidOptions.menu, (void *)&uiVidOptions.fastSky );
	UI_AddItem( &uiVidOptions.menu, (void *)&uiVidOptions.hiTextures );
	UI_AddItem( &uiVidOptions.menu, (void *)&uiVidOptions.testImage );
}
Example #16
0
/*
=================
UI_Credits_Precache
=================
*/
void UI_Credits_Precache( void )
{
	PIC_Load( ART_BACKGROUND );
}