BaseToggleButtonGraphic (クラス)
public abstract sealed BaseToggleButtonGraphic {inherits BaseFrame}
インポート元: CURL.GUI.STANDARD. package 内で定義されています CURL.GUI.CONTROL-UI-STANDARD.
この項目はサポートされていません。内部使用限定となっています。

CheckButton と RadioButton にそれぞれ使用される四角形と円形のグラフィックのベースクラス。


プロパティ
color:ビジュアル オブジェクトには必ず color オプションがあります。このオプションは、継承されたものか、あるいはオブジェクトに直接設定されたものです。GUI Toolkit では、このオプションを使って Rule の色などの一般に周囲のテキストと同じ色に設定されるテキストおよび機能の色を調整します。

ビジュアル オブジェクトによっては、color プロパティを直接使用しないものがあります。たとえば、VBox は色プロパティを使用しません。それでもやはり、内部にあるすべてのアイテムが既定で同じ色を持つように、VBoxの色を設定すると便利です (下の例を参照)。
非ローカル オプション public BaseToggleButtonGraphic.color:FillPattern
control-color:Control の ボタン形式のオブジェクトのメイン カラー。
非ローカル オプション public BaseToggleButtonGraphic.control-color:FillPattern
control-content-background:このオプションは、コントロール内容が背景を持つ場合にその色を制御します。
非ローカル オプション public BaseToggleButtonGraphic.control-content-background:Background
disabled-color:無効なオブジェクトの描画に使用される色。
非ローカル オプション public BaseToggleButtonGraphic.disabled-color:FillPattern
enabled?:Visual が有効であるかどうかを指定します。
非ローカル オプション public BaseToggleButtonGraphic.enabled?:bool
プロパティ 継承 BaseFrame: child, clonable-class?, completely-clonable-children?, graphical-children, halign-spec, hstretch?-spec, ordered-children, reverse-ordered-children, valign-spec, vstretch?-spec, width-first?
プロパティ 継承 GetBoundsBox: layout-locally-valid?, layout-valid?
プロパティ 継承 Box: clip-child-shadows?
プロパティ 継承 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, graphic-selectable, height, horigin, is-paginating?, layout, margin, opaque-to-events?, option-parent, outside-margin, pagination-state, parent, possibly-displayed?, selection-context, shadow-color, shadow-spec, visible?, visual-parent, vorigin, width
プロパティ 継承 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-element, style-manager, style-options, test-child?, test-description, test-name, test-parent?, test-type-name, test-visible?, tooltip, user-data
プロパティ 継承 DataBindingTarget: data-binding-context, data-bindings
プロパティ 継承 EventTarget: event-handlers
プロパティ 継承 OptionListInterface: option-register-proc, options-present-here, registered-option-keys

メソッド
after-reposition:Graphic が移動またはサイズ変更されたことを、Graphic に通知します。
public {BaseToggleButtonGraphic.after-reposition
layout-context:LayoutContext
}:void
before-reposition:Graphic が移動またはサイズ変更されることを、Graphic に対して通知します。
public {BaseToggleButtonGraphic.before-reposition
layout-context:LayoutContext
}:void
constrain-height:指定した高さの制約を受けた場合にこの Graphic の幅設定を返します。
public {BaseToggleButtonGraphic.constrain-height
lc:LayoutContext,
ascent:Distance,
descent:Distance
}:Dimension
constrain-width:指定した高さの制約を受けた場合にこの Graphic の高さ設定を返します。
public {BaseToggleButtonGraphic.constrain-width
lc:LayoutContext,
lextent:Distance,
rextent:Distance
}:Dimension
contains-point?:指定されたポイントで発生するイベントが、ターゲット ボックスと、そのいずれかのグラフィカルな子のどちらに関するものかを判断します。
public {BaseToggleButtonGraphic.contains-point?}:bool
draw:このオブジェクトの可視表現を描画します。
public {BaseToggleButtonGraphic.draw renderer2d:Renderer2d}:void
get-height-preference:この Graphic の高さ設定を返します。
public {BaseToggleButtonGraphic.get-height-preference}:Dimension
get-width-preference:この Graphic の幅設定を返します。
public {BaseToggleButtonGraphic.get-width-preference}:Dimension
request-draw:描画する Graphic に属するピクセルを確認します。
public {BaseToggleButtonGraphic.request-draw
layout-context:LayoutContext = {self.get-layout-context}
}:void
メソッド 継承 BaseFrame: add-internal, allocate-layout-object, attempt-revalidate-layout, clone-appearance-helper, compute-child-bounds, compute-parent-elastic, end-pagination, get-text, install-child-bounds, internal-remove-child, note-attached, note-detaching, notify-option-children, paginate, pick-child, propagate-request-layout, register-options, set-size
メソッド 継承 BasicBox: find-graphic-at, handle-crossing, on-pointer-envelope-event, pointer-enter-occurred, pointer-leave-occurred
メソッド 継承 GetBoundsBox: get-bounds, get-elastic-bounds-into, get-nonparent-bounds-into, request-layout, validate-layout
メソッド 継承 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
メソッド 継承 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-rect, request-pointer-trace, search-next, search-prev, set-layout, start-pagination, xy-offset-to
メソッド 継承 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, 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
メソッド 継承 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-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
メソッド 継承 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
メソッド 継承 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-lookup-here, option-propagate-notify, option-set?, propagate-option-change, 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
メソッド 継承 BasicEventTarget: enqueue-event
メソッド 継承 InitRestArgParser: process-rest-args
メソッド 継承 Object: object-describe, object-describe-for-debugging, object-serialize




