First fix for keyboard-handling.
This commit is contained in:
1 parent
b007c79d22
commit
f31dd0903f
2 files changed
+37
-8
No files matched your search
@@ -43,8 +43,7 @@ namespace Vocaluxe.Menu
|
|||||||
_Type == EType.TStatic ||
|
_Type == EType.TStatic ||
|
||||||
_Type == EType.TSongMenu ||
|
_Type == EType.TSongMenu ||
|
||||||
_Type == EType.TLyric ||
|
_Type == EType.TLyric ||
|
||||||
_Type == EType.TSingNote ||
|
_Type == EType.TSingNote );
|
||||||
_Type == EType.TPlaylist);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -71,6 +71,7 @@ namespace Vocaluxe.Menu
|
|||||||
public bool Visible;
|
public bool Visible;
|
||||||
public bool Selected;
|
public bool Selected;
|
||||||
|
|
||||||
|
public bool changeOrder = false;
|
||||||
public int ActivePlaylistID = 0;
|
public int ActivePlaylistID = 0;
|
||||||
public int Offset = 0;
|
public int Offset = 0;
|
||||||
public int ActiveHover = -1;
|
public int ActiveHover = -1;
|
||||||
@@ -290,9 +291,17 @@ namespace Vocaluxe.Menu
|
|||||||
{
|
{
|
||||||
case Keys.Up:
|
case Keys.Up:
|
||||||
if (CurrentPlaylistElement == -1)
|
if (CurrentPlaylistElement == -1)
|
||||||
|
{
|
||||||
CurrentPlaylistElement = 0;
|
CurrentPlaylistElement = 0;
|
||||||
|
ActiveHover = CurrentPlaylistElement;
|
||||||
|
return true;
|
||||||
|
}
|
||||||
else if (CurrentPlaylistElement - 1 > 0)
|
else if (CurrentPlaylistElement - 1 > 0)
|
||||||
|
{
|
||||||
CurrentPlaylistElement--;
|
CurrentPlaylistElement--;
|
||||||
|
ActiveHover = CurrentPlaylistElement;
|
||||||
|
return true;
|
||||||
|
}
|
||||||
else if (CurrentPlaylistElement - 1 == 0)
|
else if (CurrentPlaylistElement - 1 == 0)
|
||||||
{
|
{
|
||||||
CurrentPlaylistElement--;
|
CurrentPlaylistElement--;
|
||||||
@@ -301,18 +310,25 @@ namespace Vocaluxe.Menu
|
|||||||
Offset--;
|
Offset--;
|
||||||
Update();
|
Update();
|
||||||
}
|
}
|
||||||
|
ActiveHover = CurrentPlaylistElement;
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
ActiveHover = CurrentPlaylistElement;
|
return false;
|
||||||
return true;
|
|
||||||
|
|
||||||
case Keys.Down:
|
case Keys.Down:
|
||||||
if (CurrentPlaylistElement == -1)
|
if (CurrentPlaylistElement == -1)
|
||||||
|
{
|
||||||
CurrentPlaylistElement = 0;
|
CurrentPlaylistElement = 0;
|
||||||
|
ActiveHover = CurrentPlaylistElement;
|
||||||
|
return true;
|
||||||
|
}
|
||||||
else if (CurrentPlaylistElement + 1 < PlaylistElements.Count)
|
else if (CurrentPlaylistElement + 1 < PlaylistElements.Count)
|
||||||
{
|
{
|
||||||
if (PlaylistElements[CurrentPlaylistElement + 1].Content != -1)
|
if (PlaylistElements[CurrentPlaylistElement + 1].Content != -1)
|
||||||
{
|
{
|
||||||
CurrentPlaylistElement++;
|
CurrentPlaylistElement++;
|
||||||
|
ActiveHover = CurrentPlaylistElement;
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (CurrentPlaylistElement + 1 >= PlaylistElements.Count && CurrentPlaylistElement + Offset + 1 < PlaylistElementContents.Count)
|
else if (CurrentPlaylistElement + 1 >= PlaylistElements.Count && CurrentPlaylistElement + Offset + 1 < PlaylistElementContents.Count)
|
||||||
@@ -321,10 +337,11 @@ namespace Vocaluxe.Menu
|
|||||||
{
|
{
|
||||||
Offset++;
|
Offset++;
|
||||||
Update();
|
Update();
|
||||||
|
ActiveHover = CurrentPlaylistElement;
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
ActiveHover = CurrentPlaylistElement;
|
return false;
|
||||||
return true;
|
|
||||||
|
|
||||||
case Keys.Delete:
|
case Keys.Delete:
|
||||||
if (CurrentPlaylistElement != -1)
|
if (CurrentPlaylistElement != -1)
|
||||||
@@ -446,9 +463,22 @@ namespace Vocaluxe.Menu
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
//Change order with holding LB
|
//Change order with holding LB
|
||||||
else if (CHelper.IsInBounds(PlaylistElements[i].Background.Rect, mevent) && mevent.LBH && PlaylistElements[i].Content != -1)
|
else if (CHelper.IsInBounds(PlaylistElements[i].Background.Rect, mevent) && mevent.LBH && PlaylistElements[i].Content != -1 && !changeOrder)
|
||||||
{
|
{
|
||||||
return true;
|
changeOrder = true;
|
||||||
|
CurrentPlaylistElement = i;
|
||||||
|
}
|
||||||
|
else if (CHelper.IsInBounds(PlaylistElements[i].Background.Rect, mevent) && mevent.LBH && PlaylistElements[i].Content != -1 && changeOrder)
|
||||||
|
{
|
||||||
|
if (PlaylistElements.Count < CurrentPlaylistElement + 1)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
else if (PlaylistElementContents.Count < CurrentPlaylistElement + 1 + Offset)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
if (mevent.Y < PlaylistElements[CurrentPlaylistElement + 1].Background.Rect.Y)
|
||||||
|
{
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in new issue
Block a user