StandardLookAndFeel (クラス)
public StandardLookAndFeel {inherits LookAndFeel, Observer}
インポート元: CURL.GUI.STANDARD. package 内で定義されています CURL.GUI.CONTROL-BASE.

LookAndFeel クラスの標準実装。


コンストラクタ
default:新しい StandardLookAndFeel を作成します。
コンストラクタ public {StandardLookAndFeel.default}

プロパティ
control-ui-mapping:Control タイプから ControlUI タイプへの実際のマッピング。
フィールド protected StandardLookAndFeel.control-ui-mapping:{HashTable-of Type, Type} ={{HashTable-of Type, Type}}
control-ui-proc-mapping:Control 型から ControlUI を作成する proc への実際のマッピングです。
フィールド protected StandardLookAndFeel.control-ui-proc-mapping:{HashTable-of Type, {proc-type {}:ControlUI}} ={{HashTable-of Type, {proc-type {}:ControlUI}}}
options:このオブジェクトのオプション リストが存在する場合はそれを参照します。
アクセサ protected StandardLookAndFeel.options:#OptionItem
セッター protected Visual.options:#OptionItem
options-initialized?:StandardLookAndFeel.ensure-initialized が呼び出されたことを示すフラグです。
フィールド protected StandardLookAndFeel.options-initialized?:bool =false
style-element:スタイリングの目的のための、この Visual の "要素" や "型" です。
アクセサ public StandardLookAndFeel.style-element:String
プロパティ 継承 LookAndFeel: style-options
プロパティ 継承 Observable: has-observers?, notify-observers?
プロパティ 継承 Graphic: avoid-page-break?, background, border-color, border-spec, border-style, border-width, cell-border-spec, cell-border-width, cell-margin, clip-child-shadows?, 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?, completely-clonable-children?, cursor, data-source, dragee, font-size, input-method-enabled?, input-method-keyboard-mode, name, options-present-here, style-class, style-manager, 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, registered-option-keys

