diff --git a/iOS/Info.plist b/iOS/Info.plist
index dcdf932..8a16236 100644
--- a/iOS/Info.plist
+++ b/iOS/Info.plist
@@ -36,7 +36,7 @@
XSAppIconAssets
Assets.xcassets/AppIcon.appiconset
CFBundleShortVersionString
- 2.0.1
+ 2.0.2
CFBundleVersion
1.0
ITSAppUsesNonExemptEncryption
diff --git a/qController.Standard/Classes/Cell/QSelectedCueCell.cs b/qController.Standard/Classes/Cell/QSelectedCueCell.cs
index a88968b..9a4ce61 100644
--- a/qController.Standard/Classes/Cell/QSelectedCueCell.cs
+++ b/qController.Standard/Classes/Cell/QSelectedCueCell.cs
@@ -113,7 +113,7 @@ namespace qController
name.Text = cue.name;
number.Text = cue.number;
type.Text = cue.type;
- //notes.Text = cue.notes;
+ notes.Text = cue.notes;
}
}
}
diff --git a/qController.Standard/Classes/Communication/QClient.cs b/qController.Standard/Classes/Communication/QClient.cs
index 2b8b664..29e5659 100644
--- a/qController.Standard/Classes/Communication/QClient.cs
+++ b/qController.Standard/Classes/Communication/QClient.cs
@@ -1,5 +1,6 @@
using System;
using System.Linq;
+using System.Threading;
using SharpOSC;
using Newtonsoft.Json;
namespace qController
@@ -49,14 +50,14 @@ namespace qController
{
udpSender.Send(new OscMessage(address, args));
}
- public OscMessage sendAndReceiveString(string address)
+ public void sendAndReceiveString(string address)
{
- return tcpSender.SendAndReceive(new OscMessage(address));
+ tcpSender.SendAndReceive(new OscMessage(address));
}
- public OscMessage sendAndReceiveStringArgs(string address, params object[] args)
+ public void sendAndReceiveStringArgs(string address, params object[] args)
{
- return tcpSender.SendAndReceive(new OscMessage(address, args));
+ tcpSender.SendAndReceive(new OscMessage(address,args));
}
@@ -91,14 +92,15 @@ namespace qController
public void UpdateSpecificCue(string cue_id)
{
Console.WriteLine("Cue needs to be updated: " + cue_id);
- string valuesForKeys = "[\"displayName\",\"number\",\"type\",\"isBroken\",\"isLoaded\",\"isPaused\",\"isRunning\",\"preWait\",\"duration\",\"postWait\",\"translationX\",\"translationY\",\"opacity\",\"scaleX\",\"scaleY\",\"uniqueID\",\"flagged\",\"listName\",\"colorName\",\"name\",\"armed\"]";
- string address = "/cue/" + cue_id + "/valuesForKeys";
+ string valuesForKeys = "[\"displayName\",\"number\",\"type\",\"isBroken\",\"isLoaded\",\"isPaused\",\"isRunning\",\"preWait\",\"duration\",\"postWait\",\"translationX\",\"translationY\",\"opacity\",\"scaleX\",\"scaleY\",\"uniqueID\",\"flagged\",\"listName\",\"colorName\",\"name\",\"armed\",\"notes\"]";
+ string address = "/cue_id/" + cue_id + "/valuesForKeys";
+
sendAndReceiveStringArgs(address, valuesForKeys);
}
public void UpdateSelectedCue()
{
- string valuesForKeys = "[\"displayName\",\"number\",\"type\",\"isBroken\",\"isLoaded\",\"isPaused\",\"isRunning\",\"preWait\",\"duration\",\"postWait\",\"translationX\",\"translationY\",\"opacity\",\"scaleX\",\"scaleY\",\"uniqueID\",\"flagged\",\"listName\",\"colorName\",\"name\",\"armed\"]";
+ string valuesForKeys = "[\"displayName\",\"number\",\"type\",\"isBroken\",\"isLoaded\",\"isPaused\",\"isRunning\",\"preWait\",\"duration\",\"postWait\",\"translationX\",\"translationY\",\"opacity\",\"scaleX\",\"scaleY\",\"uniqueID\",\"flagged\",\"listName\",\"colorName\",\"name\",\"armed\",\"notes\"]";
sendAndReceiveStringArgs("/cue/selected/valuesForKeys", valuesForKeys);
}
diff --git a/qController.Standard/Classes/Communication/QController.cs b/qController.Standard/Classes/Communication/QController.cs
index e8ca4c8..bb36f7b 100644
--- a/qController.Standard/Classes/Communication/QController.cs
+++ b/qController.Standard/Classes/Communication/QController.cs
@@ -23,10 +23,9 @@ namespace qController
qClient.qParser.SelectedCueUpdated += this.OnSelectedCueUpdated;
qClient.qParser.WorkspaceUpdated += this.OnWorkspaceUpdated;
qClient.qParser.PlaybackPositionUpdated += this.OnPlaybackPositionUpdated;
-
+ qClient.qParser.CueInfoUpdated += this.OnCueUpdateReceived;
qClient.sendArgsUDP("/updates", 1);
qClient.sendAndReceiveString("/cueLists");
-
}
@@ -48,6 +47,7 @@ namespace qController
{
qWorkspace = args.UpdatedWorkspace;
Console.WriteLine("Workspace updated in QController: " + qWorkspace.workspace_id);
+ qWorkspace.PrintStats();
}
public void OnPlaybackPositionUpdated(object source, PlaybackPositionArgs args)
@@ -59,7 +59,7 @@ namespace qController
public void OnCueUpdateReceived(object source, CueEventArgs args)
{
qWorkspace.UpdateCue(args.Cue);
- Console.WriteLine("Cue updated: " + args.Cue.uniqueID );
+ Console.WriteLine("Cue updated in QController: " + args.Cue.uniqueID );
}
public void Kill(){
qUpdater.Kill();
diff --git a/qController.Standard/Classes/Communication/QParser.cs b/qController.Standard/Classes/Communication/QParser.cs
index e446a04..ae640b1 100644
--- a/qController.Standard/Classes/Communication/QParser.cs
+++ b/qController.Standard/Classes/Communication/QParser.cs
@@ -100,7 +100,6 @@ namespace qController
public void ParseCueUpdateInfo(OscMessage msg)
{
JToken cueUpdate = OSC2JSON(msg);
- Console.WriteLine("Cue Update Received");
QCue cue = JsonConvert.DeserializeObject(cueUpdate.ToString());
OnCueInfoUpdated(cue);
}
@@ -152,7 +151,7 @@ namespace qController
}
protected virtual void OnCueInfoUpdated(QCue cue)
- {
+ {
if (CueInfoUpdated != null)
CueInfoUpdated(this, new CueEventArgs() { Cue = cue });
}
diff --git a/qController.Standard/Classes/Communication/QReceiver.cs b/qController.Standard/Classes/Communication/QReceiver.cs
index 9b52a7f..8fe781a 100644
--- a/qController.Standard/Classes/Communication/QReceiver.cs
+++ b/qController.Standard/Classes/Communication/QReceiver.cs
@@ -15,40 +15,33 @@ namespace qController
static Thread thread;
static UDPListener udpListener;
-
+ static int Port;
public QReceiver(int port)
{
- HandleOscPacket callback = delegate (OscPacket packet)
- {
- var messageReceived = (OscMessage)packet;
- if(messageReceived != null)
- OnUpdateMessageReceived(messageReceived);
- else
- Console.WriteLine("Message came back null");
- };
-
- udpListener = new UDPListener(port, callback);
+ Port = port;
+ thread = new Thread(new ThreadStart(ListenLoop));
+ thread.Start();
}
public void ListenLoop()
{
- /*while (true)
+ HandleOscPacket callback = delegate (OscPacket packet)
{
- OscMessage messageReceived = null;
- while(messageReceived == null)
- {
- messageReceived = (OscMessage)udpListener.Receive();
- Thread.Sleep(1);
- }
- OnUpdateMessageReceived(messageReceived);
+ var messageReceived = (OscMessage)packet;
+ if (messageReceived != null)
+ OnUpdateMessageReceived(messageReceived);
+ else
+ Console.WriteLine("Message came back null");
+ };
- }*/
+ udpListener = new UDPListener(Port, callback);
}
public void Close(){
udpListener.Close();
+ thread.Abort();
}
protected virtual void OnUpdateMessageReceived(OscMessage msg)
diff --git a/qController.Standard/Classes/Communication/SharpOSC/OscPacket.cs b/qController.Standard/Classes/Communication/SharpOSC/OscPacket.cs
index f4eaeee..2467e8c 100755
--- a/qController.Standard/Classes/Communication/SharpOSC/OscPacket.cs
+++ b/qController.Standard/Classes/Communication/SharpOSC/OscPacket.cs
@@ -27,8 +27,8 @@ namespace SharpOSC
private static OscMessage parseMessage(byte[] msg)
{
int index = 0;
-
- string address = null;
+ //Console.WriteLine("Raw OSC DATA: " + System.Text.Encoding.ASCII.GetString(msg));
+ string address = null;
char[] types = new char[0];
List