1

アプリケーションをスクリプト可能にする作業を行っています。「誰の」フィルター句に苦労しています。

私はこれを機能させたいのですが、name使用できますが、使用countryできません:

tell application "myapp"
    get every city whose name is "Berlin" -- works
    get every city whose country is "Germany" -- error -1700 (Can’t make country into type specifier)
end tell

sdef の関連部分は次のようになります。

<class name="application" code="capp">
    <cocoa class="NSApplication"/>
    <element type="city">
        <cocoa key="allCities"/>
        <accessor style="index"/>
    </element>
    <class name="city" code="Citi" plural="cities">
        <cocoa class="ScriptableCity"/>
        <property name="name" code="pnam" type="text" access="r">
            <cocoa key="name"/>
        </property>
        <property name="country" code="Ctry" type="text" access="r">
            <cocoa key="country"/>
        </property>
    </class>

country「whos」と連携するにはどうすればよいですか? どうやら、「whose」句はプロパティ名ではなく型指定子を必要としていますが、これは意味がありません。

を実装しましたが、それは forではなく forindicesOfObjectsByEvaluatingObjectSpecifier:でしか呼び出されません。namecountry

4

1 に答える 1