Re: creating a dictionary for an applescript app?
Re: creating a dictionary for an applescript app?
- Subject: Re: creating a dictionary for an applescript app?
- From: has <email@hidden>
- Date: Tue, 19 Jun 2007 14:50:48 +0100
On 19 Jun 2007, at 00:43, tom wible wrote:
i'm trying to access a function in an applescript.app i've
written...in applescript it's:
tell application "playRec"
initRecList(false)
set recList to listRecDict() -- returns a list of records
end tell
but i want to do it in py-appscript (so i can use cheetah) but
ASTranslate errors: Untranslated event 'ascrpsbr'
Appscript doesn't provide an API for calling user-defined
subroutines. You need to drop into aem and use raw AE codes to do that.
i've set NSAppleScriptEnabled in my app's info.plist, and created
an sdef as suggested in http://lists.apple.com/archives/applescript-
implementors/2004/Feb/msg00028.html
but i've not found any docs showing how to link the sdef to my
applescript...
The simplest thing would probably be to call your applet's user-
defined subroutines via aem:
#!/usr/local/bin/python
from aem import *
playRec = Application(findapp.byname('playRec'))
playRec.event('ascrpsbr', {'snam': 'initRecList', '----':
[False]}).send()
recList = playRec.event('ascrpsbr', {'snam': 'listRecDict', '----':
[]}).send()
If you really want to add a dictionary, assuming you've saved your
applet as a bundle, use sdp to convert your sdef to a .r file, then
use Rez to append it to your applet's applet.rsrc file:
sdp -fa playRec.sdef
Rez playRec.r -a -o applet.rsrc -useDF
You'll need to define your applet's handlers using the raw AE codes
given in your dictionary, of course, e.g.
on «event PRecIntL» arg
...
end «event PRecILst»
<command name="init rec list" code="PRecIntL" description="">
<direct-parameter type="boolean" description=""/>
</command>
HTH
has
--
http://appscript.sourceforge.net
http://rb-appscript.rubyforge.org
http://appscript.sourceforge.net/objc-appscript.html
_______________________________________________
Do not post admin requests to the list. They will be ignored.
AppleScript-Users mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
Archives: http://lists.apple.com/archives/applescript-users
This email sent to email@hidden