From e9b584d84cafa9409d991b3c34af884c3044d43c Mon Sep 17 00:00:00 2001 From: Flamefire Date: Sun, 7 Sep 2014 19:33:28 +0200 Subject: [PATCH] Show an error if no profiles found and disable gaming --- Output/Languages/English.xml | 1 + Output/Languages/German.xml | 1 + Output/Themes/Ambient/Screens/ScreenMain.xml | 76 ++++++++++++++++++- .../Themes/Changelog/Changelog_ScreenMain.txt | 10 +++ Vocaluxe/Screens/CScreenMain.cs | 30 +++++--- 5 files changed, 106 insertions(+), 12 deletions(-) create mode 100644 Output/Themes/Changelog/Changelog_ScreenMain.txt diff --git a/Output/Languages/English.xml b/Output/Languages/English.xml index 6554f2dc..c0ece78c 100644 --- a/Output/Languages/English.xml +++ b/Output/Languages/English.xml @@ -93,6 +93,7 @@ Party Options Profiles + No profiles found! Party Mode Selection Party Mode Description diff --git a/Output/Languages/German.xml b/Output/Languages/German.xml index 50ffef0a..4ded8f3f 100644 --- a/Output/Languages/German.xml +++ b/Output/Languages/German.xml @@ -92,6 +92,7 @@ Party Optionen Profile + Keine Profile gefunden! Party-Modus Auswahl Party-Modus Beschreibung diff --git a/Output/Themes/Ambient/Screens/ScreenMain.xml b/Output/Themes/Ambient/Screens/ScreenMain.xml index 0d256cd2..50e3a04c 100644 --- a/Output/Themes/Ambient/Screens/ScreenMain.xml +++ b/Output/Themes/Ambient/Screens/ScreenMain.xml @@ -1,7 +1,7 @@  - 1 + 2 Video @@ -314,5 +314,79 @@ 26 + + + 10 + 690 + + -1 + + 15 + + + TextWhite + + + TextWhite + + Left + + Center + + + + Normal + + + + + + + + + TextBG + + 150 + 610 + -1,90 + 355 + 30 + + + StaticWarningColor + + + + + + + 320 + 612 + + -2,00 + + 27 + + 355 + + + TextWarningColor + + + TextWarningColor + + Center + + Center + + + + Outline + + TR_SCREENMAIN_TEXT_NOPROFILES + + + + diff --git a/Output/Themes/Changelog/Changelog_ScreenMain.txt b/Output/Themes/Changelog/Changelog_ScreenMain.txt new file mode 100644 index 00000000..b3eb3bb7 --- /dev/null +++ b/Output/Themes/Changelog/Changelog_ScreenMain.txt @@ -0,0 +1,10 @@ +SceenMain + +++++++++++ +Version 2: + +Add: + + + + diff --git a/Vocaluxe/Screens/CScreenMain.cs b/Vocaluxe/Screens/CScreenMain.cs index 6cd878bc..cc4e3c4c 100644 --- a/Vocaluxe/Screens/CScreenMain.cs +++ b/Vocaluxe/Screens/CScreenMain.cs @@ -27,7 +27,7 @@ namespace Vocaluxe.Screens // Version number for theme files. Increment it, if you've changed something on the theme files! protected override int _ScreenVersion { - get { return 1; } + get { return 2; } } private const string _ButtonSing = "ButtonSing"; @@ -35,23 +35,30 @@ namespace Vocaluxe.Screens private const string _ButtonOptions = "ButtonOptions"; private const string _ButtonProfiles = "ButtonProfiles"; private const string _ButtonExit = "ButtonExit"; - - private CText _ReleaseText; + private const string _StaticWarningProfiles = "StaticWarningProfiles"; + private const string _TextWarningProfiles = "TextWarningProfiles"; + private const string _TextRelease = "TextRelease"; //CParticleEffect Snowflakes; public override void Init() { base.Init(); - _ThemeStatics = new string[] {"StaticMenuBar"}; + _ThemeStatics = new string[] {"StaticMenuBar", _StaticWarningProfiles}; _ThemeButtons = new string[] {_ButtonSing, _ButtonParty, _ButtonOptions, _ButtonProfiles, _ButtonExit}; + _ThemeTexts = new string[] {_TextRelease, _TextWarningProfiles}; } public override void LoadTheme(string xmlPath) { base.LoadTheme(xmlPath); - _ReleaseText = GetNewText(10, 690, -1, 15, -1, EAlignment.Left, EStyle.Normal, "Normal", new SColorF(1f, 1f, 1f, 1f), CSettings.GetFullVersionText()); + _Texts[_TextRelease].Text = CSettings.GetFullVersionText(); + // ReSharper disable ConditionIsAlwaysTrueOrFalse + _Texts[_TextRelease].Visible = CSettings.VersionRevision != ERevision.Release; + // ReSharper restore ConditionIsAlwaysTrueOrFalse + _Statics[_StaticWarningProfiles].Visible = false; + _Texts[_TextWarningProfiles].Visible = false; } public override bool HandleInput(SKeyEvent keyEvent) @@ -68,7 +75,8 @@ namespace Vocaluxe.Screens break; case Keys.S: - CGraphics.FadeTo(EScreens.ScreenSong); + if (CProfiles.NumProfiles > 0) + CGraphics.FadeTo(EScreens.ScreenSong); break; case Keys.C: @@ -145,6 +153,11 @@ namespace Vocaluxe.Screens public override bool UpdateGame() { + bool profileOK = CProfiles.NumProfiles > 0; + _Statics[_StaticWarningProfiles].Visible = !profileOK; + _Texts[_TextWarningProfiles].Visible = !profileOK; + _Buttons[_ButtonSing].Enabled = profileOK; + _Buttons[_ButtonParty].Enabled = profileOK; return true; } @@ -159,11 +172,6 @@ namespace Vocaluxe.Screens //Snowflakes.Draw(); _DrawFG(); - // ReSharper disable ConditionIsAlwaysTrueOrFalse - if (CSettings.VersionRevision != ERevision.Release) - // ReSharper restore ConditionIsAlwaysTrueOrFalse - _ReleaseText.Draw(); - return true; }