SkinnableBaseDropdownUI (クラス)
public abstract SkinnableBaseDropdownUI {inherits SkinnableControlUI, Observer, GraphicOptions}
インポート元: CURL.GUI.STANDARD. package 内で定義されています CURL.GUI.CONTROL-UI-SKINNABLE.
直接継承しているサブクラス: SkinnableDropdownListUI, SkinnableComboBoxUI

スキンが適用された DropdownListUIComboBoxUI のユーザー インターフェイスを具象化する包括的なスーパークラス。

導入: バージョン 6.0

コンストラクタ
default:このオブジェクトを作成します。
コンストラクタ public {SkinnableBaseDropdownUI.default
control-skin:#BaseDropdownSkin,
control-feel:#BaseDropdownFeel
}

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

ビジュアル オブジェクトによっては、color プロパティを直接使用しないものがあります。たとえば、VBox は色プロパティを使用しません。それでもやはり、内部にあるすべてのアイテムが既定で同じ色を持つように、VBoxの色を設定すると便利です (下の例を参照)。
非ローカル オプション public SkinnableBaseDropdownUI.color:FillPattern
control-appearance-changeable?:look-and-feel または標準のオプション親のどちらがコントロールの外観の基準になるかを決定します。
非ローカル オプション public SkinnableBaseDropdownUI.control-appearance-changeable?:bool
control-color:Control の ボタン形式のオブジェクトのメイン カラー。
非ローカル オプション public SkinnableBaseDropdownUI.control-color:FillPattern
control-content-background:このオプションは、コントロール内容が背景を持つ場合にその色を制御します。
非ローカル オプション public SkinnableBaseDropdownUI.control-content-background:Background
control-feel:このオブジェクトで使用される ControlFeel です。
アクセサ public SkinnableBaseDropdownUI.control-feel:BaseDropdownFeel
セッター public SkinnableControlUI.control-feel:ControlFeel
dropdown-width:ドロップダウンの表示幅の設定。
アクセサ protected abstract SkinnableBaseDropdownUI.dropdown-width:Distance
font-family:テキストのフォント書体を設定します。
非ローカル オプション public SkinnableBaseDropdownUI.font-family:String
font-size:オブジェクト内のテキストの既定サイズを指定します。
非ローカル オプション public SkinnableBaseDropdownUI.font-size:any
font-style:オブジェクト内のテキストを斜体や斜投影法などのフォントにするかどうかを指定します。
非ローカル オプション public SkinnableBaseDropdownUI.font-style:FontStyle
font-weight:オブジェクト内のテキストを、太字として強調表示するかどうかを指定します。
非ローカル オプション public SkinnableBaseDropdownUI.font-weight:FontWeight
look-and-feel:オプションの検索と ControlUI の指定に使用される LookAndFeel
非ローカル オプション public SkinnableBaseDropdownUI.look-and-feel:LookAndFeel
menu:このオブジェクトに関連付けられている MenuPane
アクセサ public SkinnableBaseDropdownUI.menu:MenuPane
セッター private SkinnableBaseDropdownUI.menu:MenuPane
pressed-color:Control が押されている状態の時に ControlUI に設定される color オプションの代替値です。
非ローカル オプション public SkinnableBaseDropdownUI.pressed-color:#FillPattern
rollover-color:ポインタが ControlUI 上にはあるが押されていない時に ControlUI に設定される color オプションの代替値です。
非ローカル オプション public SkinnableBaseDropdownUI.rollover-color:#FillPattern
set-backgrounds-on-menu?:ドロップダウンのメニューに背景色が設定されてもされなくても、コントロールに ControlSkin を適用します。
フィールド public SkinnableBaseDropdownUI.set-backgrounds-on-menu?:bool =false
style-manager:このオブジェクトに関連付けられている StyleManager
非ローカル オプション public SkinnableBaseDropdownUI.style-manager:#StyleManager
プロパティ 継承 SkinnableControlUI: control-skin, control-valid?, display-context, visual-state
プロパティ 継承 TaggedSkinnableObject: content-tag
プロパティ 継承 OptionListInterface: option-parent, option-register-proc, options, options-present-here, registered-option-keys, style-options
プロパティ 継承 DataBindingTarget: data-binding-context, data-bindings
プロパティ 継承 EventTarget: event-handlers
プロパティ 継承 SkinnableObject: ui-object

