RecordGridCell (クラス)
public abstract RecordGridCell {inherits BaseFrame, RecordGridOptions, ActiveTraversor}
インポート元: CURL.GUI.STANDARD. package 内で定義されています CURL.GUI.CONTROL-LOGICAL.
直接継承しているサブクラス: StandardRecordGridCell

与えられたセル (レコードと列の交点) のデータを表示するために RecordGrid が使用するフォーマット オブジェクト。

説明

RecordGridColumn がデータを表示するには、これらの RecordGridCell のコレクションが必要です。使用する RecordGridCell の型が RecordGridColumn で明示的に指定されていない場合、RecordGridUI がこれを決定します。

オーバーライド

列の表示と編集機能をカスタマイズするには、カスタムの RecordGridCell を作成するのが強力な方法です。ただし、この作成は慎重に行ってください。典型的な RecordGrid ではこのようなセルを一度に多数表示する必要があり、グリッドを速くスクロールするには各セルに表示されるデータをすばやく更新しなければなりません。
既定の StandardRecordGridCell を継承したクラスを使用するか、RecordGridUI で動作するように設計されたそのサブクラスを使用することを検討して下さい。
RecordGridCell を適切かつ効率よく作成するためのヒントを以下に示します。
  • RecordGridCell であまり複雑なグラフィカル階層を作成しないようにします。編集モード中のみ多様なオブジェクト セットを必要とする場合は、シンプルなディスプレイを使い、編集中に複雑なオブジェクト、特に Control のスワップを行うようにします (このモードを認識するには RecordGridCell.note-grid-focus-inRecordGridCell.note-grid-focus-out メソッドを使用します)。
  • RecordGridCell.refresh-data で完全な「リフレッシュ」を実行します。このメソッドは現行レコードのデータを調べ、それがセルに適切に表示されていることを確認します。レコード全体へのアクセスには RecordGridCell.record プロパティが使われるのに対し、RecordGridCell.get-dataRecordGridCell.get-formatted-data はセルの列に関連付けられたデータへのアクセスを提供するショートカットです。
    このメソッドが最後に呼び出された後で起こるレコードの状態やアイデンティティの変更について、何も予測することはできません。
  • editable? が true のセルは、ユーザーがセル値の編集を終了した後で RecordGridCell.update-data を呼び出して元のレコードを更新する必要があります。
    このクラスの実装では、その内容の enabled? または editable? がいずれも true でないときはこれらを編集できないようにする必要があります。
  • String の表示および編集を行うセルでは、RecordGridCell.formatRecordGridCell.parse メソッドをオーバーライドして、表示される String への、または String からの既定の変換を決定することができます。これらのメソッドは、RecordGridCell.parse-spec および RecordGridCell.format-spec のオプション設定を使って「オーバーライド」することも可能です。
  • 頻繁に呼び出される refresh-data に備えて計画を立てます。これは、特にグリッド操作 (スクロール、ソートなど、またはグリッドの配置) に応じてセルで呼び出されます。このメソッドで Graphic やオブジェクトを不必要に作成しないようにしてください。代わりに、必要なオブジェクトを 1 度作成したら、このメソッドを使ってこれらを最小限変更して現行レコードを表示するようにします。
  • もし、コントロールのような、ActiveTraversor やリンクが、カスタムの RecordGridCell の中に置かれた場合は、それらは、独立の ActiveTraversalContainer の中に置かれる必要があります。そのため、どの子トラバーサーの、非ローカルオプション active-traversal-container を、 ActiveTraversalContainer のインスタンス、または、null に設定する必要があります。
    セル自体が中にある ActiveTraversalContainerRecordGridUI はセル間のトラバーサルを管理するためにリザーブされています。
  • エディタとしてRadioButtonを使用する時は、その RadioButton の値を扱う目的で、RecordGrid 全体を囲む RadioFrame に依存することは出来ません。スクロールする度に RecordGridCell が生成、破棄されるので、RadioFrameが、必要とされるセル全てを同時にその内部に保持しているとは限らないからです。数行に渡るような RadioButton のグループを必要とする時には、各 RecordGridCellradio-frame プロパティをnullに設定し、関連付けられたレコードの各グループ内で一行だけが、true 値を持つようにアプリケーションロジックを組む必要があります。単一レコード内で複数のカラムに渡る場合も同様です。

ビジュアル テスト

全てのVisualにサポートされるデフォルトのビジュアルテストアクションに加えて、このクラスのオブジェクトは以下のアクションをサポートします。
action arguments description
SetCellData data:String セルにコンテンツを設定します。

注意事項

このオブジェクトは、"RecordGridCell"のスタイル ルールを記述することによってスタイル化することが出来ます。詳細は スキンが適用されたレコードグリッド をご覧下さい。

コンストラクタ
default:新しい RecordGridCell を初期化します。
コンストラクタ public {RecordGridCell.default}

