UMenu
Class UMenuHUDConfigCW

source: e:\games\UnrealTournament\UMenu\Classes\UMenuHUDConfigCW.uc
Core.Object
   |
   +--UWindow.UWindowBase
      |
      +--UWindow.UWindowWindow
         |
         +--UWindow.UWindowClientWindow
            |
            +--UWindow.UWindowDialogClientWindow
               |
               +--UWindow.UWindowPageWindow
                  |
                  +--UMenu.UMenuPageWindow
                     |
                     +--UMenu.UMenuHUDConfigCW
Direct Known Subclasses:None

class UMenuHUDConfigCW
extends UMenu.UMenuPageWindow


Variables
 string CrosshairHelp
 UWindowHSliderControl CrosshairSlider
 string CrosshairText
 string HUDConfigHelp
 UWindowHSliderControl HUDConfigSlider
 string HUDConfigText


Function Summary
 void BeforePaint(Canvas C, float X, float Y)
 void Created()
 void CrosshairChanged()
 void HUDConfigChanged()
 void Notify(UWindowDialogControl C, byte E)
 void Paint(Canvas C, float X, float Y)
 void SaveConfigs()



Source Code


00001	class UMenuHUDConfigCW extends UMenuPageWindow;
00002	
00003	// HUD Config
00004	var UWindowHSliderControl HUDConfigSlider;
00005	var localized string HUDConfigText;
00006	var localized string HUDConfigHelp;
00007	
00008	// Crosshair
00009	var UWindowHSliderControl CrosshairSlider;
00010	var localized string CrosshairText;
00011	var localized string CrosshairHelp;
00012	
00013	function Created()
00014	{
00015		local int ControlWidth, ControlLeft, ControlRight;
00016		local int CenterWidth, CenterPos;
00017		local int I, S;
00018	
00019		Super.Created();
00020	
00021		ControlWidth = WinWidth/2.5;
00022		ControlLeft = (WinWidth/2 - ControlWidth)/2;
00023		ControlRight = WinWidth/2 + ControlLeft;
00024	
00025		CenterWidth = (WinWidth/4)*3;
00026		CenterPos = (WinWidth - CenterWidth)/2;
00027	
00028		DesiredWidth = 220;
00029		DesiredHeight = 70;
00030	
00031	
00032		// HUD Config
00033		HUDConfigSlider = UWindowHSliderControl(CreateControl(class'UWindowHSliderControl', ControlLeft, 20, ControlWidth, 1));
00034		HUDConfigSlider.SetRange(0, 5, 1);
00035		HUDConfigSlider.SetValue(GetPlayerOwner().myHUD.HUDMode);
00036		HUDConfigSlider.SetText(HUDConfigText);
00037		HUDConfigSlider.SetHelpText(HUDConfigHelp);
00038		HUDConfigSlider.SetFont(F_Normal);
00039	
00040		// Crosshair
00041		CrosshairSlider = UWindowHSliderControl(CreateControl(class'UWindowHSliderControl', CenterPos, 45, CenterWidth, 1));
00042		CrosshairSlider.SetRange(0, 5, 1);
00043		CrosshairSlider.SetValue(GetPlayerOwner().myHUD.Crosshair);
00044		CrosshairSlider.SetText(CrosshairText);
00045		CrosshairSlider.SetHelpText(CrosshairHelp);
00046		CrosshairSlider.SetFont(F_Normal);
00047	
00048	
00049	}
00050	
00051	function BeforePaint(Canvas C, float X, float Y)
00052	{
00053		local int ControlWidth, ControlLeft, ControlRight;
00054		local int CenterWidth, CenterPos;
00055	
00056		ControlWidth = WinWidth/2.5;
00057		ControlLeft = (WinWidth/2 - ControlWidth)/2;
00058		ControlRight = WinWidth/2 + ControlLeft;
00059	
00060		CenterWidth = (WinWidth/4)*3;
00061		CenterPos = (WinWidth - CenterWidth)/2;
00062	
00063		HUDConfigSlider.SetSize(CenterWidth, 1);
00064		HUDConfigSlider.SliderWidth = 90;
00065		HUDConfigSlider.WinLeft = CenterPos;
00066	
00067		CrosshairSlider.SetSize(CenterWidth, 1);
00068		CrosshairSlider.SliderWidth = 90;
00069		CrosshairSlider.WinLeft = CenterPos;
00070	}
00071	
00072	function Paint(Canvas C, float X, float Y)
00073	{
00074		local int ControlWidth, ControlLeft, ControlRight;
00075		local int CenterWidth, CenterPos, CrosshairX;
00076	
00077		ControlWidth = WinWidth/2.5;
00078		ControlLeft = (WinWidth/2 - ControlWidth)/2;
00079		ControlRight = WinWidth/2 + ControlLeft;
00080	
00081		CenterWidth = (WinWidth/4)*3;
00082		CenterPos = (WinWidth - CenterWidth)/2;
00083	
00084		Super.Paint(C, X, Y);
00085	
00086		CrosshairX = CenterPos + CenterWidth + 5;
00087	
00088		// DrawCrosshair
00089		if (GetPlayerOwner().myHUD.Crosshair==0)
00090			DrawClippedTexture(C, CrosshairX, 45, Texture'Crosshair1');
00091		else if (GetPlayerOwner().myHUD.Crosshair==1)
00092			DrawClippedTexture(C, CrosshairX, 45, Texture'Crosshair2');
00093		else if (GetPlayerOwner().myHUD.Crosshair==2)
00094			DrawClippedTexture(C, CrosshairX, 45, Texture'Crosshair3');
00095		else if (GetPlayerOwner().myHUD.Crosshair==3)
00096			DrawClippedTexture(C, CrosshairX, 45, Texture'Crosshair4');
00097		else if (GetPlayerOwner().myHUD.Crosshair==4)
00098			DrawClippedTexture(C, CrosshairX, 45, Texture'Crosshair5');	
00099		else if (GetPlayerOwner().myHUD.Crosshair==5)
00100			DrawClippedTexture(C, CrosshairX, 45, Texture'Crosshair7');
00101	}
00102	
00103	function Notify(UWindowDialogControl C, byte E)
00104	{
00105		switch(E)
00106		{
00107		case DE_Change:
00108			switch(C)
00109			{
00110			case CrosshairSlider:
00111				CrosshairChanged();
00112				break;
00113			case HUDConfigSlider:
00114				HUDConfigChanged();
00115				break;
00116			}
00117		}
00118	}
00119	
00120	
00121	function CrosshairChanged()
00122	{
00123		GetPlayerOwner().myHUD.Crosshair = int(CrosshairSlider.Value);
00124	}
00125	
00126	function HUDConfigChanged()
00127	{
00128		GetPlayerOwner().myHUD.HudMode = int(HUDConfigSlider.Value);
00129	}
00130	
00131	function SaveConfigs()
00132	{
00133		GetPlayerOwner().SaveConfig();
00134		GetPlayerOwner().myHUD.SaveConfig();
00135		Super.SaveConfigs();
00136	}
00137	
00138	defaultproperties
00139	{
00140	     HUDConfigText="HUD Layout"
00141	     HUDConfigHelp="Use the left and right arrow keys to select a Heads Up Display configuration."
00142	     CrosshairText="Crosshair Style"
00143	     CrosshairHelp="Choose the crosshair appearing at the center of your screen."
00144	}

End Source Code