From d5fe8274b1e00172b65cc2a3e527fe0f1d2d115c Mon Sep 17 00:00:00 2001 From: Florian Kuepper Date: Sun, 23 Dec 2012 23:46:33 +0100 Subject: [PATCH] Added scroll-buttons (without function yet). --- .../Screens/PartyScreenChallengeMain.xml | 112 ++++++++++++++++-- Output/Themes/Ambient/ScrollDown.png | Bin 0 -> 1084 bytes Output/Themes/Ambient/ScrollUp.png | Bin 0 -> 1083 bytes Output/Themes/Ambient/Skin Blue.xml | 2 + Output/Themes/Ambient/Skin Green.xml | 4 +- Output/Themes/Ambient/Skin Red.xml | 2 + Output/Themes/Ambient/Skin Yellow.xml | 2 + .../PartyScreenChallengeMain.cs | 43 ++++--- 8 files changed, 140 insertions(+), 25 deletions(-) create mode 100644 Output/Themes/Ambient/ScrollDown.png create mode 100644 Output/Themes/Ambient/ScrollUp.png diff --git a/Output/PartyModes/Challenge/Screens/PartyScreenChallengeMain.xml b/Output/PartyModes/Challenge/Screens/PartyScreenChallengeMain.xml index af7ad9e1..350446da 100644 --- a/Output/PartyModes/Challenge/Screens/PartyScreenChallengeMain.xml +++ b/Output/PartyModes/Challenge/Screens/PartyScreenChallengeMain.xml @@ -122,7 +122,7 @@ 40 - 100 + 102 0,00 @@ -151,7 +151,7 @@ 50 - 100 + 102 0,00 @@ -181,7 +181,7 @@ 260 - 100 + 102 0,00 @@ -210,7 +210,7 @@ 340 - 100 + 102 0,00 @@ -239,7 +239,7 @@ 490 - 100 + 102 0,00 @@ -268,7 +268,7 @@ 590 - 100 + 102 0,00 @@ -356,7 +356,7 @@ 660 - 100 + 102 0,00 @@ -726,5 +726,103 @@ 26 + + + ScrollUp + + ScrollUp + + 281 + 94 + -0,01 + 28 + 15 + + + ButtonColor + + + ButtonSColor + + + 75 + 10 + + 32 + + 142 + + + ButtonTextColor + + + ButtonTextSColor + + Center + + Center + + + + Outline + + + + + + + + + + + + + ScrollDown + + ScrollDown + + 281 + 515 + -0,01 + 28 + 15 + + + ButtonColor + + + ButtonSColor + + + 75 + 10 + + 32 + + 142 + + + ButtonTextColor + + + ButtonTextSColor + + Center + + Center + + + + Outline + + + + + + + + + + diff --git a/Output/Themes/Ambient/ScrollDown.png b/Output/Themes/Ambient/ScrollDown.png new file mode 100644 index 0000000000000000000000000000000000000000..94bd2e1410b8954fbba44f0528ecd58e19555b29 GIT binary patch literal 1084 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 B@nrx2 literal 0 HcmV?d00001 diff --git a/Output/Themes/Ambient/Skin Blue.xml b/Output/Themes/Ambient/Skin Blue.xml index f233aa88..48fd16f5 100644 --- a/Output/Themes/Ambient/Skin Blue.xml +++ b/Output/Themes/Ambient/Skin Blue.xml @@ -337,6 +337,8 @@ Plus.png Random.png Popup.png + ScrollUp.png + ScrollDown.png [Blue]BG_Video.mp4 diff --git a/Output/Themes/Ambient/Skin Green.xml b/Output/Themes/Ambient/Skin Green.xml index 86d67d2b..f36533bf 100644 --- a/Output/Themes/Ambient/Skin Green.xml +++ b/Output/Themes/Ambient/Skin Green.xml @@ -330,7 +330,9 @@ Minus.png Plus.png Random.png - Popup.png + Popup.png + ScrollUp.png + ScrollDown.png [Green]BG_Video.mp4 diff --git a/Output/Themes/Ambient/Skin Red.xml b/Output/Themes/Ambient/Skin Red.xml index a1cacc90..cf2302fd 100644 --- a/Output/Themes/Ambient/Skin Red.xml +++ b/Output/Themes/Ambient/Skin Red.xml @@ -331,6 +331,8 @@ Plus.png Random.png Popup.png + ScrollUp.png + ScrollDown.png [Red]BG_Video.mp4 diff --git a/Output/Themes/Ambient/Skin Yellow.xml b/Output/Themes/Ambient/Skin Yellow.xml index 6b0dc676..7e00ad8e 100644 --- a/Output/Themes/Ambient/Skin Yellow.xml +++ b/Output/Themes/Ambient/Skin Yellow.xml @@ -331,6 +331,8 @@ Plus.png Random.png Popup.png + ScrollUp.png + ScrollDown.png [Yellow]BG_Video.mp4 diff --git a/PartyModeChallenge/PartyScreenChallengeMain.cs b/PartyModeChallenge/PartyScreenChallengeMain.cs index 6a8a800e..ac068d31 100644 --- a/PartyModeChallenge/PartyScreenChallengeMain.cs +++ b/PartyModeChallenge/PartyScreenChallengeMain.cs @@ -47,6 +47,9 @@ namespace Vocaluxe.PartyModes const string ButtonExit = "ButtonExit"; const string ButtonPopupYes = "ButtonPopupYes"; const string ButtonPopupNo = "ButtonPopupNo"; + const string ButtonPlayerScrollUp = "ButtonPlayerScrollUp"; + const string ButtonPlayerScrollDown = "ButtonPlayerScrollDown"; + const string StaticPopupBG = "StaticPopupBG"; const string StaticNextPlayer = "StaticNextPlayer"; @@ -55,13 +58,16 @@ namespace Vocaluxe.PartyModes private DataFromScreen Data; private DataToScreenMain GameState; - private List Table; + private List PlayerTable; private List RoundsTable; private List NextPlayerTexts; private List NextPlayerStatics; + private SRectF RoundsTableScrollArea; + private SRectF PlayerTableScrollArea; private int RoundsTableOffset = 0; + private int PlayerTableOffset = 0; public PartyScreenChallengeMain() { @@ -75,7 +81,7 @@ namespace Vocaluxe.PartyModes _ThemeName = "PartyScreenChallengeMain"; _ThemeTexts = new string[] { TextPosition, TextPlayerName, TextNumPlayed, TextWon, TextSingPoints, TextGamePoints, TextNextPlayer, TextPopupReallyExit, TextRoundNumber, TextRoundPlayer, TextRoundScore }; - _ThemeButtons = new string[] { ButtonNextRound, ButtonBack, ButtonExit, ButtonPopupYes, ButtonPopupNo }; + _ThemeButtons = new string[] { ButtonNextRound, ButtonBack, ButtonExit, ButtonPopupYes, ButtonPopupNo, ButtonPlayerScrollDown, ButtonPlayerScrollUp }; _ThemeStatics = new string[] { StaticPopupBG, StaticNextPlayer }; _ScreenVersion = ScreenVersion; } @@ -85,7 +91,7 @@ namespace Vocaluxe.PartyModes base.LoadTheme(XmlPath); GameState = new DataToScreenMain(); - BuildTable(); + BuildPlayerTable(); NextPlayerTexts = new List(); NextPlayerStatics = new List(); @@ -203,7 +209,7 @@ namespace Vocaluxe.PartyModes { base.OnShow(); - Updatetable(); + UpdatePlayerTable(PlayerTableOffset); UpdateNextPlayerPositions(); UpdateNextPlayerContents(); if(GameState.CurrentRoundNr == 1 || RoundsTable == null) @@ -398,6 +404,7 @@ namespace Vocaluxe.PartyModes { for(int p = 0; p < RoundsTable[i].TextPlayer.Count; p++) { + RoundsTable[i].Number.Text = (i + 1 + Offset).ToString(); int pID = GameState.ProfileIDs[GameState.Combs[i + Offset].Player[p]]; RoundsTable[i].TextPlayer[p].Text = profile[pID].PlayerName+""; if ((GameState.CurrentRoundNr - 1) > i) @@ -408,12 +415,14 @@ namespace Vocaluxe.PartyModes } } - private void BuildTable() + private void BuildPlayerTable() { - Table = new List(); + int NumPlayerVisible = 10; + + PlayerTable = new List(); float delta = Texts[htTexts(TextPosition)].Height * 1.2f; - for (int i = 0; i < _PartyMode.GetMaxPlayer(); i++) + for (int i = 0; i < NumPlayerVisible; i++) { TableRow row = new TableRow(); @@ -447,19 +456,19 @@ namespace Vocaluxe.PartyModes AddText(row.SingPoints); AddText(row.GamePoints); - Table.Add(row); + PlayerTable.Add(row); } } - private void Updatetable() + private void UpdatePlayerTable(int Offset) { SProfile[] profiles = _Base.Profiles.GetProfiles(); - for (int i = 0; i < Table.Count; i++) + for (int i = 0; i < PlayerTable.Count; i++) { - TableRow row = Table[i]; + TableRow row = PlayerTable[i+Offset]; - if (i < GameState.ResultTable.Count) + if (i+Offset < GameState.ResultTable.Count) { row.Pos.Visible = true; row.Name.Visible = true; @@ -468,11 +477,11 @@ namespace Vocaluxe.PartyModes row.SingPoints.Visible = true; row.GamePoints.Visible = true; - row.Name.Text = profiles[GameState.ResultTable[i].PlayerID].PlayerName; - row.Rounds.Text = GameState.ResultTable[i].NumRounds.ToString(); - row.Won.Text = GameState.ResultTable[i].NumWon.ToString(); - row.SingPoints.Text = GameState.ResultTable[i].SumSingPoints.ToString(); - row.GamePoints.Text = GameState.ResultTable[i].NumGamePoints.ToString(); + row.Name.Text = profiles[GameState.ResultTable[i+Offset].PlayerID].PlayerName; + row.Rounds.Text = GameState.ResultTable[i+Offset].NumRounds.ToString(); + row.Won.Text = GameState.ResultTable[i+Offset].NumWon.ToString(); + row.SingPoints.Text = GameState.ResultTable[i+Offset].SumSingPoints.ToString(); + row.GamePoints.Text = GameState.ResultTable[i+Offset].NumGamePoints.ToString(); } else {