プロパティ
can-update?:このセルのデータは更新可能ですか?
アクセサ public RecordGridCell.can-update?:bool
cells-take-focus?:RecordGridCell がグリッド フォーカスの取得を許可されているかどうかを示します。
ローカル オプション public RecordGridCell.cells-take-focus?:bool
column:このセルが関連付けられている RecordGridColumn
アクセサ public RecordGridCell.column:#RecordGridColumn
セッター public RecordGridCell.column:#RecordGridColumn
current?:このセルが現行レコードに含まれているかどうか調べます。
アクセサ public RecordGridCell.current?:bool
field:このセルのデータが格納されているフィールド。
アクセサ public RecordGridCell.field:#RecordField
format-spec:この列のデータをどのように String にフォーマットするか指定します。
ローカル オプション public RecordGridCell.format-spec:any
grid:このセルが関連付けられている RecordGrid
アクセサ public RecordGridCell.grid:#RecordGrid
halign:RecordGridCell 内の内容の水平方向の配置。
ローカル オプション public RecordGridCell.halign:any
halign-spec:レイアウトで使用される halign 値を提供します。
アクセサ protected RecordGridCell.halign-spec:any
has-grid-focus?:このセルがグリッド フォーカスを持っているかどうか調べます。
アクセサ public RecordGridCell.has-grid-focus?:bool
mnemonic:この ActiveTraversor にショートカット キーを割り当てます。
ローカル オプション public RecordGridCell.mnemonic:char
option-parent:オブジェクトのオプションの親を返します。
アクセサ public RecordGridCell.option-parent:#GraphicOptions
pending-value:編集中の、保留中で終了していないセルの値です。
アクセサ public RecordGridCell.pending-value:any
pending-value?:セルが編集され、RecordSet で保持している値とは異なる保留中の値がある場合は、True です。
アクセサ public RecordGridCell.pending-value?:bool
record:このセルが表示するレコード。
アクセサ public RecordGridCell.record:#Record
record-index:このセルが関連付けられているレコードのインデックス、または -1 (現在このセルがレコードに関連付けられていない場合)。
アクセサ public RecordGridCell.record-index:int
セッター public RecordGridCell.record-index:int
selected?:このセルが現在選択されているかどうか調べます。
アクセサ public RecordGridCell.selected?:bool
style-element:スタイリングの目的のための、この Visual の "要素" や "型" です。
アクセサ public RecordGridCell.style-element:String
tab-index:ActiveTraversor のタブインデックス。
ローカル オプション public RecordGridCell.tab-index:int
test-value:test-recordに適当なセルのString型の値、またはnullを返します。
アクセサ public RecordGridCell.test-value:#String
valign:RecordGridCell の内容の垂直方向の配置を指定します。
ローカル オプション public RecordGridCell.valign:any
valign-spec:レイアウト処理で使用される valign 値を提供します。
アクセサ protected RecordGridCell.valign-spec:any
プロパティ 継承 BaseFrame: child, clonable-class?, completely-clonable-children?, graphical-children, hstretch?-spec, ordered-children, reverse-ordered-children, vstretch?-spec, width-first?
プロパティ 継承 RecordGridOptions: cell-spec, column-movable?, column-resizable?, edit-on-focus?, editable?, enclose-header-label?, filter-menu-proc, header-spec, parse-spec, sort-spec
プロパティ 継承 ActiveTraversor: _active-traversal-container, active-traversal-container, takes-focus?, valid?, validation-result
プロパティ 継承 OptionListInterface: option-register-proc, options-present-here, registered-option-keys
プロパティ 継承 Visual: _style-element, cursor, data-source, dragee, font-size, graphical-parent, has-key-focus?, input-method-enabled?, input-method-keyboard-mode, name, options, style-class, style-manager, style-options, test-child?, test-description, test-name, test-parent?, test-type-name, test-visible?, tooltip, user-data
プロパティ 継承 GetBoundsBox: layout-locally-valid?, layout-valid?
プロパティ 継承 Box: clip-child-shadows?
プロパティ 継承 DataBindingTarget: data-binding-context, data-bindings
プロパティ 継承 EventTarget: event-handlers
プロパティ 継承 Graphic: avoid-page-break?, background, border-color, border-spec, border-style, border-width, cell-border-spec, cell-border-width, cell-margin, discrete-select-in-range?, display-context, enabled?, graphic-selectable, height, horigin, is-paginating?, layout, margin, opaque-to-events?, outside-margin, pagination-state, parent, possibly-displayed?, selection-context, shadow-color, shadow-spec, visible?, visual-parent, vorigin, width

