Sunday, 2016-10-16

drobillan/m, sisco00:02
rgareusand a couple of others from the x42-plugins collection00:05
rgareusalso the latest harrison plugins are now embedded (no longer externalUI)00:07
drobillaTinkering with a native OSX Jalv00:14
drobillaGot it working, for some very shaky definition of "working"00:14
rgareusdrobilla: have you forgotten about the code you wrote to handle Properties in Ardour?00:15
rgareusdrobilla: I can't honestly believe you said it's simple to make "#Dirty" a property first and special case it later to become /just an event/.00:15
drobillaThough here, the platform forces me to finally actually have to add a plugin selector, soooo that's some work...00:15
drobillargareus: I seriously don't understand why you think announcing it this way means it's a parameter or in state or whatever00:15
drobillaGranted we overload basically every synonym there a lot00:16
rgareusdrobilla: basically the host just needs to ignore the value of the property00:16
rgareusand treat every event as a "value changed"00:16
*** trebmuh has quit IRC00:17
drobillaI propose no change to the semantics00:17
drobillaI simply said a property would be nice because having one defined is more useful/convenient00:17
drobillaSince if you want to stick dirty in a dict somewhere, you can00:17
drobillaThat's all00:17
rgareusalso, if a property changes the state is dirty.   So what if the #dirty property changes to "clean" ?00:17
drobillaIt is not a property in the plugin's state00:18
drobillaSaving a dirty property in the state itself that's about the state is obviously silly00:18
drobillaBut whatever.  A StateChanged event is fine.00:19
rgareusso if a plugin supports that property, but a host does not [yet]?00:19
drobillaIf I need a property (which is likely) I'll just define one00:19
rgareusthe host will save it anyway00:19
drobillaPlugins are responsible for saving their own state.  There is no expectation of hosts to save every property that comes out of a plugin00:20
rgareusindeed. that was a silly argument00:20
drobillaIn some other universe we could have done state that way, perhaps, but we didn't, so we don't need to care about that sort of thing00:20
rgareusanyway, in Ardour's implementation we don't care much, we can intercept the Property early on (and simply ignore the value)00:21
*** NickSB has quit IRC00:21
rgareusbut if there's a boolen it should be documented  that it's special.  ie there can be 2 events   #Dirty value=true   in  a row (without value=false in between) and that's valid00:22
rgareus(because the plugin itself cannot know when it's "clean")00:23
drobillaI suspect some kind of thing to properly define ephemeral properties needs to happen at some point00:23
drobillaIngen kind of has that problem00:23
drobillaBut your position is reasonable, despite the terrible argument :)00:24
drobillaI reflexively try to avoid defining special commands/events whenever possible, which is generally right and good, but this is slightly odd00:25
drobillastate:StateChanged will do00:25
rgareusyes, that's a better name00:26
drobillaThough it is a bit of a burden to demand plugins send such a thing whenever the state changes at all00:26
drobillaWhich could = whenever any parameter changes at all00:26
drobillaSo probably need some rules there00:27
rgareusstate:InternalStateChanged  or state:HiddenStateChanged00:27
drobillaStill could = any parameter change (event-based control)00:27
drobillaMore correct names, maybe, but we universally call all that "state" anyway, implicit00:28
rgareusthe actual case which brought this up was setBfree ,  recall a midi-program or change CC assignments using the GUI00:29
drobillaQuestion is, when should the plugin send it?00:29
drobillaOnly in cases where it's not "obvious" to the host that it has changed00:29
rgareusyes00:29
drobillaHow to write that one up clearly I don't know00:29
rgareuschanges to any parameter that is not under host-control.00:30
drobillaI guess if it changes as a result of anything that isn't a direct state change, via the API, or setting a property via message00:30
drobillaSuppose it's inherently a bit of a fuzzy one, but that's fine00:31
drobillaWhy do I have a feeling getting UIs to position themselves correctly is going to be "fun"00:32
*** NickSB has joined #lv200:32
drobillaOSX is weird.  Seems geared towards a lot of absolute pixel positions00:33
rgareusand the y-axis points upwards00:33
rgareusin Cocoa00:33
drobillaI should idly research more GUI toolkits one of these days, but it seems from here that Gtk really got the packing thing right00:33
drobilla(So far just passed the content view as the parent to suil, but it shows up offset way down the window)00:34
rgareusdrobilla: it works fine in ardour00:35
rgareuswhich also uses suil00:35
drobillan/m, got it.  Just needed to resize, which there's a handy method for00:37
drobillaText looks atrocious :/00:38
*** Yruama_Lairba has quit IRC01:01
*** oofus_lt has joined #lv207:45
*** NickSB2 has joined #lv208:59
*** NickSB has quit IRC09:24
*** oofus_lt has quit IRC10:12
*** NickSB has joined #lv210:12
*** oofus_lt has joined #lv210:17
*** trebmuh has joined #lv210:29
*** Yruama_Lairba has joined #lv211:30
*** edogawa has joined #lv212:07
*** dsheeler has quit IRC12:15
*** rncbc has joined #lv213:21
*** Anchakor_ has joined #lv214:09
*** NickSB has quit IRC14:22
*** rncbc is now known as rncbc|AFK14:34
*** Anchakor_ has quit IRC15:19
*** falktx|work has joined #lv215:20
*** NickSB has joined #lv216:01
*** rncbc|AFK is now known as rncbc16:16
*** rncbc has quit IRC18:06
*** oofus_lt has quit IRC18:14
*** Yruama_Lairba has quit IRC19:27
*** Yruama_Lairba has joined #lv219:28
*** rncbc has joined #lv220:15
*** oofus_lt has joined #lv221:12
*** edogawa has quit IRC21:25
*** rncbc has quit IRC21:31
*** oofus_lt has quit IRC22:36
drobillaSo I got a tad side-tracked.  Thoughts? http://drobilla.net/files/lv2.svg23:27
drobilla(Needed a square logo)23:28

Generated by irclog2html.py 2.13.0 by Marius Gedminas - find it at mg.pov.lt!