Improvements/Wishes for the patcher


#190

I think Quartz Composer calculates execution order by working backwards from the output.

a|x


#191

For Sub-Patches and Patch/Patcher objects, how about the option to right-click on an object inlet, and have the Patcher create an Inlet object of the appropriate type for you?

Going back to the Inspector idea, this would provide a useful mechanism for reordering and labelling inlets and outlets for a Sub-Patch or Patch/Patcher.

a|x


#192

I guess there would be a right-click contextual menu, with one of the options being to do the above.
Another option in the menu might be to set a pre-scale/interpolation equation for inlet values.

a|x


#193

A useful feature for saving ressources would be a context menu option for each parameter which would make a parameter constant. If a parameter is set to constat, it then would behave similar to an attribute.

For the generated code this would mean the following. Lets take the following dsp method as example:

public: void dsp (int32buffer & outlet_out,
int param_pitch,
int param_reso){
// ...

If e.g. parameter pitch would then be set to constant, the generated code would become:

public: void dsp (int32buffer & outlet_out,
int param_reso){
static const int param_pitch = 12345;
// ...


#194

I little feature-request:
how about being able to click on the title-bar of a patch window to go to the patch file in the OS? This feature is common on OS X, and is really handy! It could be implemented as a right-click menu that dropped down from the title bar, giving the option to go to the file, and maybe also to rename it.

I must say, the more I use the Patcher, the more I discover nice little touches, like the fact that you can double-click the titlebar to toggle the window to/from fullscreen.

a|x


#195

I think this has been mentioned before, but can we please have the window position, dimensions and active tab of the object editor recalled when it is reopened....?

I've been working on some custom objects, and frankly, the workflow of using the editor is.. not great.

Every time I want to test my object, I have to

  1. Save the object (no keyboard shortcut for this)
  2. Close the Editor
  3. Reload objects

Then, when I need to go back to the code, I need to

  1. Open Object Editor with the fiddly menu
  2. Resize the Editor window
  3. Use the arrows to increment down to the tab I want

There has to be a way to speed this process up. It's maddening, currently, I have to say.

Maybe keyboard shortcuts for all these steps would help.

a|x


#196

That's normal in Windows, I didn't realise it was a special feature of the patcher?


#197

Here's a thought: how about removing the requirement to close the Object Editor window before making a patch live, but simply removing the ability to save it while the patch is live?

That would help enormously.

a|x


#198

Oh, maybe it is...

I've never noticed it before, but it must be an OS-level feature on Macs, too, because I've just realised other windows do the same thing.

How embarrassing...

a|x


#199

Whoops, I thought maybe it was a feature of the patcher on OSX. Sorry!


#200

I've now noticed that the Patch Editor window settings Are correctly recalled when you're editing an embedded patch/object, but Not when you're editing an external object, so my niggles are half fixed :wink:

a|x


#201

How about a new library file-type, to add the the existing Object and Patch types?

Code-Library / Includes

I find myself re-using C functions in multiple objects, and am now considering hiving these common functions off to a separate Utility Functions file. Since I've noticed others have done something similar, and at least one of these external libraries provide functions I'd like to use in my own objects, I thought maybe creating a mechanism for managing code-libraries might be cool.

I haven't thought through how this would work, in terms of dependency-management etc., so may be a Bad Idea.

Thoughts, anyone?

a|x


#202

Not just a Patcher feature, really, so this may be the wrong place, but..

How about object inlet 'normalisation'. I'd envisage this is a mechanism that allowed a default value to be set for a given inlet if there is no incoming connection to the inlet.

a|x


#203

To drag and drop an axo into the patcher window, would be very convenient.
Strg d to duplicate an object, and a key command for reload objects......


#204

I think a moveable, resizable object browser that didn't automatically disappear when an object is added is more of a priority.

Personal opinion, though.

a|x


#205

yes drag and drop is maybe hard to accomplish, adding key commands should be easy.....


#206

History! The ability to undo/redo.

A couple have times I've been bitten by accidentally deleting a whole bunch of useful objects that I might have moved recently instead of deleting the one I just clicked on (which is another issue I hope gets resolved eventually - the patcher can be a little unresponsive occasionally).


#207

+1 for that! It's a real basic, I'm afraid. Just a single level of undo/redo would be enormously helpful. I've lost track of the number of times I've accidentally f*cked something up, and been forced to go back to the last-saved version, then try and recreate all the steps to get back to where I had been just before the mistake.

a|x


#208

I just wanted to mention here that I have a pull request in the works for zooming and panning patches. The first version is nearly complete; I'm just adding a bit of polish and trying to find any lingering issues at this point. Hopefully, I'll have it up for Johannes to review in the next day or so.

I plan to tackle undo and redo after that stuff gets merged. I like the floating object browser idea; that shouldn't be a big deal to accomplish if that's something the community can agree on.

Let me know if there's a feature you'd like me to work on.

Best,
Nicolas


#209

Hallo UrKlang/Nicolas , we all want colours for the knobs , that would be nice........