メソッド
add-menu-item:MenuItem をドロップダウンリストのメニューに追加します。
protected {SkinnableBaseDropdownUI.add-menu-item
item:ListItem,
index:int
}:void
create-button:この UI のドロップ ボタンを作成します。
protected {SkinnableBaseDropdownUI.create-button}:CommandButton
create-menu-item:ドロップダウンで使用する MenuAction を作成します。
protected {SkinnableBaseDropdownUI.create-menu-item
item:ListItem
}:MenuAction
create-menu-pane:ドロップダウンで使用する MenuPane を作成します。
protected {SkinnableBaseDropdownUI.create-menu-pane}:MenuPane
handle-observer-message:監視対象のオブジェクトがメッセージを送信するときにこのメソッドを呼び出します。Observer はこのメソッドを実装して、変更が発生したときに処理を実行する必要があります。
protected {SkinnableBaseDropdownUI.handle-observer-message
sender:Observable,
message:any
}:void
item-selected-on-dropdown:指定されたインデックスのアイテムがドロップダウンで選択されると、アクションを実行します。
protected {SkinnableBaseDropdownUI.item-selected-on-dropdown
selected-index:int
}:void
note-dropdown-closed:ドロップダウン メニューが閉じられると呼び出されます。
protected {SkinnableBaseDropdownUI.note-dropdown-closed}:void
note-dropdown-shown:ドロップダウン メニューが開かれると呼び出されます。
protected {SkinnableBaseDropdownUI.note-dropdown-shown}:void
rebuild-dropdown:メニューで使用される MenuItem のリストを再構築します。
protected {SkinnableBaseDropdownUI.rebuild-dropdown
items:{Iterator-of ListItem}
}:void
show-dropdown:ドロップダウンを表示します。
public {SkinnableBaseDropdownUI.show-dropdown}:void
メソッド 継承 SkinnableControlUI: create-default-control-feel, create-default-control-skin, draw-skin, get-tagged-content, get-tagged-visual-state, note-control-changed, note-control-feel-changed, note-control-skin-changed, note-graphic-state-change, note-tagged-content-changed, note-visual-state-changed, on-gui-event, option-change-notify, overdraw-skin, set-child-graphic, set-control-feel-from-registration, set-control-skin-from-registration, set-tagged-content, set-tagged-visual-state
メソッド 継承 Observer: observe, stop-observing
メソッド 継承 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-enter, on-drag-leave, 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-input-method-event, on-inspection, on-key-event, on-key-press, on-pointer-button, on-pointer-crossing, on-pointer-enter, on-pointer-envelope-event, on-pointer-event, on-pointer-leave, 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: 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, notify-option-children, option-changed, option-lookup, option-lookup-here, option-propagate-notify, option-set?, propagate-option-change, register-options, 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
メソッド 継承 DataBindingTarget: add-data-binding, get-data-binding, non-keyword-init-arg, 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
メソッド 継承 SkinnableObject: note-ui-changed
メソッド 継承 InitRestArgParser: process-rest-args
メソッド 継承 BasicEventTarget: enqueue-event
メソッド 継承 Object: object-describe, object-describe-for-debugging, object-serialize



コンストラクタ詳細
default (コンストラクタ)
public {SkinnableBaseDropdownUI.default
control-skin:#BaseDropdownSkin,
control-feel:#BaseDropdownFeel
}

このオブジェクトを作成します。

control-skin: このコントロール UI の BaseDropdownSkin です。
control-feel: このコントロール UI の BaseDropdownFeel です。
導入: バージョン 6.0



プロパティ詳細
color (非ローカル オプション)
public SkinnableBaseDropdownUI.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-appearance-changeable? (非ローカル オプション)
public SkinnableBaseDropdownUI.control-appearance-changeable?:bool

look-and-feel または標準のオプション親のどちらがコントロールの外観の基準になるかを決定します。

説明

詳細は、ControlFrame.control-appearance-changeable? を参照してください。