プロパティ詳細
color (非ローカル オプション)
public BaseToggleButtonGraphic.color:FillPattern

ビジュアル オブジェクトには必ず color オプションがあります。このオプションは、継承されたものか、あるいはオブジェクトに直接設定されたものです。GUI Toolkit では、このオプションを使って Rule の色などの一般に周囲のテキストと同じ色に設定されるテキストおよび機能の色を調整します。

ビジュアル オブジェクトによっては、color プロパティを直接使用しないものがあります。たとえば、VBox は色プロパティを使用しません。それでもやはり、内部にあるすべてのアイテムが既定で同じ色を持つように、VBoxの色を設定すると便利です (下の例を参照)。

説明

各種オブジェクトではこのオプションを次のように使用しています。
color は非ローカルオプションなので、これを適用するオブジェクトを含む任意のグラフィカル オブジェクトに設定できます。
このオプションは、任意の FillPattern に設定できます。FillPattern の指定方法の詳細については、「塗りつぶしパターンとテクスチャ」の章を参照してください。

テキスト、ルール、形状を含むオブジェクトにを設定した結果を次に示します。


{VBox
    background="silver",
    color="green",
    {text The default color in this VBox is {bold green}.},
    {Rule height=1pt},
    {text The thick Rule below is {bold yellow}.},
    {Rule color="yellow", height=3pt},
    {text color = "blue", Next are two ellipse's, with and 
        without a color setting
    },
    {HBox spacing=6pt,
        {EllipticalArcGraphic
            width=1in, height=0.5in,
            color = "aqua"
        },
        {EllipticalArcGraphic
            width=1in, height=0.5in
        }
    }
}


control-color (非ローカル オプション)
public BaseToggleButtonGraphic.control-color:FillPattern

Control の ボタン形式のオブジェクトのメイン カラー。

説明

これは効果がありません。ただし、ノンローカルオプション ControlFrame.control-appearance-changeable? が true で、標準のルック アンド フィールが使用されている場合は別です。バージョン7.0の既定であるスキンが適用可能なルック アンド フィールでは、コントロールの色は、スキンによって決定されます。
7.0 以上のアプレットでは、標準のルック アンド フィールは明示的に指定する必要があります。install-standard-look-and-feel を呼び出すことによって、アプレット全体に StandardLookAndFeel を適用することが出来ます。また、以下のサンプルに示されるように、 install-style-sheet-on-Graphic プロシージャを使うことも出来ます。標準のルック アンド フィールは、6.0 以前のアプレットでは既定です。ただし、Macintosh プラットフォームは除きます。


{def samples = 
    {HBox valign="bottom", spacing = 4pt,
        control-appearance-changeable? = true, 
        control-color = "cornflowerblue",
        {CommandButton label = "Sample Button"},
        {CheckButton label = "Sample"},
        {Scrollbar width = .8in, direction = "horizontal"},
        {ComboBox width = 1.2in, prompt = "Choose One", 
            "First", "Second", "Third"
        },
        {TextField width = 1.0in, value = "Sample text"}
    }
}
{install-style-sheet-on-Graphic samples, null,
    look-and-feel = the-standard-look-and-feel
}


