// September 2015 // Levee Patroller / Dijk Patrouille // This source file is (c) by Deltares. This source file is open source but only available to select users. Do not redistribute without written permission of Stichting Deltares, Delft, The Netherlands. // This header has been automatically generated. //============================================================================= // // ------------------------------------------------------------ // © 2006, Geodelft // // Date Id Modification // 2006-10-09 The Created this header // 2006-10-09 The Implemented Dutch translations //============================================================================= class VideoChangeOK extends GUIPage; var Int Count; var string OrigRes,OrigDetail, DesRes; var GeoPlayerController GeoPC; var localized string NL_Ok, EN_Ok, NL_Cancel, EN_Cancel, NL_Accept, EN_Accept, RestoreTextPre, NL_RestoreTextPre, EN_RestoreTextPre, RestoreTextPost, NL_RestoreTextPost, EN_RestoreTextPost, RestoreTextSingular, NL_RestoreTextSingular, EN_RestoreTextSingular; //============================================================================= // Date Id Modification // 2006-10-09 The Created this header //============================================================================= function UpdateLanguage() { if (GeoPC.Dutch) { RestoreTextPre = NL_RestoreTextPre; RestoreTextPost = NL_RestoreTextPost; RestoreTextSingular = NL_RestoreTextSingular; GUIButton(Controls[1]).Caption = NL_Ok; GUIButton(Controls[2]).Caption = NL_Cancel; GUILabel(Controls[3]).Caption = NL_Accept; } else { RestoreTextPre = EN_RestoreTextPre; RestoreTextPost = EN_RestoreTextPost; RestoreTextSingular = EN_RestoreTextSingular; GUIButton(Controls[1]).Caption = EN_Ok; GUIButton(Controls[2]).Caption = EN_Cancel; GUILabel(Controls[3]).Caption = EN_Accept; } GUILabel(Controls[4]).Caption = RestoreTextPre$15$RestoreTextPost; } //============================================================================= // Date Id Modification // 2006-10-09 The Created this header //============================================================================= function InitComponent(GUIController MyController, GUIComponent MyOwner) { Super.Initcomponent(MyController, MyOwner); GeoPC = GeoPlayerController(PlayerOwner()); UpdateLanguage(); } //============================================================================= // Date Id Modification // 2006-10-09 The Created this header //============================================================================= event Timer() { Count--; if (Count>1) GUILabel(Controls[4]).Caption = RestoreTextPre$Count$RestoreTextPost; else GUILabel(Controls[4]).Caption = RestoreTextSingular; if (Count<=0) { SetTimer(0); // Reset resolution here PlayerOwner().ConsoleCommand("setres"@OrigRes); SetDetailSettings(OrigDetail); Controller.CloseMenu(false); } } //============================================================================= // Date Id Modification // 2006-10-09 The Created this header //============================================================================= function Execute(string DesiredRes,string DesiredDetail) { local string res,bit,x,y; local int i; DesRes = DesiredRes; if (DesiredRes=="") return; //Log("dj;lkfjasdkl;fjsma/dfmskl;adjflkasdj"@DesiredDetail); OrigDetail = GeoPC.DetailSetting; //Log("aaaadj;lkfjasdkl;fjsma/dfmskl;adjflkasdj"@OrigDetail); res = Controller.GetCurrentRes(); bit = PlayerOwner().ConsoleCommand("get ini:Engine.Engine.RenderDevice Use16bit"); if (bit=="true") OrigRes=res$"x16"; else OrigRes=res$"x32"; if(bool(PlayerOwner().ConsoleCommand("ISFULLSCREEN"))) OrigRes=OrigRes$"f"; else OrigRes=OrigRes$"w"; if(DesiredRes != OrigRes) { PlayerOwner().ConsoleCommand("set ini:Engine.Engine.RenderDevice Use16bit"@(InStr(DesiredRes,"x16") != -1)); PlayerOwner().ConsoleCommand("setres"@DesiredRes); i = Instr(DesiredRes,"x"); x = left(DesiredRes,i); y = mid(DesiredRes,i+1); if( (int(x)<640) || (int(y)<480) ) { PlayerOwner().ConsoleCommand("tempsetres 640x480"); SetTimer(0,false); Controller.ReplaceMenu("GeoInterface.DeferChangeRes"); Controller.GameResolution = Left(DesiredRes,Len(DesiredRes) - 4); } else Controller.GameResolution = ""; } if(OrigDetail != DesiredDetail) { SetDetailSettings(DesiredDetail); } } //============================================================================= // Date Id Modification // 2007-06-15 Zmr Created this header //============================================================================= function SetDetailSettings(String DesiredDetail) { log("SetDetailSettings1"); if(DesiredDetail == "Low") { log("SetDetailSettings2"); GeoPC.DetailSetting = "Low"; PlayerOwner().ConsoleCommand("set ini:Engine.Engine.GameEngine CacheSizeMegs 32"); PlayerOwner().ConsoleCommand("set ini:Engine.Engine.ViewportManager TextureDetailInterface Normal"); PlayerOwner().ConsoleCommand("set ini:Engine.Engine.ViewportManager TextureDetailTerrain Low"); PlayerOwner().ConsoleCommand("set ini:Engine.Engine.ViewportManager TextureDetailWeaponSkin Low"); PlayerOwner().ConsoleCommand("set ini:Engine.Engine.ViewportManager TextureDetailPlayerSkin Low"); PlayerOwner().ConsoleCommand("set ini:Engine.Engine.ViewportManager TextureDetailWorld Lower"); PlayerOwner().ConsoleCommand("set ini:Engine.Engine.ViewportManager TextureDetailRenderMap Low"); PlayerOwner().ConsoleCommand("set ini:Engine.Engine.ViewportManager TextureDetailLightmap High"); PlayerOwner().ConsoleCommand("set ini:Engine.Engine.RenderDevice DetailTextures False"); PlayerOwner().ConsoleCommand("set ini:Engine.Engine.RenderDevice HighDetailActors False"); PlayerOwner().ConsoleCommand("set ini:Engine.Engine.RenderDevice SuperHighDetailActors False"); PlayerOwner().ConsoleCommand("set ini:Engine.Engine.RenderDevice UseTrilinear False"); PlayerOwner().ConsoleCommand("set ini:Engine.Engine.RenderDevice UseTripleBuffering False"); PlayerOwner().ConsoleCommand("set ini:Engine.Engine.RenderDevice UseVSync False"); PlayerOwner().ConsoleCommand("set ini:Engine.Engine.RenderDevice LevelOfAnisotropy 1"); PlayerOwner().ConsoleCommand("flush"); PlayerOwner().Level.DetailChange(DM_Low); } else if(DesiredDetail == "Medium") { log("SetDetailSettings3"); GeoPC.DetailSetting = "Medium" ; PlayerOwner().ConsoleCommand("set ini:Engine.Engine.GameEngine CacheSizeMegs 32"); PlayerOwner().ConsoleCommand("set ini:Engine.Engine.ViewportManager TextureDetailInterface High"); PlayerOwner().ConsoleCommand("set ini:Engine.Engine.ViewportManager TextureDetailTerrain High"); PlayerOwner().ConsoleCommand("set ini:Engine.Engine.ViewportManager TextureDetailWeaponSkin High"); PlayerOwner().ConsoleCommand("set ini:Engine.Engine.ViewportManager TextureDetailPlayerSkin High"); PlayerOwner().ConsoleCommand("set ini:Engine.Engine.ViewportManager TextureDetailWorld Normal"); PlayerOwner().ConsoleCommand("set ini:Engine.Engine.ViewportManager TextureDetailRenderMap High"); PlayerOwner().ConsoleCommand("set ini:Engine.Engine.ViewportManager TextureDetailLightmap UltraHigh"); PlayerOwner().ConsoleCommand("set ini:Engine.Engine.RenderDevice DetailTextures True"); PlayerOwner().ConsoleCommand("set ini:Engine.Engine.RenderDevice HighDetailActors True"); PlayerOwner().ConsoleCommand("set ini:Engine.Engine.RenderDevice SuperHighDetailActors False"); PlayerOwner().ConsoleCommand("set ini:Engine.Engine.RenderDevice UseTrilinear False"); PlayerOwner().ConsoleCommand("set ini:Engine.Engine.RenderDevice UseTripleBuffering False"); PlayerOwner().ConsoleCommand("set ini:Engine.Engine.RenderDevice UseVSync False"); PlayerOwner().ConsoleCommand("set ini:Engine.Engine.RenderDevice LevelOfAnisotropy 1"); PlayerOwner().ConsoleCommand("flush"); PlayerOwner().Level.DetailChange(DM_High); } else if(DesiredDetail == "High") { log("SetDetailSettings4"); GeoPC.DetailSetting = "High"; PlayerOwner().ConsoleCommand("set ini:Engine.Engine.GameEngine CacheSizeMegs 64"); PlayerOwner().ConsoleCommand("set ini:Engine.Engine.ViewportManager TextureDetailInterface UltraHigh"); PlayerOwner().ConsoleCommand("set ini:Engine.Engine.ViewportManager TextureDetailTerrain UltraHigh"); PlayerOwner().ConsoleCommand("set ini:Engine.Engine.ViewportManager TextureDetailWeaponSkin UltraHigh"); PlayerOwner().ConsoleCommand("set ini:Engine.Engine.ViewportManager TextureDetailPlayerSkin UltraHigh"); PlayerOwner().ConsoleCommand("set ini:Engine.Engine.ViewportManager TextureDetailWorld UltraHigh"); PlayerOwner().ConsoleCommand("set ini:Engine.Engine.ViewportManager TextureDetailRenderMap UltraHigh"); PlayerOwner().ConsoleCommand("set ini:Engine.Engine.ViewportManager TextureDetailLightmap UltraHigh"); PlayerOwner().ConsoleCommand("set ini:Engine.Engine.RenderDevice DetailTextures True"); PlayerOwner().ConsoleCommand("set ini:Engine.Engine.RenderDevice HighDetailActors True"); PlayerOwner().ConsoleCommand("set ini:Engine.Engine.RenderDevice SuperHighDetailActors True"); PlayerOwner().ConsoleCommand("set ini:Engine.Engine.RenderDevice UseTrilinear True"); PlayerOwner().ConsoleCommand("set ini:Engine.Engine.RenderDevice UseTripleBuffering True"); PlayerOwner().ConsoleCommand("set ini:Engine.Engine.RenderDevice UseVSync True"); PlayerOwner().ConsoleCommand("set ini:Engine.Engine.RenderDevice LevelOfAnisotropy 2"); PlayerOwner().ConsoleCommand("flush"); PlayerOwner().Level.DetailChange(DM_SuperHigh); } GeoPC.SaveConfig(); } //============================================================================= // Date Id Modification // 2006-10-09 The Created this header //============================================================================= function StartTimer() { Count=15; SetTimer(1.0,true); } //============================================================================= // Date Id Modification // 2006-10-09 The Created this header //============================================================================= function bool InternalOnClick(GUIComponent Sender) { local int origFull,desFull; SetTimer(0); if (Sender==Controls[2]) { PlayerOwner().ConsoleCommand("setres"@OrigRes); SetDetailSettings(OrigDetail); }else { log(OrigRes); origFull = Instr(OrigRes ,"f"); desFull = Instr(DesRes ,"f"); if(origFull != -1) { if(desFull != -1) { //both are in full screen mode, so do nothing }else { //desired res is in windowed screen so store in ini PlayerOwner().ConsoleCommand("set ini:Engine.Engine.ViewportManager StartupFullscreen False"); } }else { if(desFull != -1) { //desired is in full screen mode so store in ini PlayerOwner().ConsoleCommand("set ini:Engine.Engine.ViewportManager StartupFullscreen True"); }else { //desired res is in windowed screen so do nothing } } } //GUILabel(Controls[3]).Caption="Accept these settings?"; Controller.CloseMenu(false); return true; } //============================================================================= // Date Id Modification // 2006-10-09 The Created this header //============================================================================= defaultproperties { Begin Object Class=GUIButton name=VidOKBackground WinWidth=1.0 WinHeight=1.0 WinTop=0 WinLeft=0 bAcceptsInput=false bNeverFocus=true StyleName="SquareBar" bBoundToParent=true bScaleToParent=true End Object Controls(0)=GUIButton'VidOKBackground' Begin Object Class=GUIButton Name=AcceptButton Caption="Keep Settings" WinWidth=0.30 WinHeight=0.04 WinLeft=0.125 WinTop=0.75 bBoundToParent=true OnClick=InternalOnClick End Object Controls(1)=GUIButton'AcceptButton' Begin Object Class=GUIButton Name=BackButton Caption="Restore Settings" WinWidth=0.30 WinHeight=0.04 WinLeft=0.65 WinTop=0.75 bBoundToParent=true OnClick=InternalOnClick End Object Controls(2)=GUIButton'BackButton' Begin Object class=GUILabel Name=VideoOKDesc Caption="Accept these settings?" TextALign=TXTA_Center TextColor=(R=230,G=200,B=0,A=255) TextFont="HeaderFont" WinWidth=1 WinLeft=0 WinTop=0.4 WinHeight=32 End Object Controls(3)=GUILabel'VideoOKDesc' Begin Object class=GUILabel Name=VideoOkTimerDesc Caption="(Original settings will be restored in 15 seconds)" TextALign=TXTA_Center TextColor=(R=230,G=200,B=0,A=255) TextFont="MenuFont" WinWidth=1 WinLeft=0 WinTop=0.46 WinHeight=32 End Object Controls(4)=GUILabel'VideoOKTimerDesc' WinLeft=0 WinTop=0.375 WinWidth=1 WinHeight=0.25 OnActivate=StartTimer NL_Ok = "Instellingen toepassen" NL_Cancel = "Instellingen herstellen" NL_Accept = "Deze instellingen accepteren?" NL_RestoreTextPre="(Originele instellingen worden in " NL_RestoreTextPost=" seconden hersteld)" NL_RestoreTextSingular="(Originele instellingen worden in 1 seconde hersteld)" EN_Ok = "Keep Settings" EN_Cancel = "Restore Settings" EN_Accept = "Accept these settings?" EN_RestoreTextPre="(Original settings will be restored in " EN_RestoreTextPost=" seconds)" EN_RestoreTextSingular="(Original settings will be restored in 1 second)" }