CNMAT / Music-and-Computing

Materials built for MUS158A, MUS158B (B is only io area of patchers)
Other
6 stars 3 forks source link

cnmat.o.gui >> o.gui.attach #88

Open ramagottfried opened 6 years ago

ramagottfried commented 6 years ago

@equilet @dappertutto @kulpajj

I just whipped up a new object that I think will greatly improve the experience of using a o. wrapper for the max gui. I'll upload a build for you to test in a minute.

the new object replaces cnmat.o.gui, and will allow us to take out pattr and pattrstorage from all the patches which I think will make it much easier to understand, without having to think about why pattr is there.

the way it works is that it looks for object varnames in the patch, we can set these with a message varname /address. The object automatically attaches objects with OSC style varnames starting with /.

I'm thinking that it might be best to make it so it only attaches to objects in the patcher level that it's in, which will also hopefully simplify dealing with subpatchers -- in the case of subpatchers you'd want to o.union/collect/accum the bundles together -- and then if you wanted to set the values from a bundle, you would then route that patches addresses to o.gui.attach.

what do you guys think of the name? should it just be: o.gui?

I thought that maybe it makes more sense to add the attach since it's not automatic, you need to give the GUI object an OSC varname.

or maybe just o.attach which looks a little sexier to me : )

originally it was o.notify which I'm also okay with going back to.

o.max.attach o.maxgui.attach

o.maxgui.stream

?

help! : )

ramagottfried commented 6 years ago

(maybe not maxgui in case we make a pd version someday)

ramagottfried commented 6 years ago

ok I uploaded the o.gui.attach.mxo in the M&C (C&C) repository, I'm still tweaking the loadbang situation.

(p.s. @equilet I'm also seeing some interesting options for making a custom loadbang object that might solve the issues with patcherargs... haven't tested too deeply yet, but there are a number of different notifications that could trigger output at different loading stages).

ramagottfried commented 6 years ago

p.p.s. there's a help patch in the patchers/dev folder, but to test just pull the repo, make a new patch add a o.gui.attach and then alt-click and it should open --

I know there are some error messages, which I'm pretty sure is due to the loadbang/bundle coming out before the patcherargs have output.

you can wait to test it too if you want : ) but I just wanted to send it out there

logging off, rama

ramagottfried commented 6 years ago

ok just added a new version, I fixed the loadbang coordination problem by not automatically outputting the gui bundle on load, which I think is more natural anyway. Now, it waits to output until you to make a change to an attached gui object, or send you own loadbang, or send a bundle in to set the attached objects.

ramagottfried commented 6 years ago

@kulpajj @dappertutto @equilet hi guys -- I'd like to update the lesson patches to use o.gui.attach instead of the pattrstorage based system. Do I have your approval to go ahead with this?

thanks, Rama

equilet commented 6 years ago

You have mine

dappertutto commented 6 years ago

sure! /¯¯¯_/¯¯¯¯_/¯¯¯_/¯¯¯¯_/¯¯¯_/¯¯¯¯_/

David Coll, Composer & Sound Artist

Website http://davidcoll.com/ Soundcloud https://soundcloud.com/davidcoll Vimeo https://vimeo.com/davidcoll Twitter https://twitter.com/colldavid

Subscribe to Newsletter http://eepurl.com/ciE9En

On Nov 6, 2017, at 12:55 PM, Jeffrey Lubow notifications@github.com wrote:

You have mine

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/CNMAT/Music-and-Computing/issues/88#issuecomment-342283482, or mute the thread https://github.com/notifications/unsubscribe-auth/AUF4VMUA2QEhhI0BrJqXtU9wTXH5KtKJks5sz3IzgaJpZM4QAjvl.

wagne342 commented 6 years ago

I would also prefer this. I think pattr throws a wrench in the pedagogy since it breaks the obvious, top-to-bottom causal structure of the patch.

On Nov 6, 2017 2:41 PM, "David Coll" notifications@github.com wrote:

sure! /¯¯¯_/¯¯¯¯_/¯¯¯_/¯¯¯¯_/¯¯¯_/¯¯¯¯_/

David Coll, Composer & Sound Artist

Website http://davidcoll.com/ Soundcloud https://soundcloud.com/ davidcoll Vimeo https://vimeo.com/davidcoll Twitter < https://twitter.com/colldavid>

Subscribe to Newsletter http://eepurl.com/ciE9En

On Nov 6, 2017, at 12:55 PM, Jeffrey Lubow notifications@github.com wrote:

You have mine

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub < https://github.com/CNMAT/Music-and-Computing/issues/88# issuecomment-342283482>, or mute the thread https://github.com/ notifications/unsubscribe-auth/AUF4VMUA2QEhhI0BrJqXtU9wTXH5Kt KJks5sz3IzgaJpZM4QAjvl.

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/CNMAT/Music-and-Computing/issues/88#issuecomment-342312499, or mute the thread https://github.com/notifications/unsubscribe-auth/AA1pI6w9ULlrOpmWSDwRfBeLi61NkH9Xks5sz4sLgaJpZM4QAjvl .

