Very nice! Real progress! I would be great if you would work out of
the CVS and add some instructions to the README. All of the files for
creating the Pd.app are in packages/darwin_app.
On Aug 22, 2004, at 8:20 AM, 0001 wrote:
hi, I've put a modified version of the test MacOSX application package
here:http://pure-data.info/Members/gerard/pd-0.37.4.dmg
changes:
- moved to the WishKit app package (distributed with tcl / tk BI)
- added -nowish flag to pd
- modified AppMain.tcl and pd.tk to launch pd -nowish and load pdtcl
in the new structure, also completed drag+drop support ;)
Not only does dragging and dropping a .pd file onto Pd.app work, but
also double-clicking files in the Finder. It will either open the file
in the existing Pd.app, or launch Pd.app if it isn't running.
Aaahhhh... finally!
- recompiled pdtcl to link with embeded frameworks. For some reason
@executable_path/../Frameworks seems to resolve to inside the
Resuorces folder of the package, so I've copied the Frameworks folder
there as well as a hackaround.
It would be good to have this all done from
packages/darwin_app/Makefile, since that's the Makefile that assembles
the Pd.app that I created.
- added some experimental documentation menu patches.
Help->Pure Documentation needs to be figured out. The patches that are
included in the Pd.app are a good workaround, but I think in the long
run, we should figure out something that would be easier to maintain.
But perhaps having all of the docs put into a navigatible system of
patches would be a good idea, kind of like Pd hypertext. But it would
add to the amount of maintenance that would need to be done.
the biggest problem is that it lacks the console. some feedback is
available at Console.ap, but not the [print] messages. solutions
that come to mind are the impd console or whatever tigital did with
pd++ for going to Console.app (stderr). or maybe the Wish Shell's own
console could be used.one effect of decoupling is that if you run into problems, you may
need to manually kill the pd process. maybe the tcl code could do this at startup. In general, the startup
process may need some improvements.
This shouldn't be too hard to do. Each instance of Pd.app (Wish
Shell.app wrapper for the pd process) could keep track of the pd
-nowish PID, then make sure to kill it when it exits. The Tcl
exceptions could be used to catch crashes, etc. (if they are anything
like Java exceptions, I haven't really looked into them).
.hc
"If nature has made any one thing less susceptible than all others of
exclusive property, it is the action of the thinking power called an
idea, which an individual may exclusively possess as long as he keeps
it to himself; but the moment it is divulged, it forces itself into the
possession of everyone, and the receiver cannot dispossess himself of
it."
- Thomas Jefferson