Rich UI アプリケーションでテキストをハードコーディングするのではなく、外部ファイルから表示可能なテキストを取得する場合は、Rich UI プロパティー・ライブラリー (ステレオタイプ RUIPropertiesLibrary) をセットアップします。全体的なメカニズムについては、『表示可能テキストのプロパティー・ファイルの使用』で説明します。Rich UI プロパティー・ライブラリーで暗黙の関数を使用して、任意のストリングの値を置換することもできます。
Library myLibrary type RUIPropertiesLibrary {propertiesFile="myFile")
entryForInputRequired STRING;
entryForOthers STRING;
someText STRING;
end
宣言で直接割り当てられている値 (例えば、someText String = "Click!";) はすべて無効です。1 つの例外を除き、すべてのランタイム値が外部ファイルから取得されます。ファイルに特定のエントリーが含まれていない場合 (例えば、ファイルに someText のエントリーが含まれていない場合) は、実行時の値は、変数名 (例えば、「someText」) に等しいストリングになります。
propertiesFile のデフォルト値はライブラリーの名前 (この場合は「myLibrary」) です。
someText=Promote {0} in the {1} department
employeeName, departmentName String;
employeeName = "Jeff";
departmentName = "Sales";
myLabel TextLabel {text =
myLibrary.getMessage(myLibrary.someText, [employeeName, departmentName]);
myMessage STRING = "Promote {0} in the {1} department";
myLabel TextLabel {text =
myLibrary.getMessage(myMessage, [employeeName, departmentName]);
getMessage(baseMessage STRING in, inserts STRING[] in) returns (fullMessage STRING);
employeeName STRING = "Jeff";
myMessage STRING = "Promote {0} in the {1} department";
myLabel TextLabel {text =
myLibrary.getMessage(myMessage, [employeeName]);
検証のオーバーライドまたはメッセージのフォーマット時は関数 getMessage を使用できません。そのようなメッセージに inserts を渡すことはできません。