hi,
this is about my (yet another) attempt to design a multi-abstraction embedder. The goal is to be able to use just ordinary abstractions, with inlets and outlets, instead of poly~ way of using specialized patches with [in]s and [out]s.
Of all the ways to cheat, I have chosen what seemed the safest one. It may look naive, but you be the judge:
After loading an abstraction, but before creating objects in it, I rename all [inlet]s to [in]s, all [inlet~]s to [in~]s, etc. Then, after creating them as instances of my replacement classes, but before showing them (or saving), I rename them back to [inlet]s, etc. So when user happens to click on a [rabin~] box, a subwindow actually contains [in], but with "inlet" text in the box (and is saved as an inlet).
The release at suita.chopin.edu.pl/~czaja/miXed/externs/rabin.html is only a proof of concept. Most of the needed features are missing, like: multiple inlets and outlets, after-noteoff control (thispoly~?), nested abstractions, automatic [switch~]ing, and many many more. It does not work with older versions of Pd (and never will).
Krzyszt-still-hoping-for-any-suggestions-of