メソッド
become-active:アクティブ化に対して応答します。
public {RecordGridCell.become-active forward?:bool = true}:bool
commit-pending-value:保留中の値をセル上で強制的にコミットします。
public {RecordGridCell.commit-pending-value}:void
fire-event-at-container:この ActiveTraversor が格納されている ActiveTraversalContainer にイベントを送信します。
protected {RecordGridCell.fire-event-at-container e:GuiEvent}:void
flush-pending-value:イベントを起動することなしに保留中の値を削除します。
public {RecordGridCell.flush-pending-value}:void
format:このセルでの表示に適した String にデータを変換します。
public {RecordGridCell.format data:any}:String
get-data:このセルの現在のデータを取得します。
public {RecordGridCell.get-data}:(data:any, valid?:bool)
get-formatted-data:このセルの現在のデータを String としてフォーマットして取得します。
public {RecordGridCell.get-formatted-data}:(data:String, valid?:bool)
get-indices:RecordGrid内でのこのセルのレコードと列のインデックスを取得します。
public {RecordGridCell.get-indices}:(int, int)
get-parsed-value:このセルに入力された String 値を解析します。
public {RecordGridCell.get-parsed-value val:String}:any
handle-mnemonic:ActiveTraversor.mnemonic を通した呼び出しに反応します。
public {RecordGridCell.handle-mnemonic}:void
note-grid-focus-in:グリッド フォーカスを受け取ったことをこのオブジェクトに通知するために呼び出されます。
public {RecordGridCell.note-grid-focus-in}:void
note-grid-focus-out:グリッド フォーカスを失ったことをこのオブジェクトに通知するために呼び出されます。
public {RecordGridCell.note-grid-focus-out}:void
on-key-press:KeyPress イベントのスタティック イベント ハンドラ
public {RecordGridCell.on-key-press e:KeyPress}:void
option-lookup-here:オプション検索ステップを実行します。
public {RecordGridCell.option-lookup-here
key:OptionKey,
local?:bool
}:(item:#OptionItem, local-key?:bool)
parse:String の入力値を record-source への記入に適した値に変換します。
public {RecordGridCell.parse val:String}:any
propagate-option-change:このオブジェクト、および該当する場合はそのオプションの子孫にオプションが変更されたことを通知します。
protected {RecordGridCell.propagate-option-change
item:OptionItem,
removed?:bool
}:void
refresh-appearance:Recordの更新が無い場合に関連付けられたRecordのデータで使ってこのセルのグラフィック表示を同期させます。
public {RecordGridCell.refresh-appearance}:void
refresh-data:このセルのグラフィカル表示を、関連付けられた Record のデータと同期させます。
public {RecordGridCell.refresh-data}:void
test-run:オブジェクトに対してビジュアル テスト アクションを実行します。
public {RecordGridCell.test-run action:String, args:FastArray}:any
update-data:このセルに関連付けられた Record を更新します。
public {RecordGridCell.update-data val:any}:#DataException
メソッド 継承 BaseFrame: add-internal, after-reposition, allocate-layout-object, attempt-revalidate-layout, before-reposition, clone-appearance-helper, compute-child-bounds, compute-parent-elastic, constrain-height, constrain-width, draw, end-pagination, get-height-preference, get-text, get-width-preference, install-child-bounds, internal-remove-child, note-attached, note-detaching, notify-option-children, paginate, pick-child, propagate-request-layout, register-options, set-size
メソッド 継承 ActiveTraversor: become-active-from-traversal, mark-invalid, mark-valid, request-key-focus
メソッド 継承 BasicBox: contains-point?, find-graphic-at, handle-crossing, on-pointer-envelope-event, pointer-enter-occurred, pointer-leave-occurred
メソッド 継承 OptionListInterface: add-option, add-style-option, change-option-parent-notify, clone-options, get-option, get-option-by-name, keyword-init-arg, local-add-notify, local-remove-notify, name-to-option-key, new-option-item, option-change-notify, option-lookup, option-propagate-notify, option-set?, remove-option, remove-style-option, remove-styles, set-option-by-name, set-style-option-by-name, unset-option-by-name, unset-style-option-by-name
メソッド 継承 Visual: add, add-from-init-args, animate, change-cursor, clonable-appearance?, clone-appearance, get-focus-manager, get-layout-context, get-test-parent, get-test-property, get-view, maybe-fire-attach-event, maybe-fire-detach-event, non-keyword-init-arg, note-caret-position, on-drag-leave, on-pointer-leave, pop-cursor, prepare-test-object, prepare-test-parent, push-cursor, quantize-width, refresh-style-options, release-key-focus, scroll-to-include, test-record, transform-from-display-coordinates, transform-from-graphical-root-coordinates, transform-to-display-coordinates, transform-to-graphical-root-coordinates
メソッド 継承 GetBoundsBox: get-bounds, get-elastic-bounds-into, get-nonparent-bounds-into, request-layout, validate-layout
メソッド 継承 InitRestArgParser: process-rest-args
メソッド 継承 GraphicOptions: any-to-Distance, get-display-context
メソッド 継承 GuiEventTarget: handle-delegate-event, handle-event, on-action, on-cancel-mode, on-command-changed, on-commit, on-composition-change-event, on-composition-result-event, on-context-menu-event, on-current-record-change-request, on-current-record-changed, on-destroy-notify, on-destroy-requested, on-drag-over, on-drag-pointer, on-drag-started, on-drop, on-end-composition-event, on-focus-event, on-focus-in, on-focus-out, on-gesture, on-gesture-begin, on-gesture-end, on-gesture-magnify, on-gesture-pan, on-gesture-rotate, on-gesture-swipe, on-gesture-tap, on-gesture-touch, on-grab-release, on-gui-event, on-input-method-event, on-key-event, on-pointer-button, on-pointer-crossing, on-pointer-event, on-pointer-motion, on-pointer-press, on-pointer-release, on-pointer-scroll, on-raw-key-event, on-raw-key-press, on-raw-key-release, on-reset, on-selectable-added, on-selectable-removed, on-selection-changed, on-selection-context-activated, on-selection-context-deactivated, on-selection-event, on-start-composition-event, on-start-event, on-stop-event, on-view-activate, on-view-deactivate, on-window-close, remove-event-handlers-for-event-class
メソッド 継承 Box: clear, compare-children, find-test-children, get-delimited-child-text-selection, get-gui-path-to-child, get-range-as-selected-text, get-visible-rect-in-root-into, graphical-child-visible-at, make-gui-mark, search-next-here, search-prev-here
メソッド 継承 DataBindingTarget: add-data-binding, get-data-binding, refresh-data-binding, remove-data-binding, unset-property, update-data-binding, validate-data-binding
メソッド 継承 EventTarget: accepts-event-class?, add-event-handler, event-handler-present?, remove-event-handler, verify-event
メソッド 継承 Graphic: create-pagination-state, detach, draw-range-as-selected, draw-shadow, find-ancestor, find-graphical-ancestor, fire-inferior-crossing-event, get-graphical-root, get-gui-path, get-origin-in-graphical-ancestor, get-origin-in-root, get-pagination-state, get-top-left-in-ancestor, get-visible-bounds-into, on-drag-enter, on-inspection, on-pointer-enter, option-changed, paint-with-decorations, replace-with, request-draw, request-draw-rect, request-pointer-trace, search-next, search-prev, set-layout, start-pagination, xy-offset-to
メソッド 継承 BasicEventTarget: enqueue-event
メソッド 継承 Object: object-describe, object-describe-for-debugging, object-serialize



コンストラクタ詳細
default (コンストラクタ)
public {RecordGridCell.default}

新しい RecordGridCell を初期化します。




プロパティ詳細
can-update? (アクセサ)
アクセサ public RecordGridCell.can-update?:bool

このセルのデータは更新可能ですか?

説明

このゲッターは複数のプロパティをチェックします。これらのプロパティは、このセルの内容が更新できる場合、true に設定されている必要があります。編集可能なセルとしてユーザーに表示するか決定するため、および、セル自体が更新を行うか決定するために確認する必要があります。
セルが現在、RecordFieldRecordSet に関連付けられ、両方が modifiable? である場合、また、セルが RecordGridCell.editable? である場合、基本実装は、trueを返します。


cells-take-focus? (ローカル オプション)
public RecordGridCell.cells-take-focus?:bool

RecordGridCell がグリッド フォーカスの取得を許可されているかどうかを示します。

説明

このオプションが false の場合、セルはグリッド フォーカスを持つことができないので、RecordGridUI 内の操作は、選択 (可能な場合) とスクロールに制限される場合があります。


column (アクセサ)
アクセサ public RecordGridCell.column:#RecordGridColumn
セッター public RecordGridCell.column:#RecordGridColumn

このセルが関連付けられている RecordGridColumn

プログラミング注意事項

RecordGridUI のみで設定してください。

オーバーライド

通常はオーバーライドしません。 オーバーライドする場合は、セルのオプション親が適切に調整されるようこのメソッドのスーパー実装を必ず呼び出してください。


current? (アクセサ)
アクセサ public RecordGridCell.current?:bool

このセルが現行レコードに含まれているかどうか調べます。

オーバーライド

通常はオーバーライドされません。


field (アクセサ)
アクセサ public RecordGridCell.field:#RecordField

このセルのデータが格納されているフィールド。

オーバーライド

通常はオーバーライドされません。


format-spec (ローカル オプション)
public RecordGridCell.format-spec:any

この列のデータをどのように String にフォーマットするか指定します。

説明

この値は、次のいずれかでなければなりません。
  • format マクロとともに使用するのが適切な String
  • タイプ {proc {data:any}:String} のプロシージャ、ここで data は、セルに関連付けられたデータを表します。RecordGridCell.get-data による定義と同様です。
  • タイプ{proc {data:any, record:Record}:String} のプロシージャ、ここで data はこのセルに関連付けられたデータを表します。RecordGridCell.get-data と同様です。また、record は、現在セルで表示されているソースの Record を表します。record パラメータは、ソースの Record とその関連付けられた RecordSet の両方へのアクセスを提供する点に注意してください。そのため、コンテキストに応じたフォーマットを行う際、非常に有用です。
  • null (既定値)。
null の場合、代わりに、RecordGridCell.format がフォーマットに使用されます。
RecordGridCell.get-formatted-data も参照してください。


grid (アクセサ)
アクセサ public RecordGridCell.grid:#RecordGrid

このセルが関連付けられている RecordGrid

オーバーライド

通常はオーバーライドされません。


halign (ローカル オプション)
public RecordGridCell.halign:any

RecordGridCell 内の内容の水平方向の配置。

説明

使用可能な値の詳細は Frame.halign を参照してください。


halign-spec (アクセサ)
アクセサ protected RecordGridCell.halign-spec:any

レイアウトで使用される halign 値を提供します。

説明

null の場合は原点に合わせて整列されます。それ以外の場合、この値は 0 (左揃え) ~ 1 (右揃え) の数になります。

オーバーライド

既定の実装は、原点に合わせた整列を指定する null を返します。異なる値を指定 (または計算) するように、派生クラスでオーバーライドできます。


has-grid-focus? (アクセサ)
アクセサ public RecordGridCell.has-grid-focus?:bool

このセルがグリッド フォーカスを持っているかどうか調べます。

オーバーライド

通常はオーバーライドされません。


mnemonic (ローカル オプション)
public RecordGridCell.mnemonic:char

この ActiveTraversor にショートカット キーを割り当てます。

説明

ニーモニック アクティブ キー (現在は Alt にハードコード化) とこのオプションの値を持つキーを押したときに、ActiveTraversor.handle-mnemonic が呼び出されます。同じ ActiveTraversalContainer の複数のコントロールに同じニーモニックが割り当てられている場合、トラバース順序の最初のコントロールですべてのコントロールがオーバーライドされます。

ニーモニックが同じグラフィック階層にあれば、現在のダイアログにニーモニック コントロールが含まれていない場合でもニーモニック アクティブ化は有効です。複数のダイアログで同じニーモニックが定義されている場合、優先順位は次のとおりです。

アプレットの前にメニューがキー イベントを取得するため、メニューで使用されるニーモニック文字は ActiveTraversor のニーモニックとして機能しません。


option-parent (アクセサ)
アクセサ public RecordGridCell.option-parent:#GraphicOptions

オブジェクトのオプションの親を返します。

戻り値

このオブジェクトのオプションの親である OptionListInterface。ただし、このオブジェクトがオプションの親を持たない場合は、null になります。

オーバーライド

既定の実装 OptionListInterface.option-parent は常に null を返します。サブクラスでは、通常は super.option-parent は呼び出さずに、適切な値を返すコードでこのメソッドをオーバーライドします。


pending-value (アクセサ)
アクセサ public RecordGridCell.pending-value:any

編集中の、保留中で終了していないセルの値です。

説明

current editor がない場合、null を返します。例えば、エディタをサポートしないセルは常に null を返します。
一時的な状態がエディタにないセルの場合には、保留の値は存在しません。
導入: バージョン 6.0


pending-value? (アクセサ)
アクセサ public RecordGridCell.pending-value?:bool

セルが編集され、RecordSet で保持している値とは異なる保留中の値がある場合は、True です。

説明

エディタに一時的な状態がない、つまりレコード データを直ちに更新するセルでは、pending-value? が true になることはありません。
導入: バージョン 6.0


record (アクセサ)
アクセサ public RecordGridCell.record:#Record

このセルが表示するレコード。

オーバーライド

通常はオーバーライドされません。


record-index (アクセサ)
アクセサ public RecordGridCell.record-index:int
セッター public RecordGridCell.record-index:int

このセルが関連付けられているレコードのインデックス、または -1 (現在このセルがレコードに関連付けられていない場合)。

プログラミング注意事項

RecordGridUI のみで設定してください。

オーバーライド

通常はオーバーライドされません。


selected? (アクセサ)
アクセサ public RecordGridCell.selected?:bool

このセルが現在選択されているかどうか調べます。

オーバーライド

通常はオーバーライドされません。


style-element (アクセサ)
アクセサ public RecordGridCell.style-element:String

スタイリングの目的のための、この Visual の "要素" や "型" です。

説明

この実装によって Visual._style-elementの値が返されますが、通常は定数を返すためにオーバーライドされます。

オーバーライド

Visual のサブクラスのスタイルが他のオブジェクトと異なる場合、このゲッターは適切な文字列を返すようにオーバーライドされる必要があります。 慣例では,この文字列はクラス名または、オブジェクトを生成するマークアップの名前です。
オーバーライドでは、空の文字列でないかぎり、self._style-elementを返さなければなりません。
導入: バージョン 6.0


tab-index (ローカル オプション)
public RecordGridCell.tab-index:int

ActiveTraversor のタブインデックス。

説明

このオプションを使って、共通 ActiveTraversalContainer 内にある ActiveTraversor 間のタブ トラバースの順番を決めることができます。ゼロ (既定値) 以上の整数値に設定できます。
トラバーサの tab-index の昇順にトラバースは行われますが、tab-index がゼロのトラバーサは最後になります。同じ tab-index を持つトラバーサの場合、グラフィック階層で定義された順序に従って順番が決まります。
このオプションが役に立つのは、グラフィック階層で定義されている順序が、ユーザーに従ってもらいたい論理的な流れをうまく表していない場合です。これは、例えば Canvas がレイアウトに使われている場合、アプリケーションで特定コントロールを強調したい場合などに生じます。

この例を実行する際は、[実行]ボタンをクリックして別のウィンドウで実行してください。(このページに埋め込まれたまま実行した場合は、タブキーはページ全体で遷移し、tab-index プロパティの効果が明確になりません。) 最初にタブキーを押した際に、どのように一番小さい数の tab-index を持つコントロールがアクティブになるか確認してください。その後、タブキーを押すことでコントロールの tab-index の順に遷移します。

例: tab-index オプションを使ってトラバーサルの順番を制御
{Dialog
    {spaced-vbox
        {TextArea
            tab-index = 3,
            value = "License Agreement Text Here"
        },
        {CheckButton
            tab-index = 1,
            label = "I have read the licence agreement."
        }, 
        {CommandButton 
            tab-index = 2,
            label = "Install Now"
        }
    }
}


test-value (アクセサ)
アクセサ public RecordGridCell.test-value:#String

test-recordに適当なセルのString型の値、またはnullを返します。

導入: バージョン 7.0


valign (ローカル オプション)
public RecordGridCell.valign:any

RecordGridCell の内容の垂直方向の配置を指定します。

説明

使用可能な値の詳細は Frame.valign を参照してください、。


valign-spec (アクセサ)
アクセサ protected RecordGridCell.valign-spec:any

レイアウト処理で使用される valign 値を提供します。

説明

null の場合は原点に合わせて整列されます。それ以外の場合、この値は 0 (上揃え) ~ 1 (下揃え) の数になります。

オーバーライド

既定の実装は、原点に合わせた整列を指定する null を返します。異なる値を指定 (または計算) するように、派生クラスでオーバーライドできます。





メソッド詳細
become-active (メソッド)
public {RecordGridCell.become-active forward?:bool = true}:bool

アクティブ化に対して応答します。

説明

この ActiveTraversor がアクティブになったときに、ActiveTraversalContainer によって呼び出されます。また ActiveTraversor のアクティブ化リクエストとしてユーザーが呼び出す場合もあります。
forward?: トラバースが前方に移動する場合 (Tab キー) は true、後方に移動する場合 (Shift + Tab キー) は false です。一般にユーザー コードでは既定値 true を使用します。

戻り値

このオブジェクトがアクティブになる予定であれば true、それ以外の場合は false です。


commit-pending-value (メソッド)
public {RecordGridCell.commit-pending-value}:void

保留中の値をセル上で強制的にコミットします。

導入: バージョン 6.0


fire-event-at-container (メソッド)
protected {RecordGridCell.fire-event-at-container e:GuiEvent}:void

この ActiveTraversor が格納されている ActiveTraversalContainer にイベントを送信します。

説明

タブやニーモニックなどのイベントを StandardActiveTraversalContainer に送信する場合に、KeyPress ハンドラによって内部的に使用されます。
e: ActiveTraversalContainer に送信する GuiEvent

オーバーライド

この ActiveTraversor を含み、そこでイベントを発生させる ActiveTraversalContainer を検索するプロシージャでオーバーライドします。


flush-pending-value (メソッド)
public {RecordGridCell.flush-pending-value}:void

イベントを起動することなしに保留中の値を削除します。

導入: バージョン 6.0


format (メソッド)
public {RecordGridCell.format data:any}:String

このセルでの表示に適した String にデータを変換します。

プログラミング注意事項

このメソッドは RecordGridCell.get-formatted-data が内部で呼び出します。
data: any。フォーマットされるデータ値。

戻り値

セルが表示する String

説明

このメソッドの代わりに指定して使える RecordGridCell.format-spec も参照してください。

オーバーライド

このメソッドの既定の実装では、null 値を空の文字列に変換し、その他のすべての値については、このセルのフィールドに関連付けられたドメインの Domain.format メソッドが使われます。
サブクラスで異なるフォーマット方法が必要な場合は、このメソッドをオーバーライドします。


get-data (メソッド)
public {RecordGridCell.get-data}:(data:any, valid?:bool)

このセルの現在のデータを取得します。

戻り値

オーバーライド

このメソッドの実装では、通常、基礎となるデータにアクセスするため、スーパー実装を参照する必要があります。


get-formatted-data (メソッド)
public {RecordGridCell.get-formatted-data}:(data:String, valid?:bool)

このセルの現在のデータを String としてフォーマットして取得します。

説明

このメソッドの既定実装は、RecordGridCell.get-data の結果に対してフォーマットを適用します。non-null の場合、使用されるフォーマットは RecordGridCell.format-spec です。そうでない場合、メソッドは RecordGridCell.format になります。

戻り値

オーバーライド

通常はオーバーライドしません。代わりに RecordGridCell.format をオーバーライドします。


get-indices (メソッド)
public {RecordGridCell.get-indices}:(int, int)

RecordGrid内でのこのセルのレコードと列のインデックスを取得します。

導入: バージョン 7.0


get-parsed-value (メソッド)
public {RecordGridCell.get-parsed-value val:String}:any

このセルに入力された String 値を解析します。

説明

このメソッドは、RecordGridCell.parse-spec が非 null の場合にはそれで定義された解析を使い、その他の場合は RecordGridCell.parse を使います。

オーバーライド

通常はオーバーライドしません。代わりに RecordGridCell.parse をオーバーライドします。

戻り値

any 型の解析値か、解析に失敗したことを示す ValidationException


handle-mnemonic (メソッド)
public {RecordGridCell.handle-mnemonic}:void

ActiveTraversor.mnemonic を通した呼び出しに反応します。

説明

この ActiveTraversor のニーモニックの上でニーモニック アクティブ キー (現在は Alt にハードコード) を押したときに、これが StandardActiveTraversalContainer.on-key-press によって呼び出されます。

オーバーライド

ニーモニックでキーが押されたときに、キー フォーカスの要求や ActiveTraversor への Action イベントの送信などの適切な動作を行うようにオーバーライドします。


note-grid-focus-in (メソッド)
public {RecordGridCell.note-grid-focus-in}:void

グリッド フォーカスを受け取ったことをこのオブジェクトに通知するために呼び出されます。

オーバーライド

通常の応答には、フォーカスを示すアフォーダンスの変更、「editor」 サブグラフィックスの挿入、または、self あるいは該当するサブグラフィックスに対するシステム フォーカスの要求を含めることができます。一般的なセルには、一般的な表示ための軽量表現と、セルがグリッド フォーカスを取得した時のみ表示されるよう予約された、より精密な表現とがあります。
実装では必ずこのメソッドのスーパー実装を呼び出してください。


note-grid-focus-out (メソッド)
public {RecordGridCell.note-grid-focus-out}:void

グリッド フォーカスを失ったことをこのオブジェクトに通知するために呼び出されます。

オーバーライド

通常の応答には、フォーカスの消失を示すためのアフォーダンスの変更、「エディタ」サブグラフィックの削除などが含まれる場合があります。軽量表現とより複雑な表現を持つセルは、一般的にグリッド フォーカスを失った時点で軽量表現に戻ります。
実装では必ずこのメソッドのスーパー実装を呼び出してください。


on-key-press (メソッド)
public {RecordGridCell.on-key-press e:KeyPress}:void

KeyPress イベントのスタティック イベント ハンドラ

説明

スタティック イベント ハンドラの一般的な情報については、GuiEventTarget.on-pointer-event を参照してください。


option-lookup-here (メソッド)
public {RecordGridCell.option-lookup-here
key:OptionKey,
local?:bool
}:(item:#OptionItem, local-key?:bool)

オプション検索ステップを実行します。

key: 検索されるオプションの OptionKey
local?: bool で、このオブジェクトがオプション検索の開始場所である場合は true、オプション検索がこのオブジェクトの子孫から開始した場合は false です。

戻り値

返される OptionItem には、該当する key のバインドが含まれます (このオブジェクトで存在する場合)。返される bool は、key がローカル オプション キーの場合は true です。この場合、このオブジェクト以降のオプション検索は行なわれません。

プログラミング注意事項

主に内部使用を目的としています。

オーバーライド

クラスが OptionKey とバインディング オプションのマッピングに非標準のアルゴリズムを実装する場合は、オーバーライドされます。


parse (メソッド)
public {RecordGridCell.parse val:String}:any

String の入力値を record-source への記入に適した値に変換します。

プログラミング注意事項

このメソッドは RecordGridCell.get-parsed-value が内部で呼び出します。
val: String。解析する値。

戻り値

any 型の解析値か、解析に失敗したことを示す ValidationException

説明

このメソッドの代わりに指定して使える RecordGridCell.parse-spec も参照してください。

オーバーライド

既定の実装は、String.trim-clone による空白文字のトリミングから始まります。
トリミングの後、このメソッドはこのセルに関連付けられているフィールドのドメインの Domain.parse を呼び出します。ただし、トリミング後の入力値が空で、フィールドの RecordField.nullable? が true の場合には特別な処理が行われます。この場合 :
  • 現在の値が null の場合、入力値は null に解析されます。
  • 現在のフィールド値が null でない場合、Domain.parse が行われます。これが失敗した場合、入力値は null に解析されます。
サブクラスで異なる解析方法が必要な場合は、このメソッドをオーバーライドします。


propagate-option-change (メソッド)
protected {RecordGridCell.propagate-option-change
item:OptionItem,
removed?:bool
}:void

このオブジェクト、および該当する場合はそのオプションの子孫にオプションが変更されたことを通知します。

item: 追加または削除されたバインディング オプション。
removed?: item が削除された場合は true、それ以外の場合は false。

注意事項

このオブジェクトのオプション変更通知メソッドが呼び出され、さらにオプションが非ローカル オプションの場合は、 OptionListInterface.notify-option-children を呼び出して、この通知をこのオブジェクトのオプションの子に伝えます。

プログラミング注意事項

option-list パッケージでの内部使用を目的としています。

オーバーライド

通常はオーバーライドされません。


refresh-appearance (メソッド)
public {RecordGridCell.refresh-appearance}:void

Recordの更新が無い場合に関連付けられたRecordのデータで使ってこのセルのグラフィック表示を同期させます。

説明

いくつかのケースではビジュアルの状態に主要な変更がない場合、セルが利益を得る可能性があります。これらのケースでは、refresh-dataよりもより低いコストで更新できるこのメソッドが呼ばれる可能性があります。
get-dataにより返される値はrefresh-dataが最後にコールされた時の値とこのメソッドがコールされた時との間で違いはありません。

オーバーライド

デフォルトではこのメソッドは単純にrefresh-dataを呼出すのみとなります。refresh-dataをより軽量化して提供するためにこのメソッドをオーバーライドして下さい。
導入: バージョン 7.0


refresh-data (メソッド)
public {RecordGridCell.refresh-data}:void

このセルのグラフィカル表示を、関連付けられた Record のデータと同期させます。

説明

このメソッドでは、このセルに関連付けられた RecordRecordField に関連付けられた基本データが実際に変更されることはありません。代わりにこのメソッドは、前記データを表示しているセル内の、どのようなグラフィックまたはエディタも同期されるようにします。
ビジュアル表示で現在の基本データが常に反映されるようにするには、Record が変更されていない場合にも、このメソッドを頻繁に呼び出すことができます。

注意事項

表示グラフィックの代わりに基本データを変更するには、RecordGridCell.update-data メソッドを使用します。

オーバーライド

データを実際に表示しているグラフィック オブジェクトをリフレッシュするには、このメソッドをオーバーライドします。 実装では必ずこのメソッドのスーパー実装を呼び出してください。


test-run (メソッド)
public {RecordGridCell.test-run action:String, args:FastArray}:any

オブジェクトに対してビジュアル テスト アクションを実行します。

action: 実行するアクションの名前。
args: ビジュアル テスト アクションの引数。ビジュアル テスト インフラストラクチャは、引数の数と型をチェックしますが、値はチェックしません。実装では、すべての有効な値を処理し、不正な値に対しては例外またはエラーをスローするようにしてください。

説明

そのクラスによってサポートされたテスト動作のリストについてクラスのドキュメントを御読み下さい。
既定の実装では、RawClick などの一般的な操作を処理し、action が既知のアクションに一致しない場合にはリフレクションを使用してメソッドを呼び出します。

注意事項

QuickTest Property™ のビジュアル テスト環境では、任意の実行時メソッドを直接呼び出せません。代わりに CallMethod アクションを使用して、最初の引数としてメソッド名を渡してください。ビジュアル テスト インフラストラクチャは、CallMethod アクションを実際のアクションに変換してから test-run を呼び出します。

注意事項

参照:canonical-test-value

オーバーライド

新しいテスト アクションを追加するには、action と新しいアクションの名前を照合します。一致する場合は、引数を処理してアクションを実行し、適切なタイプの値 (戻り値がない場合は null) を返します。action が新しいテスト アクションに一致しない場合は、super.test-run を呼び出します。


update-data (メソッド)
public {RecordGridCell.update-data val:any}:#DataException

このセルに関連付けられた Record を更新します。

val: 関連レコードに入力される新しい値。

プログラミング注意事項

RecordGridCell の実装で、基になる record-source にデータを押し戻すために呼び出されます。

説明

RecordGridCell.parse-specnon-null のプロシージャで、valString 型の場合、更新の前に parse-specval に適用されます。この parse-spec は、許容できない入力値に対しては ValidationException を返すことができ、したがってアプリケーションで列特有の追加検証を行うのにこれを使用することができます。
更新に作成した場合、このメソッドは復帰前に RecordGridCell.refresh-data を呼び出します。この方法でデータを「往復旅行」させることにより、セルは新規データを適切なフォーマットで表示することができます。更新に失敗した場合、セルは変更されず、エラーの解決方法は呼び出し側で決定されることになります。

戻り値

更新に成功した場合は null、その他の場合は発生したエラーを表す DataException になります。