From 88a8d594ea72fb3cef0a337d5b420ea7c3d2c025 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Florian=20K=C3=BCpper?= Date: Thu, 12 Dec 2013 11:09:57 +0100 Subject: [PATCH] Fixed flickering of bg-slideshow. --- Vocaluxe/Screens/CScreenScore.cs | 1 + VocaluxeLib/Menu/CBackground.cs | 19 ++++++++++--------- 2 files changed, 11 insertions(+), 9 deletions(-) diff --git a/Vocaluxe/Screens/CScreenScore.cs b/Vocaluxe/Screens/CScreenScore.cs index af7525f5..b6dabb77 100644 --- a/Vocaluxe/Screens/CScreenScore.cs +++ b/Vocaluxe/Screens/CScreenScore.cs @@ -430,6 +430,7 @@ namespace Vocaluxe.Screens private bool _UpdateBackground() { string[] photos = CVocaluxeServer.getPhotosOfThisRound(); + photos = new string[] { "C:\\Users\\Florian\\Desktop\\IMG_20131128_140016.jpg", "C:\\Users\\Florian\\Desktop\\P1080632.jpg" }; _SlideShowBG.RemoveSlideShowTextures(); foreach (string photo in photos) _SlideShowBG.AddSlideShowTexture(photo); diff --git a/VocaluxeLib/Menu/CBackground.cs b/VocaluxeLib/Menu/CBackground.cs index 3fc5616b..7049bac9 100644 --- a/VocaluxeLib/Menu/CBackground.cs +++ b/VocaluxeLib/Menu/CBackground.cs @@ -280,6 +280,15 @@ namespace VocaluxeLib.Menu _SlideShowCurrent = 0; } + if (_SlideShowTimer.ElapsedMilliseconds >= (CBase.Settings.GetSlideShowFadeTime() + CBase.Settings.GetSlideShowImageTime())) + { + _SlideShowTimer.Restart(); + if (_SlideShowCurrent + 1 < _SlideShowTextures.Count) + _SlideShowCurrent++; + else if (_SlideShowCurrent != 0) + _SlideShowCurrent = 0; + } + CTexture texture = _SlideShowTextures[_SlideShowCurrent]; if (texture == null) @@ -291,15 +300,7 @@ namespace VocaluxeLib.Menu CBase.Drawing.DrawTexture(texture, new SRectF(rect.X, rect.Y, rect.Width, rect.Height, CBase.Settings.GetZFar() / 4)); - if (_SlideShowTimer.ElapsedMilliseconds >= (CBase.Settings.GetSlideShowFadeTime() + CBase.Settings.GetSlideShowImageTime())) - { - _SlideShowTimer.Restart(); - if (_SlideShowCurrent + 1 < _SlideShowTextures.Count) - _SlideShowCurrent++; - else if (_SlideShowCurrent != 0) - _SlideShowCurrent = 0; - } - else if (_SlideShowTimer.ElapsedMilliseconds >= CBase.Settings.GetSlideShowImageTime()) + if (_SlideShowTimer.ElapsedMilliseconds >= CBase.Settings.GetSlideShowImageTime()) { if (_SlideShowCurrent + 1 < _SlideShowTextures.Count) texture = _SlideShowTextures[_SlideShowCurrent + 1];