Switch to using valuesForKeys to update cue

This commit is contained in:
2019-04-08 09:19:07 -05:00
parent 4cb4ae6e26
commit c156a3b926
4 changed files with 2270 additions and 205 deletions
+2241 -194
View File
File diff suppressed because it is too large Load Diff
@@ -48,7 +48,7 @@ namespace qController
public void ParseMessage(OscMessage msg){
if (!msg.Address.Contains("null"))
{
if (msg.Address.Contains("selectedCues"))
if (msg.Address.Contains("valuesForKeys"))
ParseSelectedCueInfo(msg);
else if (msg.Address.Contains("notes"))
ParseNoteInfo(msg);
@@ -57,21 +57,25 @@ namespace qController
else if (msg.Address.Contains("cueLists"))
ParseWorkspaceInfo(msg);
else
{
Console.WriteLine("Unknown message type");
Console.WriteLine(msg.Address);
foreach (var item in msg.Arguments)
{
Console.WriteLine(item);
}
}
}
}
public void ParseSelectedCueInfo(OscMessage msg){
JArray selectedCues = (JArray)OSC2JSON(msg);
if (selectedCues.Count > 0){
foreach(JObject item in selectedCues){
QCue parsedCue = JsonConvert.DeserializeObject<QCue>(item.ToString());
OnSelectedCueUpdated(parsedCue);
}
JToken selectedCue = OSC2JSON(msg);
Console.WriteLine("Selected Cue Updated");
QCue cue = JsonConvert.DeserializeObject<QCue>(selectedCue.ToString());
}else{
Console.WriteLine("No Cues Selected");
}
Console.WriteLine(cue.uniqueID);
OnSelectedCueUpdated(cue);
}
public void ParseNoteInfo(OscMessage msg){
@@ -25,7 +25,8 @@ namespace qController
public void UpdateSelected()
{
qController.qClient.sendAndReceiveString("/selectedCues");
string valuesForKeys = "[\"displayName\",\"number\",\"type\",\"isBroken\",\"isLoaded\",\"isPaused\",\"isRunning\",\"preWait\",\"duration\",\"postWait\",\"translationX\",\"translationY\",\"opacity\",\"scaleX\",\"scaleY\",\"uniqueID\",\"flagged\",\"listName\",\"colorName\",\"name\",\"armed\"]";
qController.qClient.sendAndReceiveStringArgs("/cue/selected/valuesForKeys", valuesForKeys);
}
public void UpdateLevels()
{
+13
View File
@@ -12,5 +12,18 @@ namespace qController
public string colorName { get; set; }
public string name { get; set; }
public bool armed { get; set; }
public int translationX { get; set; }
public bool isRunning { get; set; }
public int scaleX { get; set; }
public bool isPaused { get; set; }
public int translationY { get; set; }
public int preWait { get; set; }
public int opacity { get; set; }
public int scaleY { get; set; }
public int duration { get; set; }
public int postWait { get; set; }
public bool isBroken { get; set; }
public string displayName { get; set; }
public bool isLoaded { get; set; }
}
}