diff options
author | brunzelchen <brunzelchen@b956fd51-792f-4845-bead-9b4dfca2ff2c> | 2010-04-28 19:54:31 +0000 |
---|---|---|
committer | brunzelchen <brunzelchen@b956fd51-792f-4845-bead-9b4dfca2ff2c> | 2010-04-28 19:54:31 +0000 |
commit | 60e6d3f9904a8114e985fccd14454b9b604ea275 (patch) | |
tree | c3dc298e5c81272f3df8e80171ae0f60d8774f2e /Game/Code/Screens/UScreenOptionsThemes.pas | |
parent | 58a47541955f5010269d72a06e307bbb945211ea (diff) | |
download | usdx-60e6d3f9904a8114e985fccd14454b9b604ea275.tar.gz usdx-60e6d3f9904a8114e985fccd14454b9b604ea275.tar.xz usdx-60e6d3f9904a8114e985fccd14454b9b604ea275.zip |
- new SDL.dll (with a quick and dirty workaround for the hanging-mouse problem)
- changing of sorting and folder-option (on/off) does not need any restart now
- a lot of code clean up
- some bugfixes... i hope... dont't know which...
git-svn-id: svn://svn.code.sf.net/p/ultrastardx/svn/branches/1.0.1 Challenge MOD@2316 b956fd51-792f-4845-bead-9b4dfca2ff2c
Diffstat (limited to 'Game/Code/Screens/UScreenOptionsThemes.pas')
-rw-r--r-- | Game/Code/Screens/UScreenOptionsThemes.pas | 32 |
1 files changed, 21 insertions, 11 deletions
diff --git a/Game/Code/Screens/UScreenOptionsThemes.pas b/Game/Code/Screens/UScreenOptionsThemes.pas index 320baa83..9a65aae0 100644 --- a/Game/Code/Screens/UScreenOptionsThemes.pas +++ b/Game/Code/Screens/UScreenOptionsThemes.pas @@ -9,8 +9,10 @@ type TScreenOptionsThemes = class(TMenu)
private
procedure ReloadTheme;
+
public
- SkinSelect: Integer;
+ AktualTheme: Integer;
+ SkinSelect: Integer;
constructor Create; override;
function ParseInput(PressedKey: Cardinal; ScanCode: byte; PressedDown: Boolean): Boolean; override;
procedure onShow; override;
@@ -46,10 +48,12 @@ begin Ini.Save;
// Reload all screens, after Theme changed
- // Todo : JB - Check if theme was actually changed
- UGraphic.UnLoadScreens();
- UGraphic.LoadScreens( false );
-
+ if(AktualTheme<>Ini.Theme) then
+ begin
+ UGraphic.UnLoadScreens();
+ UGraphic.LoadScreens( true );
+ ScreenSong.Refresh(true);
+ end;
Music.PlayBack;
FadeTo(@ScreenOptions);
end;
@@ -60,10 +64,12 @@ begin Ini.Save;
// Reload all screens, after Theme changed
- // Todo : JB - Check if theme was actually changed
- UGraphic.UnLoadScreens();
- UGraphic.LoadScreens( false );
-
+ if(AktualTheme<>Ini.Theme) then
+ begin
+ UGraphic.UnLoadScreens();
+ UGraphic.LoadScreens( true );
+ ScreenSong.Refresh(true);
+ end;
Music.PlayBack;
FadeTo(@ScreenOptions);
end;
@@ -119,8 +125,8 @@ begin end;
constructor TScreenOptionsThemes.Create;
-var
- I: integer;
+{var
+ I: integer;}
begin
inherited Create;
@@ -143,6 +149,8 @@ begin Interaction := 0;
if not Help.SetHelpID(ID) then
Log.LogError('No Entry for Help-ID ' + ID + ' (ScreenOptionsThemes)');
+
+ AktualTheme := Ini.Theme;
end;
procedure TScreenOptionsThemes.ReloadTheme;
@@ -160,6 +168,8 @@ begin Display.Draw;
SwapBuffers;
+ ScreenOptionsThemes.AktualTheme := self.AktualTheme;
+
freeandnil( self );
end;
|