dappertutto commented 6 years ago

its still pattr under the hood in some sense because it utilizes the naming option in the inspector. (BTW, how does message, without being banged, name the object to which its connected? Voodoo shit).

A little preview of how i see M&C developing pedagogically is that top down needs to be banged into their heads for sure, Jeremy. At least a couple of weeks without anything but o.compose before any GUI’s and especially before o.gui.attach. But this needs to be taught because its just too goddamn useful for creative exploratory spaces.

As I said to Jeff earlier, I just don’t have the bandwidth this month to engage as much as i’d like. Its a shame cuz Rama, you’re wrapping up this month or next? So much to talk about, and really, really excited about this big giant leap forward with the materials. Are you heading to the east coast for Thanksgiving, by any chance?

best, d

/¯¯¯_/¯¯¯¯_/¯¯¯_/¯¯¯¯_/¯¯¯_/¯¯¯¯_/

David Coll, Composer & Sound Artist

Website http://davidcoll.com/ Soundcloud https://soundcloud.com/davidcoll Vimeo https://vimeo.com/davidcoll Twitter https://twitter.com/colldavid

Subscribe to Newsletter http://eepurl.com/ciE9En

On Nov 6, 2017, at 3:55 PM, Jeremy Wagner notifications@github.com wrote:

I would also prefer this. I think pattr throws a wrench in the pedagogy since it breaks the obvious, top-to-bottom causal structure of the patch.

On Nov 6, 2017 2:41 PM, "David Coll" notifications@github.com wrote:

sure! /¯¯¯_/¯¯¯¯_/¯¯¯_/¯¯¯¯_/¯¯¯_/¯¯¯¯_/

David Coll, Composer & Sound Artist

Website http://davidcoll.com/ Soundcloud https://soundcloud.com/ davidcoll Vimeo https://vimeo.com/davidcoll Twitter < https://twitter.com/colldavid>

Subscribe to Newsletter http://eepurl.com/ciE9En

On Nov 6, 2017, at 12:55 PM, Jeffrey Lubow notifications@github.com wrote:

You have mine

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub < https://github.com/CNMAT/Music-and-Computing/issues/88# issuecomment-342283482>, or mute the thread https://github.com/ notifications/unsubscribe-auth/AUF4VMUA2QEhhI0BrJqXtU9wTXH5Kt KJks5sz3IzgaJpZM4QAjvl.

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/CNMAT/Music-and-Computing/issues/88#issuecomment-342312499, or mute the thread https://github.com/notifications/unsubscribe-auth/AA1pI6w9ULlrOpmWSDwRfBeLi61NkH9Xks5sz4sLgaJpZM4QAjvl .

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/CNMAT/Music-and-Computing/issues/88#issuecomment-342328310, or mute the thread https://github.com/notifications/unsubscribe-auth/AUF4VP_OYdtcgh80eCoT6udBlNjr9l1Hks5sz5x-gaJpZM4QAjvl.

ramagottfried commented 6 years ago

great -- thanks guys!

@dappertutto

its still pattr under the hood in some sense because it utilizes the naming option in the inspector. (BTW, how does message, without being banged, name the object to which its connected? Voodoo shit).

kind of, it's not pattr, but does something simliar. in the Max SDK you can "attach" to another object and get notified when anything changes, and you can identify the object by the varname, so, in that way it's pattr-y, but there's technically no pattr specific code in there, just a little bit of the voodoo part : )

re: naming option in the inspector -- I'd recommend not using the inspector to change the varname but use the message approach like what's in the help file, that way you can always see what the name is (that'd be pretty annoying if students did that and then you had to open the inspector for each object so see what it was!). Also this reduces the amount of voodoo.

A little preview of how i see M&C developing pedagogically is that top down needs to be banged into their heads for sure, Jeremy. At least a couple of weeks without anything but o.compose before any GUI’s and especially before o.gui.attach. But this needs to be taught because its just too goddamn useful for creative exploratory spaces.

yeah it's a tricky balance, you want them to feel expressive right away, but maybe it's better to have them develop more deferred satisfaction.

As I said to Jeff earlier, I just don’t have the bandwidth this month to engage as much as i’d like. Its a shame cuz Rama, you’re wrapping up this month or next? So much to talk about, and really, really excited about this big giant leap forward with the materials.

yay! great --I'm hopefully going to be starting a postdoc in January, so I'm trying to get things into a more polished more releasable state. That said, I plan to be available to help where needed to keep this thing rolling!

Are you heading to the east coast for Thanksgiving, by any chance? sound fun but we're staying local this year -- that'd be great to skype sometime soon and catch up!

equilet commented 6 years ago

Are there any actionable items remaining in this issue?