SuperTalk
追加された構文機能
HyperTalkではオブジェクト(ボタンやフィールドなど)が持つプロパティは固定されていたが、SuperCardでは define property propName
というコマンドを使うことで、スクリプター(プログラマー)が自分で新しいプロパティを追加できる。
このユーザー定義プロパティには、任意のテキスト(数値やオブジェクト参照も含む)を格納でき、さらにはファイル全体の内容を保存することさえ可能である。
ダイアログコマンドの拡張
SuperTalkでは、HyperTalkのanswerおよびanswer fileコマンドにいくつかのバリエーションが追加されている。 これにより、以下のようなことができる:
リストから複数の項目を選択する
利用可能なアイコンの中からアイコンを選ぶ
MIDI楽器を選択して音を再生する
対応する画像ファイルを選択し、プレビューを表示する
ディスクやフォルダを選択する
ただし、HyperTalkのダイアログと異なり、SuperTalkのanswerやaskダイアログはテキスト量に応じて自動的にサイズを変更しない。 しかし、SuperCardではウィンドウ内に任意の型の「カード(ページ)」を配置できるため、必要に応じて自分で大きなダイアログを作ることが容易である。 また、alertコマンドを使うことで、標準的なシステムのアラートウィンドウやシートを表示でき、標準のシステムアイコンも使用可能である。
その他の機能拡張
switchコマンド
複雑な条件分岐をより読みやすく記述できる。
メディアの録音
カードのスクリーンショット、音声、QuickTimeムービーなど、さまざまなタイプのメディアを記録できる。
cloneコマンド
コピー&ペーストと同等の操作を行うが、クリップボードの内容を変更しない。
enumerationコマンド
連番の整数値を持つグローバル変数を自動生成する。
repeat for each item x構文
MetaCardでおなじみのリスト反復構文が追加され、リストの各項目を簡潔に処理できるようになった。
例外処理
SuperCardでは、try文とそれに関連するthrowコマンドを用いて、例外処理(エラー処理)を記述できる。 これにより、スクリプトの実行中に発生したエラーを安全に捕捉し、柔軟に対応できるようになっている。