control-content-background (非ローカル オプション)
public BaseToggleButtonGraphic.control-content-background:Background

このオプションは、コントロール内容が背景を持つ場合にその色を制御します。


例: control-content-background の指定
{HBox valign="bottom", spacing=4pt,
    control-appearance-changeable?=true, 
    control-content-background="yellow",
    {ComboBox width=1.2in, prompt="Choose One", "First", "Second"},
    {TextField width=1.0in, value="Sample text"}
}


disabled-color (非ローカル オプション)
public BaseToggleButtonGraphic.disabled-color:FillPattern

無効なオブジェクトの描画に使用される色。

説明

このオプションは、無効のオブジェクトの描画に使用される色を指定するために設定されます (つまり、enabled? オプションのオブジェクトは、false)。
特に、無効なテキストの描画や、色やルールなど、テキスト形式のオブジェクトを描画するために使用されます。


enabled? (非ローカル オプション)
public BaseToggleButtonGraphic.enabled?:bool

Visual が有効であるかどうかを指定します。

説明

このオプションが false の場合、オブジェクトやGUI オブジェクトとのユーザー インタラクションは無効になります。
このオプションを true に設定する代わりに、オプションを unset する方が一般的です。これにより、一部の親コンテナの値は、有効な値を判別します。
  • このオプションが false の場合、オプションに応じて、テキストは disabled-color および disabled-text-sunken? で表示されます。


    {paragraph I am enabled}
    {paragraph enabled? = false, I'm not}
    
  • このオプションが false で、Visual がコントロールの場合、コントロールのユーザー インターフェイスは無効になります。前述したように、ラベル上の任意のテキストは、無効状態で表示されます。
    さらに、コントロールに ReactiveLabel があれば、ラベルは既定ラベルの代わりに ReactiveLabel.label-disabled のプロパティを表示します。


    {radio-buttons 
        value = "first",
        {RadioButton radio-value = "first"},
        {RadioButton
            radio-value = "second",
            reactive-label = {ReactiveLabel
                                 label-disabled = "(second)"
                             },
            enabled? = false
        },
        {RadioButton radio-value = "third"}
    }
    





メソッド詳細
after-reposition (メソッド)
public {BaseToggleButtonGraphic.after-reposition
layout-context:LayoutContext
}:void

Graphic が移動またはサイズ変更されたことを、Graphic に通知します。

layout-context: このオブジェクトを含んでいるグラフィック階層のサブツリーに対応する LayoutContext オブジェクト。

プログラミング注意事項

この Graphic を移動またはサイズ変更した操作の前に、Graphic.before-reposition を呼び出した場合、このメソッドはこの操作後に呼び出されます。この操作の前にオブジェクトが見えなかったとしても、操作前に Graphic.before-reposition を呼び出さなかった場合は、この操作後に、Graphic.after-reposition でなく Graphic.request-draw が呼び出されます。

Graphic に対して g.after-reposition g が呼び出されるのは、この操作の前に g.before-reposition を呼び出した場合のみです。ただし、この操作の前に g.before-reposition を呼び出しても、この操作の後に g.after-reposition が呼び出されない場合もあります。このような事態が発生するのは、オブジェクトを移動やサイズ変更がなかったと (g の親などが) 判断した場合、あるいは他のオブジェクトが、操作前と操作後の両方で、g の位置の可視境界全体に対する LayoutContext.request-draw-rect-in-root 操作を 1 回以上呼び出した場合です。

Graphic.before-repositionGraphic.after-reposition はともに、オブジェクトの位置が有効な場合にしか呼び出されません。

オーバーライド

既定の定義 Graphic.after-reposition は、単に Graphic.request-draw を呼び出すだけです。Graphic.request-draw は、Graphic.before-repositionの既定の実装でも使用されていることを前提とした適切な処理方法です。ただし、Graphic.before-reposition をオーバーライドする場合は、Graphic.after-reposition もオーバーライドする必要があります。


before-reposition (メソッド)
public {BaseToggleButtonGraphic.before-reposition
layout-context:LayoutContext
}:void

Graphic が移動またはサイズ変更されることを、Graphic に対して通知します。

layout-context: このオブジェクトを含んでいるグラフィック階層のサブツリーに対応する LayoutContext オブジェクト。

プログラミング注意事項

このメソッドは、レイアウト ネゴシエーションまたはその他の操作で可視オブジェクトを移動またはサイズ変更するときに必ず呼び出します。このメソッドは、オブジェクトが見えない場合でも呼び出すことができます。また、このメソッドを呼び出したとしても、その後オブジェクトを移動またはサイズ変更しなくてもかまいません。

オーバーライド

既定の定義 Graphic.before-reposition は、 単にGraphic.request-draw を呼び出します。これは常に正しい処理です。ただし、高度なオブジェクトでは、このメソッドを次のいずれかのコードでオーバーライドできます。


constrain-height (メソッド)
public {BaseToggleButtonGraphic.constrain-height
lc:LayoutContext,
ascent:Distance,
descent:Distance
}:Dimension

指定した高さの制約を受けた場合にこの Graphic の幅設定を返します。

lc: このレイアウト ネゴシエーションに対して有効な LayoutContext
ascent, descent: 高さの制約。この Graphic の起点からの相対的な上昇および下降の距離で表されます。

戻り値

オブジェクトの幅設定を表す Dimension。この Dimension は、後続のレイアウト処理中に OriginElastic に変換されます。

オーバーライド

既定のメソッド Graphic.constrain-height は、単に Graphic.get-width-preference を呼び出します。このメソッドは、オブジェクトが幅設定を計算する際に高さの制約を考慮しなくてもいい場合はオーバーライドする必要がありません。

このメソッドをオーバライドするクラスでは必ず Dimension を返すようにして、これで必要な水平軸に沿ったスペースをそのオブジェクトの起点との関係を含めて表します。実際には、これはこのメソッドが適切な OriginElastic または Dimension を返すことを意味します。Dimension の場合は、「次元から OriginElastics への変換」で説明する変換規則に従って、適切な OriginElastic に変換されます。

重要:このメソッドのオーバーライド実装には、レイアウト ネゴシエーションが確実にグラフィック階層全体に適用されるように、スーパークラス実装の呼び出しを含める必要があります。


constrain-width (メソッド)
public {BaseToggleButtonGraphic.constrain-width
lc:LayoutContext,
lextent:Distance,
rextent:Distance
}:Dimension

指定した高さの制約を受けた場合にこの Graphic の高さ設定を返します。

lc: このレイアウト ネゴシエーションに対して有効な LayoutContext
lextent, rextent: 幅の制約。起点からの左と右の相対距離で表されます。

戻り値

オブジェクトの高さ設定を表す Dimension。この Dimension は、後続のレイアウト処理中に OriginElastic に変換されます。

オーバーライド

既定のメソッド Graphic.constrain-width は、単に Graphic.get-height-preference を呼び出します。このメソッドは、オブジェクトが高さ設定を計算する際に幅制約を考慮しなくてもいい場合はオーバーライドする必要がありません。

このメソッドをオーバライドするクラスでは必ず Dimension を返すようにして、これで必要な垂直軸に沿ったスペースをそのオブジェクトの起点との関係を含めて表します。実際には、これはこのメソッドが適切な OriginElastic または Dimension を返すことを意味します。Dimension の場合は、「次元から OriginElastics への変換」で説明する変換規則に従って、適切な OriginElastic に変換されます。

重要:このメソッドのオーバーライド実装には、レイアウト ネゴシエーションが確実にグラフィック階層全体に適用されるように、スーパークラス実装の呼び出しを含める必要があります。


contains-point? (メソッド)
public {BaseToggleButtonGraphic.contains-point?}:bool

指定されたポイントで発生するイベントが、ターゲット ボックスと、そのいずれかのグラフィカルな子のどちらに関するものかを判断します。

x, y: ポイントの座標。ターゲット オブジェクトの起点を基準として表現します。

プログラミング注意事項

このメソッドは、通常は、ポインタ イベントをグラフィカルな子に転送するかどうかを決定するためなど、主として内部目的で用意されています。

注意事項

このメソッドは、ポイントがグラフィカルな子によって占められる領域内 (境界を含む) にある場合は、グラフィカルな子が以下のプロパティを持っていると判断して true を返します。

一般に、ボックス内のターゲット ポイントがボックスの可視部分として描画されていない場合、このメソッドは false を返します。

TextFlowBox に選択可能なテキストが含まれている場合 (つまりプロパティ text-selectable? が値 true である場合) は、ポイントが境界ボックス内にある限り、メソッドは true を返します。これは、その領域内の任意のイベントが、ボックス内のテキスト選択に関連付けられる可能性があるからです。それ以外の場合は、TextFlowBox は前述したように、他のボックスと同じように扱われます。


draw (メソッド)
public {BaseToggleButtonGraphic.draw renderer2d:Renderer2d}:void

このオブジェクトの可視表現を描画します。

renderer2d: このオブジェクトを使用してそれ自身を描画する Renderer2d

オーバーライド

既定のメソッド Graphic.draw は何もしません。Graphic のサブクラスは、必要とされる描画の操作を実行するコードでこのメソッドをオーバーライドしなければなりません。
このメソッドをオーバーライドする場合は、再描画が必要となる時はいつでも、描画する Graphic の範囲が有効でない事を確認しなければなりません。たとえば、データの値を更新するために描画をする時は、データの値が変わる時にアプレットは必ず Graphic.request-drawGraphic.request-draw-rectを呼び出さなければなりません。


get-height-preference (メソッド)
public {BaseToggleButtonGraphic.get-height-preference}:Dimension

この Graphic の高さ設定を返します。

lc: このレイアウト ネゴシエーションに対して有効な LayoutContext

戻り値

オブジェクトの高さ設定を表す Dimension。この Dimension は、後続のレイアウト処理中に OriginElastic に変換されます。

オーバーライド

このメソッドは、Graphic のサブクラス内で定義する必要があります。

このメソッドをオーバライドするクラスでは必ず Dimension を返すようにして、これで必要な垂直軸に沿ったスペースをそのオブジェクトの起点との関係を含めて表します。実際には、これはこのメソッドが適切な OriginElastic または Dimension を返すことを意味します。Dimension の場合は、「次元から OriginElastics への変換」で説明する変換規則に従って、適切な OriginElastic に変換されます。


get-width-preference (メソッド)
public {BaseToggleButtonGraphic.get-width-preference}:Dimension

この Graphic の幅設定を返します。

lc: このレイアウト ネゴシエーションに対して有効な LayoutContext

戻り値

このオブジェクトの幅設定を表す Dimension。この Dimension は、後続のレイアウト処理中に OriginElastic に変換されます。

オーバーライド

このメソッドは、Graphic のサブクラスで定義する必要があります。

このメソッドをオーバライドするクラスでは必ず Dimension を返すようにして、これで必要な水平軸に沿ったスペースをそのオブジェクトの起点との関係を含めて表します。実際には、これはこのメソッドが適切な OriginElastic または Dimension を返すことを意味します。Dimension の場合は、「次元から OriginElastics への変換」で説明する変換規則に従って、適切な OriginElastic に変換されます。


request-draw (メソッド)
public {BaseToggleButtonGraphic.request-draw
layout-context:LayoutContext = {self.get-layout-context}
}:void

描画する Graphic に属するピクセルを確認します。

layout-context: このオブジェクトを含むグラフィック階層のサブツリーに対応する LayoutContext オブジェクト。このキーワード引数が提供されない場合、Graphic.get-layout-context を呼び出して、適切な値を取得します。

注意事項

このオブジェクトを現在の位置で描画する場合、オブジェクトの Graphic.draw メソッドによってペイントされる、またはペイントされたピクセルすべてをカバーする回数の Graphic.request-draw-rect 呼び出しがこのメソッドで実行されます。既定のメソッド Graphic.request-draw が使用する単純な方法は、Graphic のレイアウト オブジェクトで Layout.request-draw-child を呼び出すことで、Graphic の境界ボックス全体の再描画を要求するというものです。

プログラミング注意事項

このオブジェクトのピクセルの再ペイントが必要になる何らかの理由があったとき、このメソッドが呼び出されます。このような状況が発生するのは、オブジェクトが初めて表示されるとき、ビューから削除されるとき、移動やサイズ変更が行なわれるとき (この場合、移動やサイズ変更の前と後でこのメソッドを呼び出す必要があります) などがあります。

オーバーライド

既定の定義 Graphic.request-draw はほとんどの目的に対応していますが、オブジェクトで実際にペイントされないピクセルが境界ボックスに多数ある場合はこのメソッドをオーバーライドして、より正確に計算する Graphic.request-draw-rect の呼び出しまたはそのセットを起動します。