From d6557de01c3a0c194b5a61d6d4e72cd3005d03de Mon Sep 17 00:00:00 2001 From: Florian Kuepper Date: Sat, 16 Jun 2012 17:17:45 +0200 Subject: [PATCH] Added lyrics-options to new screen. TODO: Update languages (spanish + frensh) --- Output/Languages/Deutsch.xml | 5 + Output/Languages/English.xml | 5 + .../Themes/Ambient/Screens/ScreenOptions.xml | 67 +++- .../Ambient/Screens/ScreenOptionsLyrics.xml | 299 ++++++++++++++++++ .../Changelog_ScreenOptionsLyrics.txt | 17 + Vocaluxe/Menu/CGraphics.cs | 8 +- Vocaluxe/Screens/CScreenOptions.cs | 9 +- Vocaluxe/Screens/CScreenOptionsLyrics.cs | 124 ++++++++ Vocaluxe/Vocaluxe.csproj | 1 + 9 files changed, 525 insertions(+), 10 deletions(-) create mode 100644 Output/Themes/Ambient/Screens/ScreenOptionsLyrics.xml create mode 100644 Output/Themes/Changelog/Changelog_ScreenOptionsLyrics.txt create mode 100644 Vocaluxe/Screens/CScreenOptionsLyrics.cs diff --git a/Output/Languages/Deutsch.xml b/Output/Languages/Deutsch.xml index ecb1c632..b286b0ad 100644 --- a/Output/Languages/Deutsch.xml +++ b/Output/Languages/Deutsch.xml @@ -152,6 +152,7 @@ Sound Aufnahme Video + Songtext Design Spieleinstellungen @@ -186,6 +187,10 @@ Aussehen des Timers Spieler-Infos ein/ausblenden Cover Ladeverhalten + + Songtexteinstellungen + Stil + Oben anzeigen Videoeinstellungen Video-Hintergründe diff --git a/Output/Languages/English.xml b/Output/Languages/English.xml index e40c62d2..6037e02e 100644 --- a/Output/Languages/English.xml +++ b/Output/Languages/English.xml @@ -152,6 +152,7 @@ Sound Record Video + Lyrics Theme Game Options @@ -186,6 +187,10 @@ Timer-Look Fade player-info Cover Loading Behavior + + Lyrics Options + Style + Lyrics on top Video Options Video Backgrounds diff --git a/Output/Themes/Ambient/Screens/ScreenOptions.xml b/Output/Themes/Ambient/Screens/ScreenOptions.xml index 9bf1033a..03cf6f05 100644 --- a/Output/Themes/Ambient/Screens/ScreenOptions.xml +++ b/Output/Themes/Ambient/Screens/ScreenOptions.xml @@ -62,7 +62,7 @@ Button - 145 + 54,7 600 0,00 150 @@ -117,7 +117,7 @@ Button - 355 + 259,4 600 0,00 150 @@ -172,7 +172,7 @@ Button - 565 + 464,1 600 0,00 150 @@ -227,7 +227,7 @@ Button - 775 + 668,8 600 0,00 150 @@ -276,13 +276,68 @@ 26 + + + Button + + Button + + 873,5 + 600 + 0,00 + 150 + 50 + + + ButtonColor + + + ButtonSColor + + + 75 + 10 + + 32 + + 142 + + + ButtonTextColor + + + ButtonTextSColor + + Center + + + + Outline + + TR_SCREENO_BUTTON_LYRICS + + + + + + 10 + 26 + + + + + + 10 + 26 + + Button Button - 985 + 1078,2 600 0,00 150 @@ -332,4 +387,4 @@ - \ No newline at end of file + diff --git a/Output/Themes/Ambient/Screens/ScreenOptionsLyrics.xml b/Output/Themes/Ambient/Screens/ScreenOptionsLyrics.xml new file mode 100644 index 00000000..bf79c927 --- /dev/null +++ b/Output/Themes/Ambient/Screens/ScreenOptionsLyrics.xml @@ -0,0 +1,299 @@ + + + + 1 + + + Video + + + + BG_Options + + + BackgroundColor + + + + Menu + + 40 + 40 + 0,00 + 1200 + 50 + + + StaticColor + + + + + + + 640 + 48 + + 0,00 + + 32 + + + + StaticColor + + + TextSColor + + Center + + + + Outline + + TR_SCREENOLYRICS_OPTIONS + + + + + + + 75 + 105 + + 0,00 + + 32 + + + + StaticColor + + + TextSColor + + Left + + + + Outline + + TR_SCREENOLYRICS_STYLE + + + + + + + 75 + 165 + + 0,00 + + 32 + + + + StaticColor + + + TextSColor + + Left + + + + Outline + + TR_SCREENOLYRICS_ONTOP + + + + + + + Button + + Button + + 145 + 600 + 0,00 + 150 + 50 + + + ButtonColor + + + ButtonSColor + + + 75 + 10 + + 32 + + 142 + + + ButtonTextColor + + + ButtonTextSColor + + Center + + + + Outline + + TR_BUTTON_BACK + + + + + + 10 + 26 + + + + + + 10 + 26 + + + + + Invisible + + SelectSlideArrowLeft + + SelectSlideArrowRight + + SelectSlide + + SelectSlideArrowLeft + + SelectSlideArrowRight + + SelectSlide + + 500 + 100 + 0,00 + 700 + 50 + + 505 + 105 + 0,00 + 40 + 40 + + 1170 + 105 + 0,00 + 40 + 40 + + + SelectSlideColor + + + SelectSlideSColor + + + SelectSlideHColor + + + ArrowColor + + + ArrowSColor + + + TextColor + + + TextSColor + + 32,00 + + 205,33 + + Outline + + Bold + + 4 + + + + Invisible + + SelectSlideArrowLeft + + SelectSlideArrowRight + + SelectSlide + + SelectSlideArrowLeft + + SelectSlideArrowRight + + SelectSlide + + 500 + 160 + 0,00 + 700 + 50 + + 505 + 165 + 0,00 + 40 + 40 + + 1170 + 165 + 0,00 + 40 + 40 + + + SelectSlideColor + + + SelectSlideSColor + + + SelectSlideHColor + + + ArrowColor + + + ArrowSColor + + + TextColor + + + TextSColor + + 32,00 + + 205,33 + + Outline + + Bold + + 2 + + + diff --git a/Output/Themes/Changelog/Changelog_ScreenOptionsLyrics.txt b/Output/Themes/Changelog/Changelog_ScreenOptionsLyrics.txt new file mode 100644 index 00000000..8af47a1e --- /dev/null +++ b/Output/Themes/Changelog/Changelog_ScreenOptionsLyrics.txt @@ -0,0 +1,17 @@ +ScreenOptionsSound + +++++++++++ +Version 1: + +Add: + + + + + + +and some texts for description (Text1, Text2, Text3) +TR_SCREENOLYRICS_OPTIONS +TR_SCREENOLYRICS_STYLE +TR_SCREENOLYRICS_ONTOP +++++++++++ diff --git a/Vocaluxe/Menu/CGraphics.cs b/Vocaluxe/Menu/CGraphics.cs index 092a777d..d0363134 100644 --- a/Vocaluxe/Menu/CGraphics.cs +++ b/Vocaluxe/Menu/CGraphics.cs @@ -27,11 +27,12 @@ namespace Vocaluxe.Menu ScreenOptionsSound = 10, ScreenOptionsRecord = 11, ScreenOptionsVideo = 12, - ScreenOptionsTheme = 13, + ScreenOptionsLyrics = 13, + ScreenOptionsTheme = 14, - ScreenNames = 14, + ScreenNames = 15, - ScreenCredits = 15, + ScreenCredits = 16, ScreenNull = -1 } @@ -228,6 +229,7 @@ namespace Vocaluxe.Menu _Screens.Add(new CScreenOptionsSound()); _Screens.Add(new CScreenOptionsRecord()); _Screens.Add(new CScreenOptionsVideo()); + _Screens.Add(new CScreenOptionsLyrics()); _Screens.Add(new CScreenOptionsTheme()); _Screens.Add(new CScreenNames()); _Screens.Add(new CScreenCredits()); diff --git a/Vocaluxe/Screens/CScreenOptions.cs b/Vocaluxe/Screens/CScreenOptions.cs index 0e22fba7..851919bf 100644 --- a/Vocaluxe/Screens/CScreenOptions.cs +++ b/Vocaluxe/Screens/CScreenOptions.cs @@ -18,6 +18,7 @@ namespace Vocaluxe.Screens private const string ButtonOptionsSound = "ButtonOptionsSound"; private const string ButtonOptionsRecord = "ButtonOptionsRecord"; private const string ButtonOptionsVideo = "ButtonOptionsVideo"; + private const string ButtonOptionsLyrics = "ButtonOptionsLyrics"; private const string ButtonOptionsTheme = "ButtonOptionsTheme"; public CScreenOptions() @@ -31,7 +32,7 @@ namespace Vocaluxe.Screens _ThemeName = "ScreenOptions"; _ScreenVersion = ScreenVersion; - _ThemeButtons = new string[] { ButtonOptionsGame, ButtonOptionsSound, ButtonOptionsRecord, ButtonOptionsVideo, ButtonOptionsTheme }; + _ThemeButtons = new string[] { ButtonOptionsGame, ButtonOptionsSound, ButtonOptionsRecord, ButtonOptionsVideo, ButtonOptionsLyrics, ButtonOptionsTheme }; } public override bool HandleInput(KeyEvent KeyEvent) @@ -68,6 +69,9 @@ namespace Vocaluxe.Screens if (Buttons[htButtons(ButtonOptionsVideo)].Selected) CGraphics.FadeTo(EScreens.ScreenOptionsVideo); + if (Buttons[htButtons(ButtonOptionsLyrics)].Selected) + CGraphics.FadeTo(EScreens.ScreenOptionsLyrics); + if (Buttons[htButtons(ButtonOptionsTheme)].Selected) CGraphics.FadeTo(EScreens.ScreenOptionsTheme); @@ -95,6 +99,9 @@ namespace Vocaluxe.Screens if (Buttons[htButtons(ButtonOptionsVideo)].Selected) CGraphics.FadeTo(EScreens.ScreenOptionsVideo); + if (Buttons[htButtons(ButtonOptionsLyrics)].Selected) + CGraphics.FadeTo(EScreens.ScreenOptionsLyrics); + if (Buttons[htButtons(ButtonOptionsTheme)].Selected) CGraphics.FadeTo(EScreens.ScreenOptionsTheme); } diff --git a/Vocaluxe/Screens/CScreenOptionsLyrics.cs b/Vocaluxe/Screens/CScreenOptionsLyrics.cs new file mode 100644 index 00000000..6224f0fa --- /dev/null +++ b/Vocaluxe/Screens/CScreenOptionsLyrics.cs @@ -0,0 +1,124 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Windows.Forms; + +using Vocaluxe.Base; +using Vocaluxe.Menu; + +namespace Vocaluxe.Screens +{ + class CScreenOptionsLyrics : CMenu + { + // Version number for theme files. Increment it, if you've changed something on the theme files! + const int ScreenVersion = 1; + + private const string SelectSlideLyricStyle = "SelectSlideLyricStyle"; + private const string SelectSlideLyricsOnTop = "SelectSlideLyricsOnTop"; + + private const string ButtonExit = "ButtonExit"; + + public CScreenOptionsLyrics() + { + Init(); + } + + protected override void Init() + { + base.Init(); + + _ThemeName = "ScreenOptionsLyrics"; + _ScreenVersion = ScreenVersion; + + _ThemeButtons = new string[] { ButtonExit }; + _ThemeSelectSlides = new string[] { SelectSlideLyricStyle, SelectSlideLyricsOnTop }; + } + + public override void LoadTheme() + { + base.LoadTheme(); + SelectSlides[htSelectSlides(SelectSlideLyricStyle)].SetValues((int)CConfig.LyricStyle); + SelectSlides[htSelectSlides(SelectSlideLyricsOnTop)].SetValues((int)CConfig.LyricsOnTop); + } + + public override bool HandleInput(KeyEvent KeyEvent) + { + base.HandleInput(KeyEvent); + + if (KeyEvent.KeyPressed) + { + + } + else + { + switch (KeyEvent.Key) + { + case Keys.Escape: + case Keys.Back: + SaveConfig(); + CGraphics.FadeTo(EScreens.ScreenOptions); + break; + + case Keys.S: + CGraphics.FadeTo(EScreens.ScreenSong); + break; + + case Keys.Enter: + if (Buttons[htButtons(ButtonExit)].Selected) + { + SaveConfig(); + CGraphics.FadeTo(EScreens.ScreenOptions); + } + break; + + case Keys.Left: + SaveConfig(); + break; + + case Keys.Right: + SaveConfig(); + break; + } + } + return true; + } + + public override bool HandleMouse(MouseEvent MouseEvent) + { + base.HandleMouse(MouseEvent); + + if (MouseEvent.RB) + { + SaveConfig(); + CGraphics.FadeTo(EScreens.ScreenOptions); + } + if (MouseEvent.LB && IsMouseOver(MouseEvent)) + { + SaveConfig(); + if (Buttons[htButtons(ButtonExit)].Selected) + { + CGraphics.FadeTo(EScreens.ScreenOptions); + } + } + return true; + } + + public override bool UpdateGame() + { + return true; + } + + public override bool Draw() + { + base.Draw(); + return true; + } + + private void SaveConfig() + { + CConfig.LyricsOnTop = (EOffOn)SelectSlides[htSelectSlides(SelectSlideLyricsOnTop)].Selection; + CConfig.LyricStyle = (ELyricStyle)SelectSlides[htSelectSlides(SelectSlideLyricStyle)].Selection; + CConfig.SaveConfig(); + } + } +} diff --git a/Vocaluxe/Vocaluxe.csproj b/Vocaluxe/Vocaluxe.csproj index e8282b61..459146bf 100644 --- a/Vocaluxe/Vocaluxe.csproj +++ b/Vocaluxe/Vocaluxe.csproj @@ -197,6 +197,7 @@ +