control-color (非ローカル オプション)
public SkinnableBaseDropdownUI.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 SkinnableBaseDropdownUI.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"}
}


control-feel (アクセサ)
アクセサ public SkinnableBaseDropdownUI.control-feel:BaseDropdownFeel
セッター public SkinnableControlUI.control-feel:ControlFeel

このオブジェクトで使用される ControlFeel です。

説明

このプロパティを直接設定すると、LookAndFeel上の登録からオーバーライドします。
導入: バージョン 6.0


dropdown-width (アクセサ)
アクセサ protected abstract SkinnableBaseDropdownUI.dropdown-width:Distance

ドロップダウンの表示幅の設定。

説明

ドロップダウンが画面の端に近すぎると、ユーザー インターフェイス デリゲートがこのプロパティをオーバーライドしてドロップダウンの幅を変更する場合があります。
導入: バージョン 6.0


font-family (非ローカル オプション)
public SkinnableBaseDropdownUI.font-family:String

テキストのフォント書体を設定します。

説明

テキストをレンダリングするフォントの検索に使用するフォント ファミリー名 (または名前のリスト) を指定します。
フォントの指定方法の詳細については、Font を参照してください。

{VBox
    {text font-family = "serif", serif},
    {text font-family = "sans-serif", sans-serif},
    {text font-family = "monospace", monospace},
    {text
        font-family = "Arial, Nimbus Sans L, sans-serif",
        prefer a particular sans-serif
    },
    {text
        font-family =
            "Times New Roman, Nimbus Roman No9 L, serif",
        prefer a particular serif
    }
}


font-size (非ローカル オプション)
public SkinnableBaseDropdownUI.font-size:any

オブジェクト内のテキストの既定サイズを指定します。

説明

この値の妥当なタイプは DistancePixelDistanceEmDistance を含んでいます。許可されたタイプを判断するための詳細な情報については verify-any-is-distance-type を御覧下さい。
値は正の値でなければなりません。負の値や、0 はオプションをに設定することはできますが、実行する際にランタイムエラーが発生します。

font-size オプションを使用したテキスト サイズの指定方法の例をいくつか示します。"Medium" という語を持つテキスト オブジェクトが、それを含むテキスト オブジェクトから、どのようにフォント サイズを取得するかに注意してください。


{text font-size=12pt,
    {text font-size=8pt, Little}
    {text font-size=1cm, Pretty big}
    {text Medium}
    {text font-size=1in, Huge!}
}
{text And this is the default}

参照:

文字書式: tiny, small, big, huge


font-style (非ローカル オプション)
public SkinnableBaseDropdownUI.font-style:FontStyle

オブジェクト内のテキストを斜体や斜投影法などのフォントにするかどうかを指定します。

説明

適切な値は次のとおりです。

このオプションは、非ローカル オプション ControlFrame.control-appearance-changeable? がコントロール上で true の場合、コントロール内のテキストの外観に反映されます。DialogMenuPane MenuBarDialog.use-look-and-feel? が true の場合、フォント書体は外観で指定された値に設定されるため、ダイアログやメニューで値を設定しても効果はありません。


{paragraph font-style="italic", Everything in this paragraph
    should be in an italic font,
    {text font-style="normal", except for this text fragment.}
}

参照:

文字書式: italic


font-weight (非ローカル オプション)
public SkinnableBaseDropdownUI.font-weight:FontWeight

オブジェクト内のテキストを、太字として強調表示するかどうかを指定します。

説明

適切な値は次のとおりです。

このオプションは、非ローカル オプション ControlFrame.control-appearance-changeable? がコントロール上で true の場合、コントロール内のテキストの外観に反映されます。DialogMenuPane MenuBarDialog.use-look-and-feel? が true の場合、フォント スタイルは外観で指定された値に設定されるため、ダイアログやメニューで値を設定しても効果はありません。


{paragraph Everything in this paragraph
    should be normally weighted,
    {text font-weight="bold", except for this text fragment.}
}

参照:

文字書式: bold


look-and-feel (非ローカル オプション)
public SkinnableBaseDropdownUI.look-and-feel:LookAndFeel

