Какао в состоянии Applescript: ссылка на NSArray объектов?
ХОРОШО. Итак, скажем:
- У меня есть класс
myCollection
, классmyObject
и собственностьobjects
вmyCollection
возвращаяNSArray
изmyObject
s
Учитывая, что я правильно настроил .sdef
файл для myCollection
и myObject
классы, как я должен идти о определении моего objects
собственность там тоже?
Я имею в виду, пока я могу сделать что-то подобное:
tell application "myApplication"
collection's activeObject's name
end tell
То, что я хочу, чтобы иметь возможность получить доступ к myObject
s как элементы массива:
tell application "myApplication"
set Obj to collection's object 0
end tell
Это мой.sdef (почти...) пока
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE dictionary SYSTEM "file://localhost/System/Library/DTDs/sdef.dtd">
<dictionary xmlns:xi="http://www.w3.org/2003/XInclude">
<xi:include href="file:///System/Library/ScriptingDefinitions/CocoaStandard.sdef" xpointer="xpointer(/dictionary/suite)"/>
<suite name="myApplication Suite" code="myRm" description="myApplication Suite">
<class name="application" code="camy" description="myApplication's top-level scripting object." inherits="application">
<cocoa class="myApplication"/>
<property name="myname" code="PEnm" description="The name of the application" type="text" access="r">
<cocoa key="myname"/>
</property>
<property name="currentContents" code="PEnc" description="The current contents" type="text" access="r">
<cocoa name="currentContents" />
</property>
<property name="activeDocument" code="PEad" description="The active document" type="document" access="r">
<cocoa name="activeDocument" />
</property>
</class>
<class name="document" code="cDoc" description="myApplication document">
<cocoa class="myDocument"/>
<property name="alias" code="cDal" description="The document's alias" type="text" access="r">
<cocoa key="alias" />
</property>
<property name="content" code="cDco" description="The document's content" type="text" access="rw">
<cocoa key="content" />
</property>
</class>
</suite>
</dictionary>
Как я должен идти об этом?
1 ответ
Решение
Это все, что мне было нужно:
<class name="editor" code="cDed" description="myEditor">
<cocoa class="myEditor"/>
<element type="document" access="r">
<cocoa name="documents" />
</element>
</class>
<class name="document" code="cDoc" description="myDocument">
<cocoa class="myDocument"/>
....