Add Refreshing Group Cue Children

This commit is contained in:
2019-07-10 20:02:43 -05:00
parent 979ddd7756
commit eb772ea614
6 changed files with 19 additions and 45 deletions
@@ -40,8 +40,13 @@ namespace qController
//try to find a better filtering process //try to find a better filtering process
if (!args.Message.Address.Contains("update")) if (!args.Message.Address.Contains("update"))
qParser.ParseMessage(args.Message); qParser.ParseMessage(args.Message);
else if (args.Message.Address.Contains("playbackPosition") || args.Message.Address.Contains("cue_id") || args.Message.Address.Contains("cueList")) else if (args.Message.Address.Contains("playbackPosition") || args.Message.Address.Contains("cueList") || args.Message.Address.Contains("dashboard"))
qParser.ParseMessage(args.Message); qParser.ParseMessage(args.Message);
else if (args.Message.Address.Contains("cue_id"))
{
var parts = args.Message.Address.Split('/');
UpdateSpecificCue(parts[3], parts[5]);
}
else else
ProcessUpdate(args.Message); ProcessUpdate(args.Message);
} }
@@ -34,7 +34,7 @@ namespace qController
Console.WriteLine("QCONTROLLER CONNECT CALLED: " + workspace_id); Console.WriteLine("QCONTROLLER CONNECT CALLED: " + workspace_id);
qWorkspace = new QWorkSpace(); qWorkspace = new QWorkSpace();
qWorkspace.workspace_id = workspace_id; qWorkspace.workspace_id = workspace_id;
//qClient.sendStringUDP("/connect"); qClient.sendStringUDP("/connect");
qClient.sendArgsUDP("/workspace/"+workspace_id+"/updates", 1); qClient.sendArgsUDP("/workspace/"+workspace_id+"/updates", 1);
qClient.sendAndReceiveString("/workspace/"+workspace_id+"/cueLists"); qClient.sendAndReceiveString("/workspace/"+workspace_id+"/cueLists");
} }
@@ -1,5 +1,4 @@
//Class used for updating local "copy" of workspace info, cue-lists, cues, etc. //Class used for updating local "copy" of workspace info, cue-lists, cues, etc.
//CLEAN UP WORKSPACE LOADING STUFF STILL SENDING INDIVIDUAL REQUESTS FOR GROUP CUES?
using System; using System;
using System.Threading; using System.Threading;
@@ -17,8 +16,6 @@ namespace qController
{ {
qController = controller; qController = controller;
updateThread = new Thread(new ThreadStart(UpdateLoop)); updateThread = new Thread(new ThreadStart(UpdateLoop));
qController.qClient.qParser.ChildrenUpdated += OnChildrenUpdated;
qController.qClient.qParser.CueInfoUpdated += OnCueUpdateReceived; qController.qClient.qParser.CueInfoUpdated += OnCueUpdateReceived;
qController.qClient.qParser.WorkspaceUpdated += OnWorkspaceUpdated; qController.qClient.qParser.WorkspaceUpdated += OnWorkspaceUpdated;
qController.qClient.qParser.PlaybackPositionUpdated += OnPlaybackPositionUpdated; qController.qClient.qParser.PlaybackPositionUpdated += OnPlaybackPositionUpdated;
@@ -42,28 +39,11 @@ namespace qController
public void OnCueUpdateReceived(object source, CueEventArgs args) public void OnCueUpdateReceived(object source, CueEventArgs args)
{ {
qController.qWorkspace.UpdateCue(args.Cue); qController.qWorkspace.UpdateCue(args.Cue);
if (qController.playbackPosition == null)
{
qController.playbackPosition = args.Cue.uniqueID;
}
}
private void OnChildrenUpdated(object source, ChildrenEventArgs args) if (args.Cue.type == "Group")
{
qController.qWorkspace.UpdateChildren(args.cue_id, args.children);
Console.WriteLine("Populated: " + qController.qWorkspace.IsPopulated);
if (!qController.qWorkspace.IsPopulated)
{ {
Console.WriteLine("IS THIS BEING CALLED"); //Console.WriteLine("QUpdater/Updated cue was group cue, sending children request");
QCue cue = qController.qWorkspace.GetEmptyGroup(); qController.qClient.sendStringUDP("/cue_id/" + args.Cue.uniqueID + "/children");
if(cue != null)
{
qController.qClient.sendStringUDP("/cue_id/" + cue.uniqueID + "/children");
}
}
else
{
qController.qClient.UpdateSelectedCue(qController.qWorkspace.workspace_id);
} }
} }
@@ -80,8 +60,6 @@ namespace qController
qController.qClient.UpdateSelectedCue(qController.qWorkspace.workspace_id); qController.qClient.UpdateSelectedCue(qController.qWorkspace.workspace_id);
return; return;
} }
//qController.qClient.UpdateSelectedCue();
} }
public void OnPlaybackPositionUpdated(object source, PlaybackPositionArgs args) public void OnPlaybackPositionUpdated(object source, PlaybackPositionArgs args)
@@ -54,7 +54,6 @@ namespace qController
if(data[i].cues[j].type == "Group") if(data[i].cues[j].type == "Group")
{ {
data[i].cues[j].cues = children; data[i].cues[j].cues = children;
CheckPopulated();
return; return;
} }
} }
+9 -16
View File
@@ -250,6 +250,11 @@ namespace qController
public void OnCueUpdateReceived(object sender, CueEventArgs args) public void OnCueUpdateReceived(object sender, CueEventArgs args)
{ {
qController.qWorkspace.UpdateCue(args.Cue); qController.qWorkspace.UpdateCue(args.Cue);
if (qController.playbackPosition == null)
{
qController.playbackPosition = args.Cue.uniqueID;
}
if (args.Cue.uniqueID == qController.playbackPosition) if (args.Cue.uniqueID == qController.playbackPosition)
{ {
Device.BeginInvokeOnMainThread(() => Device.BeginInvokeOnMainThread(() =>
@@ -278,23 +283,11 @@ namespace qController
{ {
Console.WriteLine("Children Updated in ControlPage: " + args.cue_id); Console.WriteLine("Children Updated in ControlPage: " + args.cue_id);
qController.qWorkspace.UpdateChildren(args.cue_id, args.children); qController.qWorkspace.UpdateChildren(args.cue_id, args.children);
if (qController.qWorkspace.IsPopulated) Device.BeginInvokeOnMainThread(() =>
{ {
Device.BeginInvokeOnMainThread(() => App.rootPage.MenuPage.ChangeToControl();
{ App.rootPage.MenuPage.ChangeToWorkspace(qController.qWorkspace);
if (App.MenuIsPresented) });
{
App.rootPage.MenuPage.ChangeToWorkspace(qController.qWorkspace);
}
else
{
App.rootPage.MenuPage.ChangeToWorkspace(qController.qWorkspace);
}
});
qController.qClient.UpdateSelectedCue(qController.qWorkspace.workspace_id);
App.showToast("Workspace cues loaded...");
}
} }
private void OnMenuItemSelected(object source, MenuEventArgs args) private void OnMenuItemSelected(object source, MenuEventArgs args)
@@ -96,7 +96,6 @@ namespace qController
var cue = cueList.cues[j]; var cue = cueList.cues[j];
AddSubCues(cue, 0); AddSubCues(cue, 0);
} }
} }
} }