オプションの検索と ControlUI の指定に使用される LookAndFeel

説明

参照:Dialog.use-look-and-feel?


menu (アクセサ)
アクセサ public SkinnableBaseDropdownUI.menu:MenuPane
セッター private SkinnableBaseDropdownUI.menu:MenuPane

このオブジェクトに関連付けられている MenuPane

注意事項

MenuPane がドロップダウンを描画したり、選択可能にしたりします。
セッターは、古い MenuPane の監視をやめ、新しいものの監視を開始します。
導入: バージョン 6.0


pressed-color (非ローカル オプション)
public SkinnableBaseDropdownUI.pressed-color:#FillPattern

Control が押されている状態の時に ControlUI に設定される color オプションの代替値です。

導入: バージョン 6.0


rollover-color (非ローカル オプション)
public SkinnableBaseDropdownUI.rollover-color:#FillPattern

ポインタが ControlUI 上にはあるが押されていない時に ControlUI に設定される color オプションの代替値です。

説明

多くの場合、Control が押され ControlUI の境界の外にポインタが移動した時に rollover-colorpressed-color の代わりに使用されます。
導入: バージョン 6.0


set-backgrounds-on-menu? (フィールド)
public SkinnableBaseDropdownUI.set-backgrounds-on-menu?:bool =false

ドロップダウンのメニューに背景色が設定されてもされなくても、コントロールに ControlSkin を適用します。

導入: バージョン 6.0


style-manager (非ローカル オプション)
public SkinnableBaseDropdownUI.style-manager:#StyleManager

このオブジェクトに関連付けられている StyleManager

導入: バージョン 6.0





メソッド詳細
add-menu-item (メソッド)
protected {SkinnableBaseDropdownUI.add-menu-item
item:ListItem,
index:int
}:void

MenuItem をドロップダウンリストのメニューに追加します。

説明

このメソッドは、まず BaseDropdownSkin.create-menu-item を呼び出すことで MenuAction を生成し、Action イベント用にそれに EventHandler をアタッチします。このイベント ハンドラーは起動されると SkinnableBaseDropdownUI.item-selected-on-dropdown を呼び出します。
導入: バージョン 6.0


create-button (メソッド)
protected {SkinnableBaseDropdownUI.create-button}:CommandButton

この UI のドロップ ボタンを作成します。

導入: バージョン 6.0


create-menu-item (メソッド)
protected {SkinnableBaseDropdownUI.create-menu-item
item:ListItem
}:MenuAction

ドロップダウンで使用する MenuAction を作成します。

説明

このメソッドは、アタッチされた BaseDropdownSkin で同等のメソッドを呼び出します。
導入: バージョン 6.0


create-menu-pane (メソッド)
protected {SkinnableBaseDropdownUI.create-menu-pane}:MenuPane

ドロップダウンで使用する MenuPane を作成します。

説明

このメソッドは、アタッチされた BaseDropdownSkin で同等のメソッドを呼び出します。
導入: バージョン 6.0


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

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

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


item-selected-on-dropdown (メソッド)
protected {SkinnableBaseDropdownUI.item-selected-on-dropdown
selected-index:int
}:void

指定されたインデックスのアイテムがドロップダウンで選択されると、アクションを実行します。

説明

アタッチされた ControlSkinControlFeel で類似したメソッドを呼び出します。
導入: バージョン 6.0


note-dropdown-closed (メソッド)
protected {SkinnableBaseDropdownUI.note-dropdown-closed}:void

ドロップダウン メニューが閉じられると呼び出されます。

導入: バージョン 6.0


note-dropdown-shown (メソッド)
protected {SkinnableBaseDropdownUI.note-dropdown-shown}:void

ドロップダウン メニューが開かれると呼び出されます。

導入: バージョン 6.0


rebuild-dropdown (メソッド)
protected {SkinnableBaseDropdownUI.rebuild-dropdown
items:{Iterator-of ListItem}
}:void

メニューで使用される MenuItem のリストを再構築します。

導入: バージョン 6.0


show-dropdown (メソッド)
public {SkinnableBaseDropdownUI.show-dropdown}:void

ドロップダウンを表示します。

導入: バージョン 6.0