Mark Alldritt wrote:
>> A quick thought: How hard would it be to create special notation
>> for accessing the ._types and ._constants objects?
>Okay, I'll look into something like this.
Thanks Mark. I know (assume) that your freeware projects are not
at the top of your priorities, which is perfectly OK. The 2.0 version
of JSOSA is so wonderful, and I'm finally finding some time to do
some really good work in it.
> I've filed it all in my bug tracking system
Ohh...would this be one of those online systems that others can
see and contribute to?
Here is some more of my crazed rantings:
An issue I am struggling with now is working with
aeapp.sendAENoReply(), the principle problem being the
construction of AEPrint-strings and AEDescs. I'm working on a
seperate "report" for you on that issue, but the ideal would be
a system where we had a simple equivalent to "ignoring
application responses".
The three ways I see to go about this would be as follows:
1. AEApp instances could simply have a .noReply boolean
property:
Finder = MacOS.finder();
Finder.noReply = true;
Finder.file[ "hello.txt" ].name = "HELLO.txt"
Changing case is a good example of where we don't really
need to wait for a response, as it is a fairly safe operation.
2. Boolean parameter to the .appBy... methods, creating an
instance that doesn't wait for replies:
Finder = MacOS.appBySignature( "MACS", true, false, true );
//
// 1st boolean : load dictionary
// 2nd boolean : _strict = false (while we're at it)
// 3rd boolean : no reply
3. Finally, I was thinking that perhaps an AEApp instance could
have a property that would return a special noReply interface
instance:
FinderNoReply = Finder.noReply();
This would have the advantage of easily using it for "one off"
calls:
Finder = MacOS.finder();
// do lots of stuff with Finder, then
Finder.noReply().file[ "hello.txt" ] = "HELLO.txt";
or perhaps even the .noReply method could work something
like this:
Finder.noReply( "command_name", arg1, arg2, ... );
The only problem with this last idea is that there is no explicit
"set" (or "get") commands. Of course, there could be two
commands mapped to the get and set events:
var f = Finder.file[ "hello.txt" ];
f.getData( "name" ); // 'core' 'getd'
f.setData( "name", "HELLO.txt" ); // 'core' 'setd'
Finder.noReply( "setData", f, "name", "HELLO.txt" );
Er...OK, I'll leave you alone now. :)
-- Arthur