(クラス)
Curl グラフィカル コンテンツが含まれる、画面上の Curl ウィンドウを表します。
説明
表示を目的とする各グラフィック階層は、そのルートに
View オブジェクトを持ちます。各
View はウィンドウにアタッチされるため、
View で実行されるすべてのウィンドウ関連操作 (移動または閉じるなど) は、実際にウィンドウ上で実行されます。
View は
Frame から継承するため、
Frame と同様、複数の子グラフィックを持つことはできません。通常は、
View の作成時に、グラフィカルな子を引数として指定します。
次のリストには、頻繁に使用される
View メソッドが掲載されています。
注意事項
View オブジェクトを作成し、ここで
View.show メソッドを呼び出さない場合、このオブジェクトが不要になったら
View.destroy を呼び出さなくてはなりません。それ以外の場合、このオブジェクトは、これを作成したアプレットが破棄されるまで破棄されません。
このオブジェクトは、"View"のスタイル ルールを記述することによってスタイル化することが出来ます。
予期されたイベント
WindowClose:
close が呼び出されたとき、またはユーザーが
View を閉じようとしたとき (たとえば、右上隅の
x ボタンをクリックするなど) に発生します。
例
上記で説明された操作を、以下に例示します。
View を表示することにより操作を開始し、一旦そのオブジェクトが破棄されると、これに対してコマンドを実行することはできなくなることに注意してください。
たとえば、
View.title 操作は、以前破棄されたウィンドウで呼び出されるとエラーを起こすので、その前に
View.destroyed? が false になっていることを確認することが推奨されます。
例 |
|
{let v:View =
{View
{VBox
{text Creating Views is fairly easy,},
{text if you follow a few simple rules.},
{italic This example illustrates them.}}}}
{HBox
spacing=3pt,
{CommandButton label="Show",
{on Action do
{if (not v.destroyed?) then
{v.show}
}}},
{CommandButton label="Hide",
{on Action do
{if (not v.destroyed?) then
{v.hide}}}},
{CommandButton label="Destroy",
{on Action do
{if (not v.destroyed?) then
{v.destroy}
}}},
{CommandButton label="Move",
{on Action do
{if (not v.destroyed?) then
{v.set-position 3*72pt, 2*72pt}
}}},
{CommandButton label="New Title",
{on Action do
{if (not v.destroyed?) then
set v.title = "Retitled Window"
}}}
}
| |
View の内容が変更される場合、
View は自動的にサイズ変更を行いません。
View のサイズを変更して、その内容の
ユーザー設定サイズに一致させるには、
View.set-size-from-child を使用します。
例 |
|
{value
let hb:HBox =
{HBox spacing=3pt, {RectangleGraphic width=18pt, height=36pt}}
let vb:VBox = {VBox hb}
let v:#View
{HBox
spacing=3pt,
{CommandButton label="Create and Show View",
{on Action at cb:CommandButton do
set v = {View vb,
{on WindowClose do
set cb.enabled? = true
}
}
set cb.enabled? = false
{v.show}
}},
{CommandButton label="Add Words",
{on Action do
{hb.add "Hello!"}
{vb.add "Goodbye!"}
}},
{CommandButton label="Resize",
{on Action do
{v.set-size-from-child}
}}}
}
| |
ビジュアル テスト
View のビジュアル テスト タイプは、作成された方法によって決まります。View が別の View により所有されている場合、ビジュアル テスト タイプは CurlDialog となります。その他の場合は、CurlView となります。これらのビジュアル テスト タイプのアクションとプロパティは同じです。
すべての
Visual によってサポートされる既定のビジュアル テスト アクションの他に、このクラスのオブジェクトは次のアクションをサポートします。
アクション | 引数 | 説明 |
Close | <none> | ウィンドウを閉じます。 |
Maximize | <none> | ウィンドウを最大化して画面全体に表示します。 |
Minimize | <none> | ウィンドウを最小にしてアイコン化します。 |
Restore | <none> | ウィンドウを元のサイズに戻します。 |
Move | x:int, y:int | ウィンドウを画面上の絶対ピクセル位置 (x, y) に移動します。 |
Resize | width:int, height:int | ウィンドウのサイズを、幅 width および高さ height (ピクセル単位) に変更します。 |
すべての
Visual によってサポートされる既定のビジュアル テスト プロパティの他に、このクラスのオブジェクトは次のビジュアル テスト プロパティをサポートします。
プロパティ | 説明 |
maximizable:bool | ウィンドウを最大化できるかどうかを示します。 |
maximized:bool | ウィンドウが最大化されているかどうかを示します。 |
minimizable:bool | ウィンドウを最小化できるかどうかを示します。 |
minimized:bool | ウィンドウが最小化されているかどうかを示します。 |
resizable:bool | ウィンドウのサイズを変更できるかどうかを示します。 |
title:String | ウィンドウのタイトル。 |
コンストラクタ public | {View.default} |
アクセサ public final View.active?:
bool
アクセサ public final View.destroyed?:
bool
ローカル オプション public View.height:
any
アクセサ public View.style-element:
String
test-description: | ビジュアル テスト インフラストラクチャがこのオブジェクトの説明に使用する名前。エンド ユーザーはこの名前で視覚的にオブジェクトを探すことができます。 |
アクセサ public View.test-description:#
String
test-type-name: | このオブジェクトをテストのメソッドとプロパティにマッピングするために、ビジュアル テスト インフラストラクチャが使用するタイプ名。 |
アクセサ public View.test-type-name:
String
ローカル オプション public View.width:
any
アクセサ public final View.window-enabled?:
bool プロパティ 継承 Graphic:
avoid-page-break?, 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, 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 プロパティ 継承 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-name, test-parent?, test-visible?, tooltip, user-data
public | {View.center-view reference-view:#View = {View.get-default-owner} }:void |
protected | {View.change-height hspec:any}:void |
protected | {View.change-width wspec:any}:void |
public | {View.destroy}:void |
public | {View.dispatch-event-to-contents e-in:Object}:void |
draw: | このオブジェクトの可視表現を描画します。 |
public | {View.find-test-children}:void |
public | {View.get-position-in-display}:(Distance, Distance) |
public | {View.get-test-parent}:#Visual |
public | {View.get-test-property name:String}:any |
lower: | View をウィンドウ スタックの底に移動します。 |
public | {View.prepare-test-parent}:bool |
public | {View.propagate-request-layout epoch:int}:void |
raise: | View をウィンドウ スタックの一番上に移動します。 |
public | {View.request-draw-rect-in-root rect:GRect}:void |
public | {View.request-pointer-trace}:void |
public | {View.set-icon}:void |
public sealed | {View.set-opacity opacity:double}:void |
public | {View.set-topmost topmost?:bool}:void |
protected | {View.set-view-size new-width:int, new-height:int}:void |
protected | {View.set-view-size-options new-width-in-pixels:int,new-height-in-pixels:int }:(width:Distance, height:Distance) |
public | {View.set-window-position-and-size}:void |
public | {View.show force-on-display?:bool = true,center?:bool = false }:void |
test-run: | オブジェクトに対してビジュアル テスト アクションを実行します。 |
update: | 再ペイント イベント ハンドラと同様の作業を行うことにより、View を直ちに更新します。 |
public | {View.update}:void |
メソッド 継承 GuiRangeSelectionContext:
create-command, note-dragscroll-continued, note-dragscroll-started, note-selection-context-activated, note-selection-context-deactivated, on-drag-started, on-pointer-press, on-pointer-release, overdraw-selected-leaf, overdraw-selection, select, select-all, select-nothing メソッド 継承 RootFrame:
compute-default-bounds, compute-default-bounds-recur, compute-initial-size, fire-event-in-envelope, get-bounds, get-elastic-bounds-into, get-layout-context, get-nonparent-bounds-into, get-top-left-in-ancestor, get-visible-bounds-into, get-visible-rect-in-root-into, request-draw, request-draw-rect, set-layout, set-size-from-child, validate-layout, validate-layout-recur メソッド 継承 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 メソッド 継承 GuiEventTarget:
handle-delegate-event, handle-event, on-action, on-command-changed, on-commit, on-composition-change-event, on-composition-result-event, on-current-record-change-request, on-current-record-changed, on-destroy-notify, on-destroy-requested, on-drag-over, on-drag-pointer, 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-gui-event, on-input-method-event, on-key-event, on-key-press, on-pointer-button, on-pointer-event, 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-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, remove-event-handlers-for-event-class メソッド 継承 BaseFrame:
add-internal, after-reposition, allocate-layout-object, before-reposition, compute-child-bounds, compute-parent-elastic, constrain-height, constrain-width, 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, register-options, set-size メソッド 継承 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, on-drag-enter, on-inspection, on-pointer-enter, option-changed, paint-with-decorations, replace-with, search-next, search-prev, start-pagination, xy-offset-to メソッド 継承 Visual:
add-from-init-args, animate, change-cursor, clonable-appearance?, clone-appearance, get-focus-manager, 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, push-cursor, quantize-width, refresh-style-options, release-key-focus, request-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
(コンストラクタ)
View を初期化します。
owner: 新しく作成された
View のオーナー
View を指定します。
オーナーが指定されていない場合、
GuiManager は可能な限り既定のオーナーを選択します。
View がオーナーを持たない場合は null を使用します。
View が別の
View により所有されている場合、特定操作の動作が変更されます。たとえば、オーナー
View が
View.destroy を使用して破棄される場合、これが所有している
View もすべて破棄されます。所有される
View は、そのオーナーの後ろに配置することはできません。また、タスク バーに表示されません。
center?: この
View が、そのオーナー
View (存在する場合) の上で中央揃えで配置されるかどうかを指定します。既定では、中央に配置されません。
オーナーが
null の場合、
View は画面の上部 2 分の 3 で、中央に配置されます。
resizable?:
decorations?とtakes-focus?がfalseの場合、このフラグは無視され、ユーザーのアクションでViewをリサイズすることは出来ません。
trueの場合は、Viewはリサイズすることが出来ます。そうでなければ、ユーザーのアクションでViewをリサイズすることは出来ません。既定ではこの値は、true です。
standard-accelerators?: true の場合、基本的なアクセラレータはこの
View のアクセラレータ テーブルに追加されます。基本的なアクセラレータには、切り取り (Ctrl+X)、コピー (Ctrl+C)、貼り付け (Ctrl+V)、全選択 (Ctrl+A)、検索 (Ctrl+F) が含まれます。Mac では、Ctrl は Command によって置き換えられます。(
StateMask をご参照ください。)
decorations?:
タイトルバーやウィンドウの縁がない
Viewを作成するには、
decorations? = falseを指定します。
非特権アプレットで表示されるデコレーションがないViewには制限があります。それらは:
- 両軸で画面上のピクセルの80パーセントを超える範囲をViewが覆うことは許可されません。
- 常に 1px の境界で囲まれます。
- View.visibility をWindowVisibility.maximizedに設定することは、visibility をWindowVisibility.normalに設定するのと同じになります。
takes-focus?:
Viewがフォーカスを受け取るかどうかを指定します。このフラグは、
decorations?が
trueの場合無視されます。
visibility:
デコレーションがない、非特権アプレットでは、visibilityをWindowVisibility.maximizedに設定することは、WindowVisibility.normalに設定するのと同じになります。
注意事項
構築されるビューの幅と高さが、ホストにおけるウィンドウの最小幅または最小の高さよりも小さい場合、ビューはホストの最小幅または最小の高さを用いて構築されます。ここで
center? 引数が
true の場合、ビューは正しく中央揃えで表示されないことがあります。
追加の残余引数には次が含まれる可能性があります。
- View における初期のグラフィカルな子として追加されるオブジェクトです。
- View で発生する可能性のある Event のダイナミック イベント ハンドラです。
- View に最初に設定されるオプションです。
(アクセサ)
アクセサ public final View.active?:
bool このViewに関連したWindowが、アクティブウィンドウの時、trueを返します。
注意事項
ホスト キーボード フォーカスを持っている時に、
Windowはアクティブになります。子
Windowは、ホスト キーボード フォーカスを持っている時か、トップレベルのウィンドウの子の1つがホスト キーボード フォーカスを持っている時にアクティブになります。
導入:
バージョン 7.0
(アクセサ)
アクセサ public final View.destroyed?:
bool View が破棄されているかどうかを示します。
説明
View は破棄されてもオブジェクトとして存続しますが、これに関連付けられたウィンドウは無効になります。したがって、ウィンドウに関与する
View 上の操作 (例 :
get-position-in-display) はすべてエラーになります。
注意事項
状況によっては、オペレーティングシステムが
WindowClose イベントを送信することなくウィンドウを破棄する可能性があります。しかし、
DestroyNotify イベントが送られ、
destroyed? は true になります。結果的に、
View の外部要因によって
View を操作する場合は(たとえば、
Timer、別の
View にあるオブジェクトの
PointerPress など)、この操作の前に
destroyed? フラグを確認するようにしてください。
(ローカル オプション)
(アクセサ)
(アクセサ)
アクセサ public View.style-element:
String スタイリングの目的のための、この Visual の "要素" や "型" です。
説明
オーバーライド
Visual のサブクラスのスタイルが他のオブジェクトと異なる場合、このゲッターは適切な文字列を返すようにオーバーライドされる必要があります。 慣例では,この文字列はクラス名または、オブジェクトを生成するマークアップの名前です。
オーバーライドでは、空の文字列でないかぎり、self._style-elementを返さなければなりません。
導入:
バージョン 6.0
(アクセサ)
アクセサ public View.test-description:#
String ビジュアル テスト インフラストラクチャがこのオブジェクトの説明に使用する名前。エンド ユーザーはこの名前で視覚的にオブジェクトを探すことができます。
説明
これは、ビジュアル テスト インフラストラクチャを実行するテスト ツールのユーザー インターフェイスに表示される値です。
既定では、この値はこのオブジェクトを参照する
Label (ある場合) を探して取得されます。独自の説明が設定されているオブジェクトは、このメソッドをオーバーライドする必要があります。たとえば、
CommandButton には内部の
Label が含まれているため、その Lavel の値を返します。
(アクセサ)
アクセサ public View.test-type-name:
String このオブジェクトをテストのメソッドとプロパティにマッピングするために、ビジュアル テスト インフラストラクチャが使用するタイプ名。
説明
ビジュアル テストを正しく実行するには、テストは次のいずれかのタイプでなければなりません。特定のテスト タイプの詳細については、リストされている実装例の test-run および get-test-property メソッドの説明を参照してください。
オブジェクトのセマンティクスに近い、いずれかの定義済みテスト タイプの使用を検討してください。ただし、テスト タイプを変更せずにオブジェクトにテストのアクションとプロパティを追加する方が簡単な場合もあります。
(アクセサ)
(アクセサ)
よりきめ細かいタッチ入力がこの View で可能なのかどうか。およびどのような方法で可能かを表します。
説明
このプロパティは View における個々のタッチの接触点の情報を取得可能かどうかを表します。
注意事項
導入:
バージョン 8.0
(アクセサ)
この View と関連したウィンドウの可視性を取得または設定します。
説明
注意事項
幾つかのウィンドウ マネージャは、全ての
WindowVisibilityオプションをサポートしません。例えば、所有者がいる
Viewのvisibilityを
WindowVisibility.minimizedに設定することは、一部のウィンドウ マネージャでは無効です。
非特権アプレットにおけるトップレベルのデコレーションがない
Viewでは、visibility を
WindowVisibility.maximizedに設定することは、visibility を
WindowVisibility.normalに設定するのと同じになります。
(ローカル オプション)
View の幅を制御します。
説明
このオプションの値は、
Quantity または数字でなくてはなりません。値が数字の場合、値は幅をポイント単位で指定するように解釈されます (1/72 インチ)。このオプションは、
View の作成時に引数リストで指定できます。この場合、ウィンドウの最初の幅が制御されます。また、これは後に新しい値に設定することができます。これにより、ウィンドウは次の例で示されるようにサイズ変更されます。
例 |
|
{value
let w:Distance = 3in
let h:Distance = 2in
let v:View =
{View width=w, height=h, {RectangleGraphic width=1in, height=1in}}
{HBox
spacing=3pt,
{CommandButton label="Show View",
{on Action do
{v.show}
}},
{CommandButton label="Wider",
{on Action do
set w = w + 1in
set v.width = w
}},
{CommandButton label="Taller",
{on Action do
set h = h + 1in
set v.height = h
}}}
}
| |
(アクセサ)
アクセサ public final View.window-enabled?:
bool この View に関連付けられた Window が入力を受け取ることができる場合は true を返します。
注意事項
(クラス変数)
TextField のコンテキスト メニューを作成するのに使用されるプロシージャです。
導入:
バージョン 6.0
(クラス変数)
View のコンテキスト メニューを作成するのに使用されるプロシージャです。
導入:
バージョン 6.0
(メソッド)
Frame に子アイテムを追加します。
注意事項
Frame.add にはキーワード パラメータ
replace? もあります。
replace? が true の場合、
Frameが直前に保持していた子があれば、それが
g に置き換えられます。
replace? が false (既定) の場合、子を保持している
Frame でこのメソッドを呼び出そうとするとエラーが発生します。
戻り値
追加された実際の値。追加された
Graphic のサブタイプになります。
オーバーライド
子の追加にさらに別の処理を関連付けることができるように、
Frame のサブクラスでオーバーライドできます。この種のオーバーライド メソッドは、以下を呼び出す必要があります。
{super.add g, ...}これで、
Frame 自体の追加アクションを呼び出し、
replace? 引数が指定されている場合は、この引数とともに渡します。
(メソッド)
最後のレイアウト ネゴシエーションが完了してから、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 状態に設定する必要があります。
プログラミング注意事項
オーバーライド
(メソッド)
public | {View.center-view reference-view:#View = {View.get-default-owner} }:void |
View を移動して、それが別の View のクライアント エリアを基準とし、中央に配置されるようにします。
reference-view:
このビューを中央揃えで配置する、他の
View です。これが null の場合、
View は現在のウィンドウ表示の上部 3 分の 2 で、中央に配置されます。
reference-view の指定がない場合、
GuiManager によって既定の
View が選択されます (可能な場合)。
(メソッド)
protected | {View.change-height hspec:any}:void |
高さ指定の変更を処理します。
hspec: 新しい高さ指定。
プログラミング注意事項
オーバーライド
サブクラスは、通常オーバーライドで super.change-height を呼び出す必要があります。
(メソッド)
protected | {View.change-width wspec:any}:void |
幅指定の変更を処理します。
wspec: 新しい幅指定。
プログラミング注意事項
オーバーライド
サブクラスは、通常オーバーライドで super.change-width を呼び出す必要があります。
(メソッド)
View を適切に閉じます。
説明
このメソッドは、ユーザーが、数多くのウィンドウで表示される "x" ボタンなどの、ウィンドウ マネージャ アイコンを使用して、ウィンドウを閉じようとすると呼び出されます。これにより、この
View で
WindowClose イベントが発生します。このメソッドを呼び出すと、"x" ボタンを押したときの動作が模倣されます。
WindowClose に対する
View の既定ハンドラは、
View.destroy を呼び出すことにより
View を破棄します。
View を閉じる方法を変更する場合、たとえばウィンドウを破棄するのではなく、非表示にする場合 (
View.hide を使用することにより)、次を実行できます。
- 代替の閉じるアクションを使用して WindowClose イベント ハンドラを View にアタッチし、
- そのイベント ハンドラにイベントを消費させます (GuiEvent.consume を呼び出すことにより)
これを実行すると、
View は通常の閉じる動作 (自己の破棄も実行する) を
実行しません。
オーバーライド
このメソッドをオーバーライドすることは、通常推奨されません。ウィンドウを閉じる要求を妨害するには、このメソッドが発生する
WindowClose イベントのイベント ハンドラを追加することがより良い代替策です。
(メソッド)
public | {View.destroy}:void |
(メソッド)
public | {View.dispatch-event-to-contents e-in:Object}:void |
選ばれた View で、GuiWindowEvent を起動するために GuiManager によって使用されます。
e-in: 起動するイベントです。
注意事項
プログラミング注意事項
このメソッドは一般的に他の用途は意図されていません。ただし、呼び出すことで役立つ場合は、呼び出される可能性があります。
導入:
バージョン 6.0
(メソッド)
このオブジェクトの可視表現を描画します。
注意事項
非特権アプレットにおいて、デコレーションのない
View は 1 ピクセルの "raise" のボーダーを持ちます。それは
View のクライアント領域の内側に描画されます。このボーダーは
View のコンテンツが描画された後に描画されます。
(メソッド)
public | {View.find-test-children}:void |
フィルタに基づいてテストの子を蓄積します。
children: 配列。フィルタを渡すテストの子はこの配列に追加されます。
filter: 引数としてテストの子を受け取り、子が許可されるかどうかを示す論理値を返すプロシージャ。
注意事項
(メソッド)
親ビューを基準とした、この View の位置を取得します。
戻り値
x および y は、親ビューの左上隅からビューの左上隅までオフセット設定します。
注意事項
(メソッド)
public | {View.get-position-in-display}:(Distance, Distance) |
表示の左上隅を基準とした、この View の位置を取得します。
説明
X ウィンドウでは、左上隅の座標が使用不可能なため、このメソッドは現在クライアント エリア (ウィンドウにおける、タイトルとフレームを除いた長方形のエリア) の左上隅の位置を返します。
戻り値
x および y は、表示の左上隅から View の左上隅までオフセットします。
(メソッド)
この View の幅と高さを取得します。
戻り値
注意事項
(メソッド)
public | {View.get-test-parent}:#Visual |
テストの親でもあるビジュアルな祖先を返します。
注意事項
オーバーライド
通常はオーバーライドされません。
(メソッド)
public | {View.get-test-property name:String}:any |
このオブジェクトのテスト プロパティ値を返します。
説明
既定の実装では、リフレクションを使用してオブジェクトの実行時プロパティの値を取得します。プロパティを実行時のインターフェイスではなくテスト環境に追加する場合は、サブクラスでこのメソッドをオーバーライドする必要があります。
注意事項
(メソッド)
この View に関連するウィンドウの可視性を取得します。
説明
非推奨
(メソッド)
親ビューを基準とした、この View の位置を取得します。
説明
View が親ビューを持たない場合、このメソッドは表示の左上隅を基準とし、View の位置を返します。
X ウィンドウでは、左上隅の座標が使用不可能なため、このメソッドは現在クライアント エリアの左上隅の座標を返します。クライアント エリアはウィンドウにおける、タイトルとフレームを除いた長方形のエリアです。
戻り値
x および y は、親ビューの左上隅からビューの左上隅までオフセット設定します。
(メソッド)
View の幅、高さ、位置を取得します。
注意事項
(メソッド)
(メソッド)
(メソッド)
View をウィンドウ スタックの底に移動します。
説明
View が
最上位ウィンドウとして指定されていない場合 (
View.set-topmost を呼び出すことにより)、 これは全ウィンドウの一番下に移動されます。これが最上位ウィンドウである場合、
View は最上位ウィンドウの一番下に移動されます。
注意事項
(メソッド)
(メソッド)
(メソッド)
(メソッド)
(メソッド)
public | {View.prepare-test-parent}:bool |
このオブジェクトをテストの親として準備します。
説明
オーバーライド
オーバーライド メソッドでは、実装の先頭部分で {super.prepare-test-parent} を呼び出す必要があります。
(メソッド)
public | {View.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 などのクラスでもオーバーライドされます。この場合、レイアウト要求を記録し、新しいレイアウト ネゴシエーションに合わせて整列させるコードによってメソッドがオーバーライドされます。
(メソッド)
View をウィンドウ スタックの一番上に移動します。
説明
(
View.set-topmost を呼び出すことにより)
View が
最上位ウィンドウとして指定されていない場合、 これは非最上位ウィンドウの一番上に移動されます。これが最上位ウィンドウである場合、
View は全ウィンドウの一番上に移動されます。
注意事項
(メソッド)
public | {View.request-draw-rect-in-root rect:GRect}:void |
RootFrame の座標系にすでに存在する GRect によって記述される領域の再ペイント処理を要求します。
説明
再ペイントされる領域は、グラフィカル階層のルートの座標系に関連して記述されます。
プログラミング注意事項
(メソッド)
public | {View.request-pointer-trace}:void |
表示されたオブジェクトの幾何形状が変更されていることを宣言し、必要な PointerCrossing イベントの発生を要求します。
説明
オーバーライド
ポイント (x,y) を含む子オブジェクトの識別に (x,y) の位置をマップする、キャッシュされた状態を格納する
SequenceBox のようなサブクラスによってオーバーライドできます。こうした状態はリセットして、グラフィック階層のオブジェクトの幾何形状が変更されても新しい
PointerEnvelopeEvent が適切に送信されるようにします。このメソッドをオーバーライドする場合、オーバーライド メソッドには以下の呼び出しを含めます。
{super.request-pointer-trace}
(メソッド)
public | {View.set-icon}:void |
View にアイコンを設定します。
large-icon: より大きなアイコン (32x32 ピクセル) が必要な場合に使用されるイメージです。
small-icon-if-used: 非
null の場合、これが、
View の表題に表示される可能性のあるアイコンになります。 もし、
null である場合、
View の表題からそのアイコン(存在する場合)を取り除く可能性があります。
注意事項
特権の無い
View でこのメソッドを呼び出しても何も起こりません。
注意事項
small-icon を使用しないウインドウシステムもあります。
View の表題にアイコンを表示しないものもあります。 これは基本的にウインドウシステムによって違います。
(メソッド)
public sealed | {View.set-opacity opacity:double}:void |
View の不透明度を設定します。
opacity:
この View の不透明度です。
0 (完全な透明) から 1 (不透明)の範囲となります。0 より小さい場合は、0 として扱われ、1 より大きい場合は、1 として扱われます。
注意事項
非特権アプレットでは、不透明度は常に0.50以上になります。
この機能は、WindowsXP以上とMacプラットフォームでだけサポートされます。他のプラットフォームでは効果がありません。
導入:
バージョン 6.0
(メソッド)
親ビューを基準とし、この View の位置を設定します。
x, y: 親ビューの左上隅を基準とした、View の左上隅の新しい座標です。この View が親ビューを持たない場合、 (x, y) は表示の左上隅を基準とします。
注意事項
(メソッド)
この View を描画するのに使用される Renderer2d の型を変更します。
rendering-mode: この View に関する新しい RenderingMode です。
戻り値
rendering-mode がこのプラットフォームでサポートされている場合、true になります。
説明
これは
set-rendering-mode に似ていますが、これはこの
View にのみ影響を与えます。グローバルな
set-rendering-mode が次に呼び出されると、この
View に影響を与えますが、それまでの
View.set-rendering-mode の呼び出しをオーバーライドすることに注意してください。
この値を変更すると、 View のレイアウトが発生します。レンダリング モードの変更は、Curl のイベント ループが走った後に発生します。;これによって View.set-rendering-modeがレイアウトや描画中であっても安全に呼び出されます。
プラットフォームによって異なるサポートされているモードの詳細情報や、レンダリングモードの詳細情報に関しては、
RenderingMode を参照してください。
注意事項
導入:
バージョン 6.0
(メソッド)
この View のタイトル バーに、タイトルを設定します。
caption: 表示されるタイトルです。
注意事項
(メソッド)
public | {View.set-topmost topmost?:bool}:void |
この View を最上位ウィンドウとして設定または設定解除します。
説明
最上位ウィンドウとして指定される View は、その他の (非最上位) ウィンドウ (他の (Curl 以外の) アプリケーションのウィンドウも含む) の上に浮動します。View を最上位ウィンドウにするには、このメソッドを呼び出し、その引数として true を提供します。最上位ウィンドウは、このメソッドが false の引数で呼び出されるまで、1 つのままです。
topmost?: true の場合、この View は最上位ウィンドウになります。false の場合、この View は非最上位ウィンドウになります。
注意事項
View を、そのカテゴリーのウィンドウ スタックの一番上 (
View.raise を呼び出すことにより) または一番下 (
View.lower を呼び出すことにより) に移動します。つまり、最上位ウィンドウは、すべての最上位ウィンドウの一番上または一番下に移動することができ、非最上位ウィンドウは、すべての非最上位ウィンドウの中で同じことを行えます。
(メソッド)
この View のタッチ入力モードを設定します。
説明
注意事項
戻り値
操作が成功した場合は true、そうでない場合は false
導入:
バージョン 8.0
(メソッド)
protected | {View.set-view-size new-width:int, new-height:int}:void |
View のデータ構想を、新しく指定された値 (ピクセルで測定される) と一貫するように、更新します。
new-width, new-height:
View が、関連
Window の境界を表すために使用するサイズです (ピクセル単位)。
説明
プログラミング注意事項
この機能を安全に使用するためには、
View がサイズ変更計算をどのように実行するかについての幅広い知識が要求されます。
(メソッド)
protected | {View.set-view-size-options new-width-in-pixels:int,new-height-in-pixels:int }:(width:Distance, height:Distance) |
View のサイズ オプションと、仮定の Window サイズを同期化します。
new-width, new-height:
View が、関連
Window の境界を表すために使用するサイズです (ピクセル単位)。
説明
この
View の
height と
width オプションを、このメソッドの引数として与えられた値 (ピクセル単位) を使って設定します。オプションの設定値 (ポイント単位) を返します 。
プログラミング注意事項
この機能を安全に使用するためには、
View がサイズ変更計算をどのように実行するかについての幅広い知識が要求されます。
(メソッド)
親ビューを基準とし、この View の位置を設定します。
x, y: 親ビューの左上隅を基準とした、View の左上隅の新しい座標です。この View が親ビューを持たない場合、 (x, y) は表示の左上隅を基準とします。
オーバーライド
通常はオーバーライドされません。
(メソッド)
public | {View.set-window-position-and-size}:void |
View の幅、高さ、位置を設定します。
注意事項
(メソッド)
region によってこの View の形を変更します。
説明
このメソッドはデコレートされていないトップレベルの View でしか呼び出せません。View がタイトルバーやボーダーを持っているか子ウィンドウの場合このメソッドは例外をスローします。
shape: Viewの形状、座標は、Viewの起点(左上隅)と関連して解釈されます。このパラメータが nullの場合、Viewの形状は、通常の境界にリセットされます。
注意事項
形は View のサイズに制約を受けます。すなわち、 View に表示された形は View の領域と region との重なり合った部分になります。この重なり合った部分は View のサイズや形が変わるたびに再計算されます。
このメソッドが呼ばれるときは形が変更される時のみです。ウィンドウのイベントが処理されるまで、形が実際に変わりません。実際、遅れは非常に小さいのでこれは重要ではありません。
導入:
バージョン 7.0
(メソッド)
View のサイズを変更します。
width: 新しい幅。
height: 新しい高さ。
説明
この
View が実際にこの値にサイズ変更するという保証はありません。
(メソッド)
public | {View.show force-on-display?:bool = true,center?:bool = false }:void |
View を表示します。
説明
View が表示されない状態で作成される場合、表示するためにこのメソッドが呼び出されます。View が最小化されている場合、既定の位置に再配置されます。最大化されている場合、最大化されたままになります。
View を見えるようにしても、ウィンドウの一番上に表示されないかもしれません。しかし、visibility を前の段落で記述したように WindowVisibility.normal や WindowVisibility.maximized に変更します。
force-on-display?: true の場合、そのロケーション座標がビューを完全に表示の外に配置する場合でも、View は表示に移動されます。この場合、View の位置は、これが一旦表示されると変更されます。force-on-display は、ビューがホスト プラットフォームによりサポートされている場合にのみ機能します。
center?: この View が、そのオーナー View (存在する場合) の上で中央揃えで配置されるかどうかを指定します。既定では、中央に配置されません。
オーナーが null の場合、この View は画面の上部 2 分の 3 で、中央に配置されます。
(メソッド)
オブジェクトに対してビジュアル テスト アクションを実行します。
action: 実行するアクションの名前。
args: ビジュアル テスト アクションの引数。ビジュアル テスト インフラストラクチャは、引数の数と型をチェックしますが、値はチェックしません。実装では、すべての有効な値を処理し、不正な値に対しては例外またはエラーをスローするようにしてください。
説明
そのクラスによってサポートされたテスト動作のリストについてクラスのドキュメントを御読み下さい。
既定の実装では、RawClick などの一般的な操作を処理し、action が既知のアクションに一致しない場合にはリフレクションを使用してメソッドを呼び出します。
注意事項
QuickTest Property™ のビジュアル テスト環境では、任意の実行時メソッドを直接呼び出せません。代わりに CallMethod アクションを使用して、最初の引数としてメソッド名を渡してください。ビジュアル テスト インフラストラクチャは、CallMethod アクションを実際のアクションに変換してから test-run を呼び出します。
注意事項
オーバーライド
新しいテスト アクションを追加するには、action と新しいアクションの名前を照合します。一致する場合は、引数を処理してアクションを実行し、適切なタイプの値 (戻り値がない場合は null) を返します。action が新しいテスト アクションに一致しない場合は、super.test-run を呼び出します。
(メソッド)
特定の TouchInputMode がこの View でサポートされるかどうか。
注意事項
戻り値
サポートされる場合は true、そうでない場合は false
導入:
バージョン 8.0
(メソッド)
public | {View.update}:void |
再ペイント イベント ハンドラと同様の作業を行うことにより、View を直ちに更新します。
説明
この View に関連するウィンドウは、再ペイント イベントが処理された場合と同様に、再ペイントされます。レイアウトが最新でない場合、これは算出し直されます。
注意事項
このメソッドがイベント ハンドラ内から呼び出され、このメソッドが新しいレイアウトを強制する場合は、処理されるイベントの x、y 座標は無効になります。