メソッド
ensure-initialized:StandardLookAndFeel.init-options を呼び出しますが、このオブジェクトが一度も呼び出していない場合のみです。
protected {StandardLookAndFeel.ensure-initialized}:void
get-ui:この LookAndFeel 内の特定の Control タイプにマッピングされた ControlUI タイプを取得します。
public {StandardLookAndFeel.get-ui control:Type}:#Type
get-ui-proc:この LookAndFeel 内で設定された Control にマッピングされる ControlUI のインスタンスを返すproc を返します。
public {StandardLookAndFeel.get-ui-proc
control:Type
}:#{proc-type {}:ControlUI}
handle-observer-message:監視対象のオブジェクトがメッセージを送信するときにこのメソッドを呼び出します。Observer はこのメソッドを実装して、変更が発生したときに処理を実行する必要があります。
protected {StandardLookAndFeel.handle-observer-message
sender:Observable,
message:any
}:void
init-options:この StandardLookAndFeel のオプションを初期化します。
protected {StandardLookAndFeel.init-options}:void
new-ui-needed?:この LookAndFeel を使用して UI オブジェクトが再作成される場合 true を返します。
public {StandardLookAndFeel.new-ui-needed? control:Type}:bool
option-lookup-here:オプション検索ステップを実行します。
public {StandardLookAndFeel.option-lookup-here
key:OptionKey,
local?:bool
}:(item:#OptionItem, local-key?:bool)
register-ui:この LookAndFeel 内で Control タイプから ControlUI タイプへのマッピングを登録します。
public {StandardLookAndFeel.register-ui
control:Type,
control-ui:Type
}:bool
register-ui-proc:この LookAndFeel 内で Control タイプから ControlUI を作成する proc へのマッピングを登録します。
public {StandardLookAndFeel.register-ui-proc
control:Type,
creation-proc:{proc-type {}:ControlUI}
}:bool
unregister-ui:この LookAndFeel 内で Control タイプのマッピングの登録を解除します。
public {StandardLookAndFeel.unregister-ui control:Type}:bool
メソッド 継承 LookAndFeel: get-height-preference, get-width-preference, propagate-option-change
メソッド 継承 Observer: observe, stop-observing
メソッド 継承 Observable: add-observer, notify-observers, remove-observer
メソッド 継承 Graphic: after-reposition, attempt-revalidate-layout, before-reposition, constrain-height, constrain-width, contains-point?, create-pagination-state, detach, draw, draw-range-as-selected, draw-shadow, end-pagination, find-ancestor, find-graphic-at, find-graphical-ancestor, fire-inferior-crossing-event, get-graphical-root, get-origin-in-graphical-ancestor, get-origin-in-root, get-pagination-state, get-range-as-selected-text, get-top-left-in-ancestor, get-visible-bounds-into, graphical-child-visible-at, make-gui-mark, on-drag-enter, on-inspection, on-pointer-enter, option-changed, paginate, paint-with-decorations, pointer-enter-occurred, pointer-leave-occurred, replace-with, request-draw, request-draw-rect, request-layout, request-pointer-trace, search-next, search-next-here, search-prev, search-prev-here, set-layout, set-size, start-pagination, xy-offset-to
メソッド 継承 Visual: add, add-from-init-args, add-option, add-style-option, animate, change-cursor, clear, clonable-appearance?, clone-appearance, clone-appearance-helper, find-test-children, 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-attached, note-caret-position, note-detaching, on-drag-leave, on-pointer-envelope-event, 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
メソッド 継承 GraphicOptions: any-to-Distance, get-display-context
メソッド 継承 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
メソッド 継承 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: 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, notify-option-children, option-change-notify, option-lookup, option-propagate-notify, option-set?, register-options, 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



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

新しい StandardLookAndFeel を作成します。




プロパティ詳細
control-ui-mapping (フィールド)
protected StandardLookAndFeel.control-ui-mapping:{HashTable-of Type, Type} ={{HashTable-of Type, Type}}

Control タイプから ControlUI タイプへの実際のマッピング。

説明

コントロール型から UI デリゲートへのマッピングを提供する他、control-appearance-changeable?=false の場合に、このオブジェクトはコントロールのさまざまなオプションに値を提供します。
導入: バージョン 6.0


control-ui-proc-mapping (フィールド)
protected StandardLookAndFeel.control-ui-proc-mapping:{HashTable-of Type, {proc-type {}:ControlUI}} ={{HashTable-of Type, {proc-type {}:ControlUI}}}

Control 型から ControlUI を作成する proc への実際のマッピングです。

導入: バージョン 6.0


options (アクセサ)
アクセサ protected StandardLookAndFeel.options:#OptionItem
セッター protected Visual.options:#OptionItem

このオブジェクトのオプション リストが存在する場合はそれを参照します。

説明

オプション リストは OptionItem へリンクしたリストとして表現されます。
(スタイル シートを通しているか直接設定されているかにかかわらず) Visual に設定されたオプションの全てを リストしたい場合は Visual.options-present-here ゲッターを使用してください。


options-initialized? (フィールド)
protected StandardLookAndFeel.options-initialized?:bool =false

StandardLookAndFeel.ensure-initialized が呼び出されたことを示すフラグです。

導入: バージョン 6.0


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

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

説明

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

オーバーライド

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





メソッド詳細
ensure-initialized (メソッド)
protected {StandardLookAndFeel.ensure-initialized}:void

StandardLookAndFeel.init-options を呼び出しますが、このオブジェクトが一度も呼び出していない場合のみです。

導入: バージョン 6.0


get-ui (メソッド)
public {StandardLookAndFeel.get-ui control:Type}:#Type

この LookAndFeel 内の特定の Control タイプにマッピングされた ControlUI タイプを取得します。

control: 検索するコントロールの Type

戻り値

この LookAndFeel 内のそのコントロールにマッピングされた ControlUI のタイプ。

説明

そのコントロールへのマッピングが行われていない場合、このメソッドはレジストリでそのコントロールのスーパー クラスを探します。スーパークラスが見つからない場合、null が返されます。共通に登録されたサブクラスを持たない複数のスーパークラスが見つかった場合、エラーがスローされます。


get-ui-proc (メソッド)
public {StandardLookAndFeel.get-ui-proc
control:Type
}:#{proc-type {}:ControlUI}

この LookAndFeel 内で設定された Control にマッピングされる ControlUI のインスタンスを返すproc を返します。

control: 検索するコントロールの Type

説明

設定された Control 型に関するマッピングのプロシージャがない場合、このメソッドは control-ui-mapping 内で型のマッピングを探そうとします。そしてそれに基づいて既定のプロシージャを作成します。それに失敗すると、同じレジストリにあるそのコントロールのスーパー コントロールを探し、その後でプロシージャのレジストリ内を探します。何も見つからない場合、null が返されます。レジストリ内に共有されていない複数のスーパー クラスが見つかった場合、エラーがスローされます。


handle-observer-message (メソッド)
protected {StandardLookAndFeel.handle-observer-message
sender:Observable,
message:any
}:void

監視対象のオブジェクトがメッセージを送信するときにこのメソッドを呼び出します。Observer はこのメソッドを実装して、変更が発生したときに処理を実行する必要があります。

sender: 変更があった Observable オブジェクトです。
message: これは、Observer からの変更に関する詳細情報が含まれています。詳細情報がない場合は NULL になります。


init-options (メソッド)
protected {StandardLookAndFeel.init-options}:void

この StandardLookAndFeel のオプションを初期化します。

説明

これは、オプションがアクセスされる前に StandardLookAndFeel.ensure-initializedから一度だけ呼び出されます。

オーバーライド

この実装によって、Preferences オブジェクトからの様々なオプションが初期化されます。
導入: バージョン 6.0


new-ui-needed? (メソッド)
public {StandardLookAndFeel.new-ui-needed? control:Type}:bool

この LookAndFeel を使用して UI オブジェクトが再作成される場合 true を返します。

control: 対象となるコントロールの型です。

説明

コントロールの look-and-feel が変更される場合、関連する UI オブジェクトが置き換えられるかどうかを知る必要があります。このメソッドによって、型のマッピングが同じであるように見えても、新しい LookAndFeel は UI オブジェクトが置き換えられる必要があるかを示すことができます。 コントロールを作成するプロシージャが登録されると、そのプロシージャが呼び出される度に異なる UI オブジェクトを返す可能性があるので、このメソッドは true を返します。

オーバーライド

コントロールの新しい LookAndFeel が異なる型の UI オブジェクトを返すと、UI オブジェクトは常に置き換えられます。型が異ならない場合であっても、新しい UI オブジェクトが作成される場合は、このメソッドをオーバーライドしてください。たとえば、UI オブジェクトの型が同じであってもコントロールの外観が全く異なる場合に、これはスキンが適用されたコントロールにとって重要です。
LookAndFeel.get-ui-proc がオーバーライドされる場合、このメソッドも対応するように変更が必要です。
導入: バージョン 6.0


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

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

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

戻り値

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

プログラミング注意事項

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

オーバーライド

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


register-ui (メソッド)
public {StandardLookAndFeel.register-ui
control:Type,
control-ui:Type
}:bool

この LookAndFeel 内で Control タイプから ControlUI タイプへのマッピングを登録します。

control: 登録するコントロールの TypeControl のサブタイプになる必要があります。
control-ui: 登録するコントロール UI の TypeControlUI のサブタイプになる必要があります。

戻り値

マッピングの登録に成功した場合は True。いずれかのパラメータのサブタイプが正しくない場合は false を返します。そのコントロールにすでにマッピングが実行されている場合は false を返しません。それをオーバーライトします。

説明

設定された Control の型に関して、既に型からプロシージャへのマッピングが control-ui-proc-mapping 内に存在する場合、このメソッドはそのエントリを削除します。


register-ui-proc (メソッド)
public {StandardLookAndFeel.register-ui-proc
control:Type,
creation-proc:{proc-type {}:ControlUI}
}:bool

この LookAndFeel 内で Control タイプから ControlUI を作成する proc へのマッピングを登録します。

control: 登録するコントロールの TypeControl のサブタイプになる必要があります。
creation-proc: 引数をとらず、ControlUIを返す proc です。

戻り値

マッピングの登録に成功した場合は True。いずれかのパラメータのサブタイプが正しくない場合は false を返します。そのコントロールにすでにマッピングが実行されている場合は false を返しません。それをオーバーライトします。

説明

設定された Control の型に関して、既に型から型へのマッピングが control-ui-mapping 内に存在する場合、このメソッドを呼び出すことでそのエントリを削除します。
導入: バージョン 6.0


unregister-ui (メソッド)
public {StandardLookAndFeel.unregister-ui control:Type}:bool

この LookAndFeel 内で Control タイプのマッピングの登録を解除します。

control: 登録するコントロールの Type

戻り値

マッピングの登録解除に成功した場合は True。このようなマッピングが存在しない場合は false を返します。