From: <jg...@hi...> - 2009-08-18 13:53:13
|
I've had time to only cursorily follow this thread, but I'll throw out here something that I sent to Kevin when he wrote me directly about TclAE capabilities: --- AlphaX implements the "basic four", in addition to DoScript, using TclAE and Tcl handlers. See http://alphatcl.svn.sourceforge.net/viewvc/alphatcl/trunk/Tcl/SystemCode/CorePackages/aeom.tcl?view=markup It also implements [a rudimentary] Apple Event Object Model, which allows you to say things like 'tell application "AlphaX" to get line 5 of window 1'. This latter support is experimental and certainly needs work, but gives a flavor of what can be done. The script dictionary is generated dynamically, too, all in Tcl. If Script Editor weren't so thick-headed, you could change the script dictionary on the fly while your program was running (well, you can, but Script Editor won't see the changes). This is all done with a dynamically generated aete, via a handler for ascr/gdte events. I have no idea what (if anything) needs to happen in the new SDEF world. --- Kevin points out that TclAE won't build in 64bit, so if you need that... ./generic/tclAEAddress.c: In function ‘TclaeLaunch’: ./generic/tclAEAddress.c:374: warning: implicit declaration of function ‘GetApplicationEventTarget’ ./generic/tclAEAddress.c:374: warning: passing argument 1 of ‘InstallEventHandler’ makes pointer from integer without a cast ./generic/tclAEAddress.c: In function ‘Tclae_ProcessesCmd’: ./generic/tclAEAddress.c:572: error: ‘ProcessInfoRec’ has no member named ‘processAppSpec’ ./generic/tclAEAddress.c:619: error: ‘ProcessInfoRec’ has no member named ‘processAppSpec’ ./generic/tclAEAddress.c: In function ‘SpecFromUtfPathObj’: ./generic/tclAEAddress.c:1298: warning: implicit declaration of function ‘ResolveAliasFile’ ./generic/tclAEAddress.c: In function ‘UtfObjToPString’: ./generic/tclAEAddress.c:1393: warning: implicit declaration of function ‘c2pstrcpy’ ./generic/tclAEAddress.c: In function ‘getPSNAddress’: ./generic/tclAEAddress.c:1742: error: ‘ProcessInfoRec’ has no member named ‘processAppSpec’ Changing .processAppSpec to .processAppRef shouldn't be too big a deal, but I have no idea why DEFINE_ONE_SHOT_HANDLER_GETTER( AppLaunchNotificationHandler ); isn't doing its job. If somebody more versed in 64-bitness than me has a clue, I'm all ears. It'll be at least a week before I can sit down to try to figure it out. |