コントロール記述ボキャブラリの概要を説明します。
コントロール記述ボキャブラリの概要や、要素・属性を解説します。
コントロール記述ボキャブラリの概要を説明します。
xfyユーザーエージェント上で、XML文書中で使用するユーザーインターフェイスコントロールを記述するときに使用するボキャブラリです。
コントロールを使用して文字列を設定した場合、その文字列に含まれる空白・タブ・改行からなる空白文字列は、そのまま変換元XML文書のDOMに反映されます。DOMに反映された空白文字列は、変換元XML文書をファイルへ保存するときに、XFRのデフォルトの動作によって1つの空白に変換されます。空白文字列をそのままファイルに保存したい場合は、次のどちらかの方法で対処します。
xml:space属性を使用するpreserveを指定したxml:space属性を記述します。
trueを指定した
xfr:preserve-whitespaces要素を記述します。
XFRについて、詳しくは「XFR(XML Formatting Rule)リファレンス」をご覧ください。
コントロール記述ボキャブラリの名前空間URI参照はhttp://xmlns.xfy.com/controlsです。 以下の説明で、コントロール記述ボキャブラリの要素を記述するときは、ctrl:という名前空間接頭辞を使用します。
このほか、以下の説明中に出現するボキャブラリと、そのボキャブラリに使用している名前空間接頭辞は次のとおりです。
xvcd: を使用します。詳細は、「VC中核リファレンス」をご覧ください。
instruction: を使用します。 詳細は、「プラットフォームコマンドインストラクションリファレンス」をご覧ください。
event: を使用します。 詳細は、「プラットフォームイベントリファレンス」をご覧ください。
コントロール記述ボキャブラリに属する要素・属性・イベントを解説します。
ユーザーインターフェイスコントロールを記述するときに使用する要素や、ユーザーインターフェイスコントロールの動作設定について、説明します。
コントロール記述ボキャブラリで、ユーザーインターフェイスコントロールを記述するときに使用する要素・属性は以下の通りです。
ctrl:input 要素値を入力するためのコントロールを作成する要素です。type属性に値を指定して、次のコントロールを作成できます。
日付入力コントロールで入力される日付の書式は、CCYY-MM-DDです。(CC:西暦の年の最初の2桁、YY:西暦の年の最後の2桁、MM:月、DD:日)
type
テキストフィールド以外のコントロールを作成したいときに、作成するコントロールの種類を記述する属性です。次の文字列で指定します。
boolean
date
省略された場合、テキストフィールドが作成されます。
style
コントロールに適用するスタイルシートを記述する属性です。スタイルシートはCSSで記述します。使用できるスタイルシートのプロパティについては、「コントロール記述のCSSサポート状況」の「ctrl:input要素」をご覧ください。
省略された場合、適用するスタイルシートはないものと見なされます。
ref
コントロールで設定された値を反映する変換元XML文書のノードを、XPath式で記述する属性です。
省略された場合、コントロールで設定された値を反映するノードは存在しないものと見なされます。
relevant
コントロールが有効か無効かを設定する属性です。XPath式で記述します。記述されたXPath式を真偽値として評価した結果で、コントロールが有効か無効かが判断されます。
trueの場合
falseの場合
省略された場合、true()が設定されたと見なされます。
readonly
コントロールが参照専用かそうでないかを設定する属性です。XPath式で記述します。記述されたXPath式を真偽値として評価した結果で、コントロールが参照専用かそうでないかが判断されます。
trueの場合
falseの場合
省略された場合、false()が設定されたと見なされます。
design-mode
デザインモードを使用するかしないかを設定する属性です。真偽値で記述します。
true
false
省略された場合、falseが設定されたと見なされます。
maxlength
入力できる文字列の最大の長さを設定する属性です。1以上の整数値で記述します。type属性の指定でテキストフィールド以外のコントロールが作成された場合は、無効となります。
省略された場合、入力できる文字列の長さに制限はありません。
text-type
入力されるデータのデータ型を設定する属性です。「型制約に基づく補正入力機能リファレンス」の「2.1. 変数型」に記述されているデータ型をQNameで記述します。設定された値は、type属性が省略されたときに有効となります。
省略された場合、値は制約されません。
text-filler
表示する文字列データが存在しないときに、代わりに表示する文字列を設定する属性です。type属性の指定でテキストフィールド以外のコントロールが作成された場合は、無効となります。
省略された場合、空文字列が指定されたと見なされます。
inputmode
IMEの入力モードを設定する属性です。次の文字列で記述します。
hiragana
katakana
katakana halfWidth
latin fullWidth
off
type属性の指定でテキストフィールド以外のコントロールが作成された場合は、無効となります。IMEの入力モード設定については、「IME制御」をご覧ください。
省略された場合、IMEの制御は行われません。
dispatch-value-changed-event
ctrl:value-changedイベントを発行するタイミングを指定する属性です。次の文字列で記述します。
text-committed
text-edited
type属性の指定でテキストフィールド以外のコントロールが作成された場合は、無効となります。
省略された場合、text-committedが設定されたと見なされます。
ctrl:input要素内には以下の要素を記述できます。
ctrl:label要素
type属性の値にbooleanを設定した場合は、必ず1つ記述します。xvcd:action要素
ctrl:secret 要素入力された文字を*に置き換えて画面に表示する文字列入力コントロールを作成する要素です。パスワード入力など、入力された文字列が読み取られては困るような場合に使用します。
ctrl:secret要素のIMEの入力モード設定については、「IME制御」をご覧ください。
style
コントロールに適用するスタイルシートを記述する属性です。スタイルシートはCSSで記述します。使用できるスタイルシートのプロパティについては、「コントロール記述のCSSサポート状況」の「ctrl:secret要素」をご覧ください。
省略された場合、適用するスタイルシートはないものと見なされます。
ref
コントロールで設定された値を反映する変換元XML文書のノードを、XPath式で記述する属性です。
省略された場合、コントロールで設定された値を反映するノードは存在しないものと見なされます。
relevant
コントロールが有効か無効かを設定する属性です。XPath式で記述します。記述されたXPath式を真偽値として評価した結果で、コントロールが有効か無効かが判断されます。
trueの場合
falseの場合
省略された場合、true()が設定されたと見なされます。
readonly
コントロールが参照専用かそうでないかを設定する属性です。XPath式で記述します。記述されたXPath式を真偽値として評価した結果で、コントロールが参照専用かそうでないかが判断されます。
trueの場合
falseの場合
省略された場合、false()が設定されたと見なされます。
design-mode
デザインモードを使用するかしないかを設定する属性です。真偽値で記述します。
true
false
省略された場合、falseが設定されたと見なされます。
maxlength
入力できる文字列の最大の長さを設定する属性です。1以上の整数値で記述します。
省略された場合、入力できる文字列の長さに制限はありません。
ctrl:secret要素内には以下の要素を記述できます。
ctrl:label要素
xvcd:action要素
ctrl:textarea 要素改行を入力できる、複数行の文字列入力コントロールを作成する要素です。
style
コントロールに適用するスタイルシートを記述する属性です。スタイルシートはCSSで記述します。使用できるスタイルシートのプロパティについては、「コントロール記述のCSSサポート状況」の「ctrl:textarea要素」をご覧ください。
省略された場合、適用するスタイルシートはないものと見なされます。
ref
コントロールで設定された値を反映する変換元XML文書のノードを、XPath式で記述する属性です。
省略された場合、コントロールで設定された値を反映するノードは存在しないものと見なされます。
relevant
コントロールが有効か無効かを設定する属性です。XPath式で記述します。記述されたXPath式を真偽値として評価した結果で、コントロールが有効か無効かが判断されます。
trueの場合
falseの場合
省略された場合、true()が設定されたと見なされます。
readonly
コントロールが参照専用かそうでないかを設定する属性です。XPath式で記述します。記述されたXPath式を真偽値として評価した結果で、コントロールが参照専用かそうでないかが判断されます。
trueの場合
falseの場合
省略された場合、false()が設定されたと見なされます。
design-mode
デザインモードを使用するかしないかを設定する属性です。真偽値で記述します。
true
false
省略された場合、falseが設定されたと見なされます。
maxlength
入力できる文字列の最大の長さを設定する属性です。1以上の整数値で記述します。
省略された場合、入力できる文字列の長さに制限はありません。
inputmode
IMEの入力モードを設定する属性です。次の文字列で記述します。
hiragana
katakana
katakana halfWidth
latin fullWidth
off
type属性の指定でテキストフィールド以外のコントロールが作成された場合は、無効となります。IMEの入力モード設定については、「IME制御」をご覧ください。
省略された場合、IMEの制御は行われません。
dispatch-value-changed-event
ctrl:value-changedイベントを発行するタイミングを指定する属性です。次の文字列で記述します。
text-committed
text-edited
省略された場合、text-committedが設定されたと見なされます。
ctrl:textarea要素内には以下の要素を記述できます。
ctrl:label要素
xvcd:action要素
ctrl:range 要素指定された範囲内の数値を入力するスピナーコントロールを作成する要素です。
start
(必須)
入力可能な最小の値を設定する属性です。-9,223,372,036,854,775,808以上、9,223,372,036,854,775,807以下の整数値で設定します。step属性に小数値を指定した場合、値の範囲は-9,223,372,036,854,775,808に10の-(step属性の小数点以下の桁数)乗をかけた値以上、9,223,372,036,854,775,807に10の-(step属性の小数点以下の桁数)乗をかけた値以下となります。小数点以下の桁数がstep属性の小数点以下の桁数を超える場合は、超える部分は切り捨てられます。
[例]step属性に0.01が設定された場合
| 最小値 |
-92,233,720,368,547,758.08
|
| 最大値 |
92,233,720,368,547,758.07
|
123.45678が入力されたときに設定される値
|
123.45
|
設定する値を指数表現で記述することはできません。
end
(必須)
入力可能な最大の値を設定する属性です。-9,223,372,036,854,775,808以上、9,223,372,036,854,775,807以下の整数値で設定します。step属性に小数値を指定した場合、値の範囲は-9,223,372,036,854,775,808に10の-(step属性の小数点以下の桁数)乗をかけた値以上、9,223,372,036,854,775,80710の-(step属性の小数点以下の桁数)乗をかけた値以下となります。小数点以下の桁数がstep属性の小数点以下の桁数を超える場合は、超える部分は切り捨てられます。
[例]step属性に0.01が設定された場合
| 最小値 |
-92,233,720,368,547,758.08
|
| 最大値 |
92,233,720,368,547,758.07
|
123.45678が入力されたときに設定される値
|
123.45
|
設定する値を指数表現で記述することはできません。
step
数値の増減幅を設定する属性です。小数値を指定した場合、その小数桁の値を入力できます。小数点以下の桁数は18桁まで設定できます。
省略した場合、1が指定されたと見なされます。
style
コントロールに適用するスタイルシートを記述する属性です。スタイルシートはCSSで記述します。使用できるスタイルシートのプロパティについては、「コントロール記述のCSSサポート状況」の「ctrl:range要素」をご覧ください。
省略された場合、適用するスタイルシートはないものと見なされます。
ref
コントロールで設定された値を反映する変換元XML文書のノードを、XPath式で記述する属性です。
省略された場合、コントロールで設定された値を反映するノードは存在しないものと見なされます。
relevant
コントロールが有効か無効かを設定する属性です。XPath式で記述します。記述されたXPath式を真偽値として評価した結果で、コントロールが有効か無効かが判断されます。
trueの場合
falseの場合
省略された場合、true()が設定されたと見なされます。
readonly
コントロールが参照専用かそうでないかを設定する属性です。XPath式で記述します。記述されたXPath式を真偽値として評価した結果で、コントロールが参照専用かそうでないかが判断されます。
trueの場合
falseの場合
省略された場合、false()が設定されたと見なされます。
design-mode
デザインモードを使用するかしないかを設定する属性です。真偽値で記述します。
true
false
省略された場合、falseが設定されたと見なされます。
ctrl:range要素内には以下の要素を記述できます。
ctrl:label要素
xvcd:action要素
ctrl:select1 要素複数の選択肢から1つを選ぶコントロールを作成する要素です。appearance属性に値を指定して、次のコントロールを作成できます。
appearance
作成するコントロールの外見を設定する属性です。次の文字列で記述します。
full
compact
minimal
省略された場合、minimalが設定されたと見なされます。
selection
appearance属性の値にminimalが設定されているときに、任意の文字列を入力できるかできないかを設定する属性です。次の文字列で記述します。
open
closed
appearance属性の値がminimalでないときは、無視されます。
省略された場合、closedが指定されたと見なされます。
direction
appearance属性の値にfullが設定されているときに、ラジオボタンを横方向に並べるか縦方向に並べるかを設定する属性です。次の文字列で記述します。
vertical
horizontal
appearance属性の値がfullでないときは、無視されます。
省略された場合、horizontalが指定されたと見なされます。
style
コントロールに適用するスタイルシートを記述する属性です。スタイルシートはCSSで記述します。使用できるスタイルシートのプロパティについては、「コントロール記述のCSSサポート状況」の「ctrl:select1要素」をご覧ください。
省略された場合、適用するスタイルシートはないものと見なされます。
ref
コントロールで設定された値を反映する変換元XML文書のノードを、XPath式で記述する属性です。
省略された場合、コントロールで設定された値を反映するノードは存在しないものと見なされます。
relevant
コントロールが有効か無効かを設定する属性です。XPath式で記述します。記述されたXPath式を真偽値として評価した結果で、コントロールが有効か無効かが判断されます。
trueの場合
falseの場合
省略された場合、true()が設定されたと見なされます。
readonly
コントロールが参照専用かそうでないかを設定する属性です。XPath式で記述します。記述されたXPath式を真偽値として評価した結果で、コントロールが参照専用かそうでないかが判断されます。
trueの場合
falseの場合
省略された場合、false()が設定されたと見なされます。
design-mode
デザインモードを使用するかしないかを設定する属性です。真偽値で記述します。
true
false
省略された場合、falseが設定されたと見なされます。
alert-invalid-value
ref属性に設定されたノードで示される値がコントロールでは設定できない値のときに、警告を表示するかしないかを設定する属性です。真偽値で記述します。
true
ref属性に設定されたノードで示される値がコントロールでは設定できない値のときに、警告を表示します。
false
ref属性に設定されたノードで示される値がコントロールでは設定できない値でも警告は表示しません。
ref属性が指定されていない場合や、コントロールが無効となっている場合は、設定された値にかかわらず、警告は表示されません。appearance属性にfullが設定されたときに有効です。
省略された場合、trueが設定されたと見なされます。
maxlength
入力できる文字列の最大の長さを設定する属性です。1以上の整数値で記述します。
省略された場合、入力できる文字列の長さに制限はありません。
inputmode
IMEの入力モードを設定する属性です。次の文字列で記述します。
hiragana
katakana
katakana halfWidth
latin fullWidth
off
type属性の指定でテキストフィールド以外のコントロールが作成された場合は、無効となります。IMEの入力モード設定については、「IME制御」をご覧ください。
省略された場合、IMEの制御は行われません。
popup-height
ドロップダウンリストやコンボボックスのポップアップ部分に、スクロールバーを表示するときの高さを設定する属性です。CSSの長さの単位系px・em・exを使用して記述します。
省略された場合、200pxが指定されたと見なされます。
ctrl:select1要素内には以下の要素を記述できます。
ctrl:label要素
ctrl:item要素
xvcd:action要素
ctrl:select 要素複数の選択肢から複数の値を選択するリストボックスコントロールを作成する要素です。
設定する値については、「ctrl:select要素の項目の値を設定する場合」をご覧ください。
appearance
作成するコントロールの外見を設定する属性です。次の文字列で記述します。
compact
省略された場合、compactが指定されたと見なされます。
style
コントロールに適用するスタイルシートを記述する属性です。スタイルシートはCSSで記述します。使用できるスタイルシートのプロパティについては、「コントロール記述のCSSサポート状況」の「ctrl:select要素」をご覧ください。
省略された場合、適用するスタイルシートはないものと見なされます。
ref
コントロールで設定された値を反映する変換元XML文書のノードを、XPath式で記述する属性です。
省略された場合、コントロールで設定された値を反映するノードは存在しないものと見なされます。
relevant
コントロールが有効か無効かを設定する属性です。XPath式で記述します。記述されたXPath式を真偽値として評価した結果で、コントロールが有効か無効かが判断されます。
trueの場合
falseの場合
省略された場合、true()が設定されたと見なされます。
readonly
コントロールが参照専用かそうでないかを設定する属性です。XPath式で記述します。記述されたXPath式を真偽値として評価した結果で、コントロールが参照専用かそうでないかが判断されます。
trueの場合
falseの場合
省略された場合、false()が設定されたと見なされます。
design-mode
デザインモードを使用するかしないかを設定する属性です。真偽値で記述します。
true
false
省略された場合、falseが設定されたと見なされます。
ctrl:select要素内には以下の要素を記述できます。
ctrl:label要素
ctrl:item要素
xvcd:action要素
ctrl:trigger 要素クリックされたときに
ctrl:triggeredイベントを発行するボタンコントロールを作成する要素です。
style
コントロールに適用するスタイルシートを記述する属性です。スタイルシートはCSSで記述します。使用できるスタイルシートのプロパティについては、「コントロール記述のCSSサポート状況」の「ctrl:trigger要素」をご覧ください。
省略された場合、適用するスタイルシートはないものと見なされます。
relevant
コントロールが有効か無効かを設定する属性です。XPath式で記述します。記述されたXPath式を真偽値として評価した結果で、コントロールが有効か無効かが判断されます。
trueの場合
falseの場合
省略された場合、true()が設定されたと見なされます。
readonly
コントロールが参照専用かそうでないかを設定する属性です。XPath式で記述します。記述されたXPath式を真偽値として評価した結果で、コントロールが参照専用かそうでないかが判断されます。
trueの場合
falseの場合
省略された場合、false()が設定されたと見なされます。
command
ctrl:triggeredイベントで発行されるコマンドを表す文字列を設定する属性です。QNameで記述します。ctrl:trigger要素内にxvcd:action要素で処理を記述した場合、command属性で指定されたコマンドは実行されません。
省略された場合、実行するコマンドは指定されていないと見なされます。
design-mode
デザインモードを使用するかしないかを設定する属性です。真偽値で記述します。
true
false
省略された場合、falseが設定されたと見なされます。
ctrl:trigger要素内には以下の要素を記述できます。
ctrl:label要素
xvcd:action要素
ctrl:select-color 要素色選択コントロールを作成する要素です。
palette
色選択コントロールで使用するカラーパレットの種類を設定する属性です。次の文字列で記述します。
css-defined
web-safe
省略された場合、css-definedが設定されたと見なされます。
style
コントロールに適用するスタイルシートを記述する属性です。スタイルシートはCSSで記述します。使用できるスタイルシートのプロパティについては、「コントロール記述のCSSサポート状況」の「ctrl:select-color要素」をご覧ください。
省略された場合、適用するスタイルシートはないものと見なされます。
ref
コントロールで設定された値を反映する変換元XML文書のノードを、XPath式で記述する属性です。
省略された場合、コントロールで設定された値を反映するノードは存在しないものと見なされます。
relevant
コントロールが有効か無効かを設定する属性です。XPath式で記述します。記述されたXPath式を真偽値として評価した結果で、コントロールが有効か無効かが判断されます。
trueの場合
falseの場合
省略された場合、true()が設定されたと見なされます。
readonly
コントロールが参照専用かそうでないかを設定する属性です。XPath式で記述します。記述されたXPath式を真偽値として評価した結果で、コントロールが参照専用かそうでないかが判断されます。
trueの場合
falseの場合
省略された場合、false()が設定されたと見なされます。
design-mode
デザインモードを使用するかしないかを設定する属性です。真偽値で記述します。
true
false
省略された場合、falseが設定されたと見なされます。
ctrl:select-color要素内には以下の要素を記述できます。
ctrl:label要素
xvcd:action要素
ctrl:border 要素コントロールをグループ化してタイトルを付けられるボーダーを作成する要素です。グループのタイトルは、要素の内容の
ctrl:label要素で記述します。
style
コントロールに適用するスタイルシートを記述する属性です。スタイルシートはCSSで記述します。使用できるスタイルシートのプロパティについては、「コントロール記述のCSSサポート状況」の「ctrl:border要素」をご覧ください。
省略された場合、適用するスタイルシートはないものと見なされます。
relevant
コントロールが有効か無効かを設定する属性です。XPath式で記述します。記述されたXPath式を真偽値として評価した結果で、コントロールが有効か無効かが判断されます。
trueの場合
falseの場合
省略された場合、true()が設定されたと見なされます。
ctrl:border要素内には以下の要素を記述できます。
ctrl:label要素
ctrl:input要素
ctrl:secret要素
ctrl:textarea要素
ctrl:range要素
ctrl:select1要素
ctrl:select要素
ctrl:trigger要素
ctrl:select-color要素
ctrl:border要素
ctrl:static-label要素
style属性でwidthプロパティを記述すると、その子要素を指定された幅にします。記述されていないときは、幅を300pxにします。ただし、実際の表示は使用されるボキャブラリコンポーネントの実装に依存します。
ctrl:static-label 要素ラベルを表示する要素です。表示する文字列は、要素の内容の
ctrl:label要素で記述します。
ctrl:label要素とは異なり、コントロール記述ボキャブラリの頂点要素として使用できます。
この要素で作成されたラベルへ入力フォーカスを移動することはできません。
style
コントロールに適用するスタイルシートを記述する属性です。スタイルシートはCSSで記述します。使用できるスタイルシートのプロパティについては、「コントロール記述のCSSサポート状況」の「ctrl:static-label要素・ctrl:label要素・ctrl:item要素」をご覧ください。
省略された場合、適用するスタイルシートはないものと見なされます。
relevant
コントロールが有効か無効かを設定する属性です。XPath式で記述します。記述されたXPath式を真偽値として評価した結果で、コントロールが有効か無効かが判断されます。
trueの場合
falseの場合
省略された場合、true()が設定されたと見なされます。
design-mode
デザインモードを使用するかしないかを設定する属性です。真偽値で記述します。
true
false
省略された場合、falseが設定されたと見なされます。
ctrl:static-label要素内には以下の要素を記述できます。
ctrl:label要素
ctrl:label 要素要素内にラベル文字列を記述する要素です。
ctrl:static-label要素とは異なり、ほかの要素で作成されるコントロールにラベル文字列を設定するために、その要素の内容に記述します。
コントロール記述ボキャブラリの頂点要素に使用することはできません。
style
コントロールに適用するスタイルシートを記述する属性です。スタイルシートはCSSで記述します。使用できるスタイルシートのプロパティについては、「コントロール記述のCSSサポート状況」の「ctrl:static-label要素・ctrl:label要素・ctrl:item要素」をご覧ください。
省略された場合、適用するスタイルシートはないものと見なされます。
ctrl:label要素内には、コントロールのラベル文字列をPCDATA文字列で記述します。
ctrl:item 要素
ctrl:select1要素や
ctrl:select要素の選択肢となる項目1つを記述する要素です。項目の値は、要素の内容の
ctrl:value要素で記述します。項目名は、要素の内容の
ctrl:label要素で記述できます。ctrl:label要素を省略した場合は、ctrl:value要素の内容が項目名として使用されます。
ctrl:select要素内で使用するときに設定する値については、「ctrl:select要素の項目の値を設定する場合」をご覧ください。
コントロール記述ボキャブラリの頂点要素に使用することはできません。
style
コントロールに適用するスタイルシートを記述する属性です。スタイルシートはCSSで記述します。使用できるスタイルシートのプロパティについては、「コントロール記述のCSSサポート状況」の「ctrl:static-label要素・ctrl:label要素・ctrl:item要素」をご覧ください。
省略された場合、適用するスタイルシートはないものと見なされます。
要素内には以下の要素を記述できます。
ctrl:label要素
ctrl:value要素
ctrl:value 要素
ctrl:select1要素や
ctrl:select要素の選択肢となる項目1つの値を記述する要素です。
コントロール記述ボキャブラリの頂点要素に使用することはできません。
属性はありません。
ctrl:value要素内には、
ctrl:item要素で保持される値となる文字列をPCDATA文字列で記述します。
選択された項目は、それぞれの項目の値を半角空白で区切ってつないだ文字列にして、
ctrl:value-changedイベントのvalue属性で通知されます。このとき、ctrl:value要素に半角空白を含む文字列が設定されていると、設定された値を正しく判断できません。そのため、ctrl:select要素の項目の値を設定するときは、半角空白を含まない文字列を設定するようにします。
XVCDでコントロールを使用したユーザーインターフェイスを作成するときに、デザインモードを使用できます。
デザインモードは、コントロールの画面上の配置を検討するためのモードです。デザインモードでは、属性の値にかかわらず、コントロールはフォーカス移動の対象となります。しかし、それ以外のキー操作やマウス操作は不可能となります。
コントロールをデザインモードで使用できるようにするかしないかは、XVCDに記述するコントロールごとに指定します。
文字列を入力するコントロールの場合、
ctrl:secret要素を除いて、コントロールにフォーカスが移るときのIMEの入力モードをXVCDで設定できます。XVCDでIMEの入力モードを変更した場合、コントロールからフォーカスが移るときは、元の入力モードには戻りません。
ctrl:secret要素で作成される文字列入力コントロールでは、コントロールに入力フォーカスが移ってきたときにIMEをオフにします。そのあと、入力フォーカスがほかのコントロールへ移っても、IMEを元の入力モードには戻しません。
コントロールのIMEの入力モードをXVCDで設定した場合でも、ユーザーはIMEの入力モードを変更することができます。そのため、コントロールに入力できる文字に制限がある場合は、IMEの入力モード設定にかかわらず、入力された文字列をチェックする必要があります。
コントロール記述ボキャブラリの各要素でのイベント処理と、定義されているイベント要素について解説します。
次の要素で作成されたコントロールでは、ユーザーの操作に対応したイベントが発行されます。
ctrl:input要素
ctrl:secret要素
ctrl:textarea要素
ctrl:range要素
ctrl:select1要素
ctrl:select要素
ctrl:trigger要素
ctrl:select-color要素
それぞれの要素の内容に
xvcd:action要素を記述すると、コントロールから発行されるイベントへの対応を記述できます。
コントロール記述ボキャブラリで定義されているイベント要素は、以下のとおりです。 なお、XVCDを記述するときに、イベント要素を使用することはありません。イベント要素はプラットフォームによって記述されます。
ctrl:value-changed イベントコントロールの値が変更されたときに発行されるイベントです。次の要素で発行されます。
ctrl:input要素
ctrl:secret要素
ctrl:textarea要素
ctrl:range要素
ctrl:select1要素
ctrl:select要素
ctrl:select-color要素
value
(必須)
イベントが発行されたときにコントロールに設定されている値が設定される属性です。設定される値の内容は、コントロールによって異なります。
ctrl:input要素
type属性の値によって異なります。
type属性に値が設定されていない場合
type属性にbooleanが設定されている場合
trueまたはfalseが設定されます。
type属性にdateが設定されている場合
CCYY-MM-DD形式の文字列が設定されます。
ctrl:secret要素 、ctrl:textarea要素
ctrl:range要素
ctrl:select1要素
ctrl:item要素の内容に記述されている
ctrl:value要素の内容が設定されます。
ctrl:select要素
ctrl:item要素の内容に記述されているctrl:value要素の内容を、半角空白で区切ってつないだ文字列が設定されます。
ctrl:select-color要素
#RRGGBBの形式で表現した文字列が設定されます。
ctrl:value-changed要素は、空要素です。
ctrl:caret-moved イベントコントロール内でキャレットが移動したときに発行されるイベントです。次の要素で発行されます。
type属性が指定されていない
ctrl:input要素
ctrl:textarea要素
caret-movedイベントを利用する場合
コントロールの要素でref属性を指定している場合、次に挙げる条件に一方でも当てはまると、文字列内に存在しないオフセット位置がcaret-movedイベントのoffset属性に設定されることがあります。
dispatch-value-changed-event属性の値にtext-committedが指定されている。
text-type属性が指定されている。
そのため、caret-movedイベントを利用するときは、dispatch-value-changed-event属性の値にtext-editedを指定します。また、text-type属性が指定されているときは、caret-movedイベントのoffset属性は利用できません。
offset
(必須)
コントロールに入力されている文字列の先頭からのオフセット位置が設定される属性です。オフセット位置は、文字列の先頭を0とした整数値で表されます。
ctrl:caret-moved要素は、空要素です。
ctrl:triggered イベント