Figure53 / QLabKit.objc

An Objective C library for controlling QLab using the OSC API introduced in QLab 3.
MIT License
26 stars 7 forks source link

Cue List name not updated #18

Closed richardwilliamson closed 7 years ago

richardwilliamson commented 7 years ago

Hello

Not sure if this is an issue with QLabKit or the OSC API, but it appears that when you change the name of a cue list in Qlab the name isn't updated at the remote end - the refresh is called but the actual cuelist data doesn't seem to come across.

I'm trying to work out if it's me being dim. Which is fully possible.

Richard

richardwilliamson commented 7 years ago

hmm, it actually appears to be all cue names don't update - basically any data for the root object as far as I can tell..

richardwilliamson commented 7 years ago

Ah - worked it out, to my mind QLKWorkspace's cueNeedsUpdate: method needs to call fetchBasicPropertiesForCue: on the cue being updated - currently it only refreshes its children. I've fixed it in my fork I think

balord commented 7 years ago

Hi Richard -

That's correct - the /update message sent by QLab after a cuelist name change just includes the ID of the updated cue. QLKClient receives that message and passes the ID to QLKClientDelegate cueNeedsUpdate:, if any.

Since the delegate in this case is a QLKWorkspace instance, you can already observe the QLKCueNeedsUpdateNotification in your view controller class. The notification object will be a QLKCue object, which you can further inspect inside your notification handler. You can use that info to make more granular decisions about which properties you'd like to fetch for each cue type as they are updated.