(クラス)
hidden abstract sealed LengthBreadthBox
{inherits
SequenceBox}
この項目はサポートされていません。内部使用限定となっています。
プロパティ 継承 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?, option-parent, outside-margin, pagination-state, parent, selection-context, shadow-color, shadow-spec, visible?, vorigin, width プロパティ 継承 Visual:
_style-element, clonable-class?, cursor, data-source, dragee, font-size, input-method-enabled?, input-method-keyboard-mode, name, options, options-present-here, style-class, style-element, style-manager, style-options, test-description, test-name, test-parent?, test-type-name, test-visible?, tooltip, user-data
| public | {LengthBreadthBox.attempt-revalidate-layout}:bool |
| protected | {LengthBreadthBox.check-property}:void |
| public | {LengthBreadthBox.constrain-height}:Dimension |
| public | {LengthBreadthBox.constrain-width}:Dimension |
| public | {LengthBreadthBox.get-height-preference}:Dimension |
| public | {LengthBreadthBox.get-width-preference}:Dimension |
| public | {LengthBreadthBox.propagate-request-layout epoch:int}:void |
| protected abstract | {LengthBreadthBox.recompute-first-elastic}:OriginElastic |
| protected abstract | {LengthBreadthBox.recompute-our-layout}:void |
| protected abstract | {LengthBreadthBox.recompute-second-elastic}:OriginElastic |
| protected | {LengthBreadthBox.revalidate-second-elastic}:void |
メソッド 継承 SequenceBox:
add, add-at-index, add-at-index-with-layout, after-reposition, before-reposition, clear, compare-children, draw, end-pagination, find, graphical-child-visible-at, internal-remove-child, note-attached, note-detaching, notify-option-children, pick-child, register-options, request-draw, request-pointer-trace, swap-children, validate-layout-sequence-numbers メソッド 継承 Graphic:
create-pagination-state, detach, draw-range-as-selected, draw-shadow, find-ancestor, find-graphical-ancestor, fire-inferior-crossing-event, get-graphical-root, 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, paginate, paint-with-decorations, replace-with, request-draw-rect, search-next, search-prev, set-layout, start-pagination, xy-offset-to メソッド 継承 Visual:
add-from-init-args, add-option, add-style-option, animate, change-cursor, clonable-appearance?, clone-appearance, clone-appearance-helper, get-focus-manager, get-layout-context, get-test-parent, get-test-property, get-text, 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, release-key-focus, remove-option, remove-style-option, request-key-focus, scroll-to-include, test-record, test-run, transform-from-display-coordinates, transform-from-graphical-root-coordinates, transform-to-display-coordinates, transform-to-graphical-root-coordinates メソッド 継承 GuiEventTarget:
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-grab-release, on-gui-event, on-input-method-event, on-key-event, on-key-press, 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 メソッド 継承 OptionListInterface:
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-lookup-here, option-propagate-notify, option-set?, propagate-option-change, remove-styles, set-option-by-name, set-style-option-by-name, unset-option-by-name, unset-style-option-by-name
(アクセサ)
この項目はサポートされていません。内部使用限定となっています。
(アクセサ)
この項目はサポートされていません。内部使用限定となっています。
(メソッド)
(メソッド)
| public | {LengthBreadthBox.attempt-revalidate-layout}:bool |
最後のレイアウト ネゴシエーションが完了してから、Graphic のレイアウト設定が変更されたかどうかを判定します。
戻り値
bool。このオブジェクトのレイアウト設定が変更されていない場合は true。値が false の場合、変更の有無にかからわずレイアウト ネゴシエーションの確認が行なわれます。
注意事項
このメソッドは、完全なレイアウト ネゴシエーション、つまり、
Graphic.set-size を呼び出してネゴシエーションを行ったオブジェクトに対してのみ呼び出すことを推奨します。このメソッドが true を返すと、直前の完全なレイアウト ネゴシエーション中に行われた同じ高さおよび幅設定の確認が繰り返された場合に、オブジェクトが、以前返された答えと全く同じ答え (
OriginElastic.equal? によって計算された答え) を返すことになります。
このメソッドからオブジェクトがすぐに true を返す最も一般的なケースは、直前のレイアウト ネゴシエーションの結果を無効にするようなことがオブジェクトで発生しなかった場合です。また、このメソッドが true を返すこれ以外のケースは、
Box であるオブジェクトの場合で、
Box の子すべてに対して
Graphic.attempt-revalidate-layout を呼び出し、これらの呼び出しすべてで true が返されたときに true を返します(
Box の設定が
Box の子の設定と変更されたかどうかが不明なその他のパラメータにのみ依存する場合、この処理が有効です)。
このメソッドが true を返し、このオブジェクトの親にその境界を変更する理由がない場合、親がこのオブジェクトに対してさらにレイアウト ネゴシエーションを呼び出す可能性はありません。したがって、このオブジェクトがそのレイアウトの有効性の判定を記録している場合、このメソッドから true を返す前にオブジェクトはそれ自体を layout-valid 状態に設定する必要があります。
プログラミング注意事項
オーバーライド
(メソッド)
| protected | {LengthBreadthBox.check-property}:void |
この項目はサポートされていません。内部使用限定となっています。
(メソッド)
| public | {LengthBreadthBox.constrain-height}:Dimension |
指定した高さの制約を受けた場合にこの Graphic の幅設定を返します。
ascent, descent: 高さの制約。この
Graphic の起点からの相対的な上昇および下降の距離で表されます。
戻り値
オーバーライド
既定のメソッド
Graphic.constrain-height は、単に
Graphic.get-width-preference を呼び出します。このメソッドは、オブジェクトが幅設定を計算する際に高さの制約を考慮しなくてもいい場合はオーバーライドする必要がありません。
このメソッドをオーバライドするクラスでは必ず
Dimension を返すようにして、これで必要な水平軸に沿ったスペースを
そのオブジェクトの起点との関係を含めて表します。実際には、これはこのメソッドが適切な
OriginElastic または
Dimension を返すことを意味します。
Dimension の場合は、「
次元から OriginElastics への変換」で説明する変換規則に従って、適切な
OriginElastic に変換されます。
重要:このメソッドのオーバーライド実装には、レイアウト ネゴシエーションが確実にグラフィック階層全体に適用されるように、スーパークラス実装の呼び出しを含める必要があります。
(メソッド)
| public | {LengthBreadthBox.constrain-width}:Dimension |
指定した高さの制約を受けた場合にこの Graphic の高さ設定を返します。
lextent, rextent: 幅の制約。起点からの左と右の相対距離で表されます。
戻り値
オーバーライド
既定のメソッド
Graphic.constrain-width は、単に
Graphic.get-height-preference を呼び出します。このメソッドは、オブジェクトが高さ設定を計算する際に幅制約を考慮しなくてもいい場合はオーバーライドする必要がありません。
このメソッドをオーバライドするクラスでは必ず
Dimension を返すようにして、これで必要な垂直軸に沿ったスペースを
そのオブジェクトの起点との関係を含めて表します。実際には、これはこのメソッドが適切な
OriginElastic または
Dimension を返すことを意味します。
Dimension の場合は、「
次元から OriginElastics への変換」で説明する変換規則に従って、適切な
OriginElastic に変換されます。
重要:このメソッドのオーバーライド実装には、レイアウト ネゴシエーションが確実にグラフィック階層全体に適用されるように、スーパークラス実装の呼び出しを含める必要があります。
(メソッド)
| public | {LengthBreadthBox.get-height-preference}:Dimension |
この Graphic の高さ設定を返します。
戻り値
オーバーライド
このメソッドは、
Graphic のサブクラス内で定義する必要があります。
このメソッドをオーバライドするクラスでは必ず
Dimension を返すようにして、これで必要な垂直軸に沿ったスペースを
そのオブジェクトの起点との関係を含めて表します。実際には、これはこのメソッドが適切な
OriginElastic または
Dimension を返すことを意味します。
Dimension の場合は、「
次元から OriginElastics への変換」で説明する変換規則に従って、適切な
OriginElastic に変換されます。
(メソッド)
| public | {LengthBreadthBox.get-width-preference}:Dimension |
この Graphic の幅設定を返します。
戻り値
オーバーライド
このメソッドは、
Graphic のサブクラスで定義する必要があります。
このメソッドをオーバライドするクラスでは必ず
Dimension を返すようにして、これで必要な水平軸に沿ったスペースを
そのオブジェクトの起点との関係を含めて表します。実際には、これはこのメソッドが適切な
OriginElastic または
Dimension を返すことを意味します。
Dimension の場合は、「
次元から OriginElastics への変換」で説明する変換規則に従って、適切な
OriginElastic に変換されます。
(メソッド)
| public | {LengthBreadthBox.propagate-request-layout epoch:int}:void |
Box からそのグラフィカルな親 (存在する場合) に新しいレイアウト ネゴシエーションの要求を伝播します。
epoch: この
レイアウト無効化に関連付けられている Layout Epoch。これは、通常、
get-layout-epoch を使用して得られる現在の Layout Epoch です。
プログラミング注意事項
一般的に、このメソッドは、
Box.request-layout から
Box の親にレイアウトの要求を伝えるために呼び出されるか、
Layout.request-layout から呼び出されます。
Box でこのメソッドを呼び出すことは、
Box のグラフィカルな子孫のいずれかが新しいレイアウト ネゴシエーションを要求していることを示します。この状況は、
Box での
Box.request-layout の呼び出しとは対照的です。この場合は、
Box 自体が新しいレイアウト ネゴシエーションを要求していることを意味します。これらの 2 つの別個のメソッドが提供されるのは、その後のレイアウト ネゴシエーションの初めに
Graphic.attempt-revalidate-layout が呼び出されるときに、異なるアクションを保証するためです。
Box.propagate-request-layout の呼び出しによって、この
Box にレイアウト要求が通知された場合は、
Box 自体では何も変更されていないので、
Box の子で
Graphic.attempt-revalidate-layout メソッドが呼び出されたときにすべての子の答えが true であれば、
Box の
Graphic.attempt-revalidate-layout に対する答えは常に true になります。しかし、
Box.request-layout が呼び出された場合は、
Box は、そのすべての子のレイアウトについて有効性を再検証できたとしても、それ自体のレイアウトが有効とは認められない場合があります。これは、グラフィカルな子の追加や削除、またはそれらの子の空白や配列での変更など、
Box 自体の構造で変更が加えられている可能性があるからです。
オーバーライド
このメソッドは、情報を保持してレイアウト無効化を追跡する
Box サブクラスでオーバーライドできます。このようなオーバーライド メソッドにはすべて
super.propagate-request-layout の呼び出しが必要です。このメソッドは、グラフィック階層のルートになるように設計されている
View などのクラスでもオーバーライドされます。この場合、レイアウト要求を記録し、新しいレイアウト ネゴシエーションに合わせて整列させるコードによってメソッドがオーバーライドされます。
(メソッド)
| protected abstract | {LengthBreadthBox.recompute-first-elastic}:OriginElastic |
レイアウト ネゴシエーションでの最初のエラスティックを計算します。
説明
現在のレイアウト ネゴシエーションの最初の次元に従って
self のサイズ設定を計算します。したがって、この次元が幅の場合、メソッドは
self の幅設定を表す
OriginElastic を返し、高さを先に処理するレイアウト ネゴシエーションが進行中の場合は、
self の高さ設定を表す
OriginElastic を代わりに返します。
プログラミング注意事項
キャッシュされたサイズ設定が使用可能でない (または有効でない) のでサイズ設定を計算する必要がある場合、このメソッドは、self の内部メソッドから呼び出されます。
オーバーライド
LengthBreadthBox はこれを抽象メソッドとして宣言します。具象サブクラスでは、このメソッドが必要な
OriginElastic 値を計算するように、このメソッドをオーバーライドする必要があります。
(メソッド)
| protected abstract | {LengthBreadthBox.recompute-our-layout}:void |
レイアウト ネゴシエーションを終了します。
before, after: このメソッドの結果の計算に使用されるサイズ制約。
説明
現在のレイアウト ネゴシエーションの最初の次元でない次元に従って
self のサイズを設定します。したがって、最初の次元が幅の場合、このメソッドはこのオブジェクトの高さの特性を示す上昇値および下降値として、それぞれ
before および
after を使用します。逆に、高さを先に処理するレイアウト ネゴシエーションでは、このオブジェクトの幅の特性を示す左右の範囲としてそれぞれ
before および
after を使用します。最終的にこのメソッドを呼び出すと、このオブジェクトのそれぞれの子で呼び出される
Graphic.set-size になります。
プログラミング注意事項
このオブジェクトのそれぞれの子の
set-size メソッドを呼び出すときには、このメソッドは
self の内部のメソッドから呼び出されます。
オーバーライド
LengthBreadthBox はこれを抽象メソッドとして宣言します。具象サブクラスでは、このメソッドが必要な操作を実行するように、このメソッドをオーバーライドする必要があります。
(メソッド)
| protected abstract | {LengthBreadthBox.recompute-second-elastic}:OriginElastic |
レイアウト ネゴシエーションでの 2 番目のエラスティックを計算します。
before, after: このメソッドの結果の計算に使用されるサイズ制約。
説明
現在のレイアウト ネゴシエーションの最初の次元でない次元に従って
self のサイズ設定を計算します。したがって、最初の次元が幅の場合、このメソッドは
self の高さ設定を表す
OriginElastic を返し、高さを先に処理するレイアウト ネゴシエーションが進行中の場合、
self の幅設定を表す
OriginElastic を代わりに返します。
before および
after は、レイアウト ネゴシエーションの最初の次元に従った適切なサイズ制約を表します。こうした値は、
Graphic.constrain-width の呼び出しにおいて
lextent と
rextent の役割を果たします。あるいは、高さを先に処理するネゴシエーションでは、
Graphic.constrain-height の呼び出しにおいて
ascent と
descent の役割を果たします。
プログラミング注意事項
キャッシュされたサイズ設定が使用可能でない (または有効でない) のでサイズ設定を計算する必要がある場合、このメソッドは、self の内部メソッドから呼び出されます。
オーバーライド
LengthBreadthBox はこれを抽象メソッドとして宣言します。具象サブクラスでは、このメソッドが必要な
OriginElastic 値を計算するように、このメソッドをオーバーライドする必要があります。
(メソッド)
| protected | {LengthBreadthBox.revalidate-second-elastic}:void |
この項目はサポートされていません。内部使用限定となっています。
(メソッド)
このオブジェクトにレイアウト幅と高さを代入します。
説明
このオブジェクトで set-size を呼び出すと、オブジェクトのレイアウト サイズを代入し、オブジェクトのレイアウト ネゴシエーションを完了します。グラフィック階層のすべてのオブジェクトにレイアウト サイズが代入された後で階層のレイアウト ネゴシエーションが完了します。
bounds: このオブジェクトの境界ボックスの左右および上下の範囲をオブジェクトの起点から相対的に示す
GRect。
プログラミング注意事項
このメソッドは、オブジェクトのグラフィカルな親によって呼び出されます。
オーバーライド