* QServerInfo.cs: Add barebones ServerInfo class

* QClient.cs: remove logging

* QWorkspace.cs: Add methods to build WorkspaceInfo and ServerInfo

* CueListPage.xaml.cs: List Multiple Cue Lists in Demo app
This commit is contained in:
2020-11-29 14:38:16 -06:00
parent 4ef3f689df
commit b622462c0d
4 changed files with 39 additions and 15 deletions
@@ -64,24 +64,20 @@ namespace QControlKitXamDemo
void Workspace_WorkspaceUpdated(object source, QWorkspaceUpdatedArgs args)
{
foreach (var cue in connectedWorkspace.cueLists)
if(connectedWorkspace.cueLists.Count > 0)
{
if(cue.cues.Count > 0)
List<Task> cueAddTasks = new List<Task>();
foreach(var aCue in connectedWorkspace.cueLists)
{
List<Task> cueAddTasks = new List<Task>();
foreach(var aCue in cue.cues)
Grid cueGrid = cueToGrid(aCue);
cueGridDict.Add(aCue.uid, cueGrid);
MainThread.InvokeOnMainThreadAsync(() =>
{
Grid cueGrid = cueToGrid(aCue);
cueGridDict.Add(aCue.uid, cueGrid);
MainThread.InvokeOnMainThreadAsync(() =>
{
cueListsGrid.RowDefinitions.Add(new RowDefinition { Height = GridLength.Auto });
cueListsGrid.Children.Add(cueGrid, 0, aCue.sortIndex);
}).Wait();
}
connectedWorkspace.valueForKey(cue, QOSCKey.PlaybackPositionId); //fetch playback position for cueList once all cue loading is done.
break; //only load first cue list with cues.
cueListsGrid.RowDefinitions.Add(new RowDefinition { Height = GridLength.Auto });
cueListsGrid.Children.Add(cueGrid, 0, aCue.sortIndex);
}).Wait();
}
connectedWorkspace.valueForKey(connectedWorkspace.firstCueList, QOSCKey.PlaybackPositionId); //fetch playback position for cueList once all cue loading is done.
}
}