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 @@
+