AppleScriptでObjective-Cメソッドの呼び出し | 貯え 小道具 興味ない?

貯え 小道具 興味ない?

「貯えもの」とは、いってもお金をご想像の方は、ご遠慮くださいまし。
Storage = Data Storage
関わってお仕事したり、使ってて感じたことなり
記すBlogでございます。
トラックバックを時折頂きますが、削除する場合がございます。

AppleScript Studioでのサンプルプログラムも書籍での最後の章(「第5章 Objective-利用による上級編」)に辿り着きました。

AppleScriptの色々」に追記で書いたのですが、「AppleScriptObjCを使ったアプリケーション製作の概要」によれば「以前はAppleScript Studioという仕組みがありましたが、Mac OS X10.6からはAppleScriptObjC(以下ASOC)という仕組みに切り替わりました。」ということなので、

という書籍では「Mac OS X 10.2」の頃の環境での事例らしいので、その頃より新しい使い方に関しては、あまり詳しくなさそうです。ですが、「第5章 Objective-C利用による上級編」ではObjective-Cのクラスを読み込んで、AppleScriptで扱う方法が紹介されています。多分、この使い方がMac OS X 10.6以降の「AppleScriptObjC」ではないかと思います。

 

AppleScriptでは、Objective-Cのクラスを「Interface Builder」にソースコードファイルを読み込むという方法で、組み込むことが出来ます。これを行って、AppleScriptから

「call method (メソッドの名前) of (オブジェクトの名前)」

という書式で呼び出せます。

 

書籍のサンプルプログラムでは「OpenGL」のテストプログラムを取り上げています。

 

実は以前に「OpenGL」のテストプログラムを試したことがありまして、

2015-05-05の「OpenGLを使ってみる」や2021-01-13「XcodeでOpenGLのテスト」の記事を書きました。どちらも「OpenGL」のサンプルプログラムですが、描画だけをコマンドラインからのコンパイルで動作確認しただけでした。

 

今回は、メニューで描画する図形を変えたり、描画する色を変えたりというユーザーインターフェースが付いていますが、その辺をAppleScriptで書いているので、他の言語を使わずに出来ました。

 

これで、「AppleScript Studio」を使った書籍に基づくサンプルプログラムの作成は終わりです。流石にObjective-Cのクラスメソッドを呼び出すプログラムともなると、デバッグが大変でしたが、なんとか動作確認できました。一連のテストはUTMを使った「仮想Mac OS X」でのXcodeを使う方法でしたが、歴史的なOSの経緯に基づいて仮想環境の「Mac OS X Panther」、「Mac OS X Tiger」で試しましたが、以降は実機のIntel Mac mini、 M1 Mac miniを使って試してみるつもりです。