Window (クラス)
public abstract sealed Window {inherits Drawable, EventTarget, WindowEventCache}
パッケージ: CURL.GRAPHICS.WINDOW

Window クラスは Display でウィンドウを表します。

説明

WindowDrawable のサブクラスなのでレンダリングが可能です。システムによって異なるさまざまな種類のウィンドウが存在しますが、すべてのウィンドウには共通インターフェイスが提供されているので特定の種類を扱う必要はありません。この Window クラスにはウィンドウのプロパティとそれらを操作するメソッドが含まれています。

ウィンドウを作成するには Window.create-window#factory ファクトリーを呼び出します。

詳細は create-window メソッドの引数を参照してください。

Window ベースのイベント ハンドラに関する詳細は、WindowEvent クラスを参照してください。

注意事項

Window が不要になったら、Window.destroy を呼び出して必ずこれを破棄してください。これには CloseWindowEvent のイベント ハンドラがよく使われます。

コンストラクタ
create-activex-container:ActiveX ウィンドウを作成します。
ファクトリ public {Window.create-activex-container
title:#String = null,
parent:#Window = null,
parent-host-window-id:HostWindowID = HostWindowID.none,
owner:#Window = null,
owner-host-window-id:HostWindowID = HostWindowID.none,
x:Distance = 0m,
y:Distance = 0m,
width:Distance = 8cm,
height:Distance = 8cm,
resizable?:bool = true,
visibility:WindowVisibility = WindowVisibility.normal,
default-event-handlers:{Array-of EventHandler} = empty-EventHandler-array,
xobj:#any = null
}:Window
create-child-window-from-parent:既存の Window に含まれる子として Window を作成します。
ファクトリ public {Window.create-child-window-from-parent
parent:Window,
x:Distance = Window.create-window-default-x,
y:Distance = Window.create-window-default-y,
width:Distance = Window.create-window-default-width,
height:Distance = Window.create-window-default-height,
visibility:WindowVisibility = WindowVisibility.normal,
host-rendering?:bool = false,
advanced-draw-operations?:bool = false,
default-event-handlers:{Array-of EventHandler} = empty-EventHandler-array
}:Window
create-owned-window-from-parent:既存の Window によって所有される Window を作成します。
ファクトリ public {Window.create-owned-window-from-parent
owner:Window,
title:#String = null,
x:Distance = Window.create-window-default-x,
y:Distance = Window.create-window-default-y,
width:Distance = Window.create-window-default-width,
height:Distance = Window.create-window-default-height,
resizable?:bool = true,
visibility:WindowVisibility = WindowVisibility.normal,
decorations?:bool = true,
acts-like-menu?:bool = false,
host-rendering?:bool = false,
advanced-draw-operations?:bool = false,
default-event-handlers:{Array-of EventHandler} = empty-EventHandler-array
}:Window
create-window:Window を作成します。
ファクトリ public {Window.create-window
title:#String = null,
x:Distance = Window.create-window-default-x,
y:Distance = Window.create-window-default-y,
width:Distance = Window.create-window-default-width,
height:Distance = Window.create-window-default-height,
resizable?:bool = true,
visibility:WindowVisibility = WindowVisibility.normal,
decorations?:bool = true,
acts-like-menu?:bool = false,
host-rendering?:bool = false,
advanced-draw-operations?:bool = false,
default-event-handlers:{Array-of EventHandler} = empty-EventHandler-array
}:Window

プロパティ
dirty-rectangle-set:ウィンドウのダーティな四角形のセットを返します。
アクセサ protected sealed Window.dirty-rectangle-set:RectangleSet
dirty-rectangle-set-empty?:ダーティな四角形セットが空であるかどうか確認します。
アクセサ public final Window.dirty-rectangle-set-empty?:bool
drag-drop-callback:この Window でドラッグ アンド ドロップのドロップが実行されると DragDropCallback が呼び出されます。
フィールド public Window.drag-drop-callback:#DragDropCallback
drag-enter-callback:ドラッグ アンド ドロップ操作の間にマウス ポインタがこの Window に入ると DragEnterCallback が呼び出されます。
フィールド public Window.drag-enter-callback:#DragEnterCallback
drag-leave-callback:ドラッグ アンド ドロップ操作の間にマウス ポインタがこの Window から出ると DragLeaveCallback が呼び出されます。
フィールド public Window.drag-leave-callback:#DragLeaveCallback
drag-motion-callback:この Window で実行されたドラッグ アンド ドロップ操作の間にマウス ポインタが移動するときに DragMotionCallback が呼び出されます。
フィールド public Window.drag-motion-callback:#DragMotionCallback
resolution:Drawable のデバイスの解像度。この値は指定の距離を占めるピクセルの数を示します。dpi (dots per inch) は Resolution の単位です。
アクセサ public sealed Window.resolution:FloatResolution
touch-input-enabled?:個別のタッチでの接触点の認識が Window に対して有効になっているかを表します。
アクセサ public Window.touch-input-enabled?:bool
touch-input-supported?:個別のタッチでの接触点が Window で認識出来るかを表します。
アクセサ public Window.touch-input-supported?:bool
visibility:この Window の可視性状態を示す WindowVisibility フラグ。
フィールド protected Window.visibility:WindowVisibility
プロパティ 継承 Drawable: destroy-handled?, destroy-observed?, destroy-requested?, forced-redraw-handler, height, width
プロパティ 継承 EventTarget: event-handlers

クラス プロシージャ
common-ancestor:2 つのウィンドウでより近いウィンドウの祖先 (window-ancestor) を検索します。
public {Window.common-ancestor
window0:#Window,
window1:#Window
}:#Window
is-superior?:ab のウィンドウの祖先 (window-ancestor) である場合、true を返します。
public {Window.is-superior? a:Window, b:Window}:bool

メソッド
capture-pointer:ポインタを明示的にキャプチャします。
public abstract {Window.capture-pointer}:bool
clear-dirty-rectangle-set:"ダーティーな" 四角形セットをクリアします。
public final {Window.clear-dirty-rectangle-set}:void
dirty-rectangle-set-clone:ダーティな四角形セットのコピーを作成し、返します。
public final {Window.dirty-rectangle-set-clone}:RectangleSet
disable-touch-input:この Window で、個別のタッチでの接触の認識 (TouchWindowEvent) を無効にします。
public {Window.disable-touch-input}:bool
disable-window:Window の入力を無効にします。
public sealed {Window.disable-window}:void
display-to-window-coordinate:ウィンドウの親 (window-parent) を基準としてウィンドウの位置を取得します。
public abstract {Window.display-to-window-coordinate
display-x:Distance,
display-y:Distance
}:(window-x:FloatDistance, window-y:FloatDistance)
enable-touch-input:この Window で、個別のタッチでの接触の認識 (TouchWindowEvent) を有効にします。
public {Window.enable-touch-input}:bool
enable-window:Window の入力を有効にします。
public sealed {Window.enable-window}:void
focus-window:このウィンドウがインプット フォーカスを得るように要求します。
public abstract {Window.focus-window}:void
force-window-on-screen:ウィンドウが画面上にあり、非表示または最小化にされないようにします。
public sealed {Window.force-window-on-screen
min-visible:Fraction = 70%,
move-all-onscreen?:bool = true
}:void
get-display:この Window に関連付けられている現在の Display を取得します。
public final {Window.get-display}:Display
get-window-position:Window の親を基準として現在のウィンドウの位置を取得します。
public abstract {Window.get-window-position
normal-position?:bool = false
}:(x:FloatDistance, y:FloatDistance)
get-window-size:現在のウィンドウサイズを返します。
public abstract {Window.get-window-size
normal-size?:bool = false
}:(width:FloatDistance, height:FloatDistance)
get-window-title:現在のウィンドウ タイトルを返します。
public abstract {Window.get-window-title}:#String
get-window-visibility:ウィンドウの現在の可視状態を取得します。
public {Window.get-window-visibility}:WindowVisibility
handle-event:適切な EventHandlers を呼び出してイベントを処理します。
public final {Window.handle-event event:Event}:void
invalidate-rect:ダーティな四角形セットに四角形を追加します。
public sealed {Window.invalidate-rect}:void
invalidate-rect-float:ダーティな四角形セットに四角形を追加します。
public sealed {Window.invalidate-rect-float}:void
lower-window:ウィンドウ順序の最後、つまり他のすべてのウィンドウの背後にこのウィンドウを移動します。
public abstract {Window.lower-window}:void
raise-window:ウィンドウ順の先頭、つまり他のすべてのウィンドウの前面にこのウィンドウを移動します。
public abstract {Window.raise-window}:void
release-pointer:現在キャプチャされたポインタを離します。
public abstract {Window.release-pointer}:void
request-update:後で他のイベントが保留中でなくなったときにウィンドウの更新 (update-window) が実行されるように要求します。
public sealed {Window.request-update}:void
set-cursor:この Window の現在の Cursor を設定します。
public abstract {Window.set-cursor cursor:CURSOR.Cursor}:void
set-opacity:Window の不透明度を設定します。
public final {Window.set-opacity opacity:FloatFraction}:void
set-shape:region によってこの Window の形を変更します。
public final {Window.set-shape shape:#Region}:void
set-topmost:このウィンドウが最上位にあるかどうかを設定します。
public abstract {Window.set-topmost topmost?:bool}:void
set-window-position:Window の親を基準としてウィンドウの位置を設定します。
public abstract {Window.set-window-position}:void
set-window-size:指定したパラメータに Window のサイズを設定するように要求します。
public abstract {Window.set-window-size
width:Distance,
height:Distance
}:void
set-window-title:現在のウィンドウ タイトルを設定します。
public {Window.set-window-title title:#StringInterface}:void
set-window-visibility:ウィンドウの現在の可視状態を設定します。
public abstract {Window.set-window-visibility
visibility:WindowVisibility
}:void
swap-buffers:オフスクリーン レンダ バッファをディスプレイにコピーします。
public abstract {Window.swap-buffers area:#RectangleSet = null}:void
update-window:ウィンドウを更新します。
public sealed {Window.update-window}:void
window-to-display-coordinate:ディスプレイを基準としてウィンドウ位置を取得します。
public abstract {Window.window-to-display-coordinate
window-x:Distance,
window-y:Distance
}:(display-x:FloatDistance, display-y:FloatDistance)
メソッド 継承 Drawable: destroy, to-Pixmap
メソッド 継承 EventTarget: accepts-event-class?, add-event-handler, event-handler-present?, remove-event-handler, verify-event
メソッド 継承 BasicEventTarget: enqueue-event
メソッド 継承 Object: object-describe, object-describe-for-debugging, object-serialize



コンストラクタ詳細
create-activex-container (ファクトリ)
public {Window.create-activex-container
title:#String = null,
parent:#Window = null,
parent-host-window-id:HostWindowID = HostWindowID.none,
owner:#Window = null,
owner-host-window-id:HostWindowID = HostWindowID.none,
x:Distance = 0m,
y:Distance = 0m,
width:Distance = 8cm,
height:Distance = 8cm,
resizable?:bool = true,
visibility:WindowVisibility = WindowVisibility.normal,
default-event-handlers:{Array-of EventHandler} = empty-EventHandler-array,
xobj:#any = null
}:Window

ActiveX ウィンドウを作成します。

説明

作成された ActiveX ウィンドウは、ActiveX コントロールを格納できるウィンドウです。したがって、このファクトリーは Microsoft Window システムだけに関係しています。
title: ウィンドウのタイトルまたはキャプション。
parent: このウィンドウの親。 parent を指定しない場合、このファクトリーはトップレベルのウィンドウを作成します。
parent-host-window-id: SCSK 株式会社の社内限定使用となっています。使用しないでください。
x, y: 画面を基準にした、ウィンドウの左上隅に関する初期の水平および垂直オフセット。トップレベルのウィンドウの場合、これらの値はウィンドウ マネージャによって無視される場合があります。指定されていない場合は適正な値が使用されます。
width, height: ウィンドウの初期の幅および高さで、外部の装飾 (タイトル バーや境界線) を含みません
resizable?: 作成されたウィンドウのサイズをユーザーが変更できるかどうかを指定します。
visibility: 作成されたウィンドウの外観。有効な値は次のとおりです。
default-event-handlers: Window に関する EventHandler のリストを含む配列。既定ではイベント ハンドラはインストールされていません。有効なイベントのリストについては WindowEvent を参照してください。

注意事項

ActiveX ウィンドウで Renderer3d を取得しようとすると失敗します。
このファクトリーを呼び出せるのは特権アプレットだけです。
Window が不要になったら、Window.destroy を呼び出して必ずこれを破棄してください。 これには CloseWindowEvent のイベント ハンドラがよく使われます。


create-child-window-from-parent (ファクトリ)
public {Window.create-child-window-from-parent
parent:Window,
x:Distance = Window.create-window-default-x,
y:Distance = Window.create-window-default-y,
width:Distance = Window.create-window-default-width,
height:Distance = Window.create-window-default-height,
visibility:WindowVisibility = WindowVisibility.normal,
host-rendering?:bool = false,
advanced-draw-operations?:bool = false,
default-event-handlers:{Array-of EventHandler} = empty-EventHandler-array
}:Window

既存の Window に含まれる子として Window を作成します。

parent: 新しいウィンドウの親。新しいウィンドウは親に含まれ、親の境界によってクリップされます。親が破棄されると、すべての子も破棄されます。
x, y: 親の左上隅を基準にした、ウィンドウの左上隅に関する初期の水平および垂直オフセット。指定されていない場合は適正な値が使用されます。
width, height: ウィンドウの初期の幅と高さ。指定されていない場合は適正な値が使用されます。
visibility: 作成されたウィンドウの外観。子ウィンドウの有効な値は次のいずれかになります。
host-rendering?: true の場合、ウィンドウはホスト レンダラーを使用して作成されます。ホスト レンダラーの機能には限度がありますが、テキスト レンダリングを含む特定の操作に関しては性能が改善されています。
advanced-draw-operations?: true の場合、高度な DrawOperation をサポートするレンダラーを使ってウィンドウが作成されます。詳細は Renderer2d.create-offscreen または DrawOperation を参照してください。このフラグは Renderer2d がこの Window の機能のために作成される場合のみ効果が現れますが、特にテキスト レンダリングなどの一部の操作ではパフォーマンスの向上が見られます。
default-event-handlers: 子 WindowEventHandler のリストを含む配列。既定ではイベント ハンドラはインストールされていません。有効なイベントのリストについては WindowEvent を参照してください。

戻り値

作成された Window
参照: Window.create-window#factory, Window.create-owned-window-from-parent#factory.

注意事項

このファクトリーを呼び出せるのは特権アプレットだけです。
Window が不要になったら、Window.destroy を呼び出して必ずこれを破棄してください。これには CloseWindowEvent のイベント ハンドラがよく使われます。

例外のスロー

BadWindowException parent が以前に破棄された場合。


create-owned-window-from-parent (ファクトリ)
public {Window.create-owned-window-from-parent
owner:Window,
title:#String = null,
x:Distance = Window.create-window-default-x,
y:Distance = Window.create-window-default-y,
width:Distance = Window.create-window-default-width,
height:Distance = Window.create-window-default-height,
resizable?:bool = true,
visibility:WindowVisibility = WindowVisibility.normal,
decorations?:bool = true,
acts-like-menu?:bool = false,
host-rendering?:bool = false,
advanced-draw-operations?:bool = false,
default-event-handlers:{Array-of EventHandler} = empty-EventHandler-array
}:Window

既存の Window によって所有される Window を作成します。

title: ウィンドウのタイトルまたはキャプション。
owner: 新しいウィンドウのオーナー。新しいウィンドウはオーナーに含まれていませんが、オーナーが破棄されると所有するすべてのウィンドウも破棄されます。
x, y: 画面を基準にした、ウィンドウの左上隅に関する初期の水平および垂直オフセット。指定されていない場合は適正な値が使用されます。
width, height: ウィンドウの初期の幅および高さで、外部の装飾 (タイトル バーや境界線) を含みません
resizable?: 作成されたウィンドウのサイズをユーザーが変更できるかどうかを指定します。
visibility: 作成されたウィンドウの外観。所有ウィンドウの有効な値は次のいずれかになります。
decorations?: 作成するウィンドウが装飾部、つまりタイトル バーや境界線を持つかどうかを指定します。
acts-like-menu?: SCSK 株式会社の社内限定使用となっています。使用しないでください。
host-rendering?: true の場合、ウィンドウはホスト レンダラーを使用して作成されます。ホスト レンダラーの機能には限度がありますが、テキスト レンダリングを含む特定の操作に関しては性能が改善されています。
advanced-draw-operations?: true の場合、高度な DrawOperation をサポートするレンダラーを使ってウィンドウが作成されます。詳細は Renderer2d.create-offscreen または DrawOperation を参照してください。このフラグは Renderer2d がこの Window の機能のために作成される場合のみ効果が現れますが、特にテキスト レンダリングなどの一部の操作ではパフォーマンスの向上が見られます。
default-event-handlers: Window に関する EventHandler のリストを含む配列。既定ではイベント ハンドラはインストールされていません。有効なイベントのリストについては WindowEvent を参照してください。

戻り値

作成された Window
参照: Window.create-window#factory, Window.create-child-window-from-parent#factory.

注意事項

このファクトリーを呼び出せるのは特権アプレットだけです。
Window が不要になったら、Window.destroy を呼び出して必ずこれを破棄してください。これには CloseWindowEvent のイベント ハンドラがよく使われます。

例外のスロー

BadWindowExceptionowner が以前に破棄された場合。


create-window (ファクトリ)
public {Window.create-window
title:#String = null,
x:Distance = Window.create-window-default-x,
y:Distance = Window.create-window-default-y,
width:Distance = Window.create-window-default-width,
height:Distance = Window.create-window-default-height,
resizable?:bool = true,
visibility:WindowVisibility = WindowVisibility.normal,
decorations?:bool = true,
acts-like-menu?:bool = false,
host-rendering?:bool = false,
advanced-draw-operations?:bool = false,
default-event-handlers:{Array-of EventHandler} = empty-EventHandler-array
}:Window

Window を作成します。

title: ウィンドウのタイトルまたはキャプション。
x, y: 画面を基準にした、ウィンドウの左上端に関する初期の水平および垂直オフセット。指定されていない場合は適正な値が使用されます。
width, height: Window の初期の幅および高さで、外部の装飾 (タイトル バーや境界線) を含みません
resizable?: 作成されたウィンドウのサイズをユーザーが変更できるかどうかを指定します。
visibility: 作成されたウィンドウの外観。有効な値は次のとおりです。
decorations?: 作成するウィンドウが装飾部、つまりタイトル バーや境界線を持つかどうかを指定します。
acts-like-menu?: SCSK 株式会社の社内限定使用となっています。使用しないでください。
host-rendering?: true の場合、ウィンドウはホスト レンダラーを使用して作成されます。ホスト レンダラーの機能には限度がありますが、テキスト レンダリングを含む特定の操作に関しては性能が改善されています。
advanced-draw-operations?:
true の場合、高度な DrawOperation をサポートするレンダラーを使ってウィンドウが作成されます。詳細は Renderer2d.create-offscreen または DrawOperation を参照してください。
このフラグは use-host-rendering? が false の場合のみ設定してください。これは、ホスト レンダラーが使われる場合は最小限の DrawOperation のセットしかサポートされないためです。(use-host-rendering? = trueadvanced-draw-operations? = true の不正な組み合わせを指定すると例外がスローされます。)
default-event-handlers: Window に関する EventHandler のリストを含む配列。既定でイベント ハンドラはインストールされていません。有効なイベントのリストについては WindowEvent を参照してください。

戻り値

作成された Window
参照: Window.create-child-window-from-parent#factory, Window.create-owned-window-from-parent#factory.

注意事項

このファクトリーを呼び出せるのは特権アプレットだけです。
Window が不要になったら、Window.destroy を呼び出して必ずこれを破棄してください。これには CloseWindowEvent のイベント ハンドラがよく使われます。



プロパティ詳細
dirty-rectangle-set (アクセサ)
アクセサ protected sealed Window.dirty-rectangle-set:RectangleSet

ウィンドウのダーティな四角形のセットを返します。

説明

これは再ペイントが必要な Window での四角形の組み合わせです。


dirty-rectangle-set-empty? (アクセサ)
アクセサ public final Window.dirty-rectangle-set-empty?:bool

ダーティな四角形セットが空であるかどうか確認します。

戻り値

ダーティな四角形セットが空の場合、true を返します。それ以外の場合は false です。


drag-drop-callback (フィールド)
public Window.drag-drop-callback:#DragDropCallback

この Window でドラッグ アンド ドロップのドロップが実行されると DragDropCallback が呼び出されます。

注意事項

このフィールドは、WindowView と関連付けられている時には使用されません。Drop


drag-enter-callback (フィールド)
public Window.drag-enter-callback:#DragEnterCallback

ドラッグ アンド ドロップ操作の間にマウス ポインタがこの Window に入ると DragEnterCallback が呼び出されます。

注意事項

このフィールドは、WindowView と関連付けられている時には使用されません。DragEnter イベントを参照してください。


drag-leave-callback (フィールド)
public Window.drag-leave-callback:#DragLeaveCallback

ドラッグ アンド ドロップ操作の間にマウス ポインタがこの Window から出ると DragLeaveCallback が呼び出されます。

注意事項

このフィールドは、WindowView と関連付けられている時には使用されません。DragLeave イベントを参照してください。


drag-motion-callback (フィールド)
public Window.drag-motion-callback:#DragMotionCallback

この Window で実行されたドラッグ アンド ドロップ操作の間にマウス ポインタが移動するときに DragMotionCallback が呼び出されます。

注意事項

このフィールドは、WindowView と関連付けられている時には使用されません。DragOver イベントを参照してください。


resolution (アクセサ)
アクセサ public sealed Window.resolution:FloatResolution

Drawable のデバイスの解像度。この値は指定の距離を占めるピクセルの数を示します。dpi (dots per inch) は Resolution の単位です。

説明

アプリケーションはこの値を使用して、レンダリングのためのピクセル サイズを決定することができます。たとえば、ボックスを 2 ピクセルの厚さでレンダリングする場合は、その幅を 2 * 1/drawable.resolution にします。1/resolution では、Distance の単位でピクセルのサイズを指定します。

注意事項

アプリケーションでピクセルが正確に配置されるように、プリミティブをピクセル グリッドに揃える場合があります。Drawable.resolution はこのような場合に役に立ちます。たとえば、2 つの終了ポイント (point0:Distance2d および point1:Distance2d) で表される四角形を配置するには次のコードを使用します。


{do
    let resolution:Resolution = 72dpi || for instance
    let point0:Distance2d = {Distance2d 1in/3, 1in/3}
    let point1:Distance2d = {Distance2d 4in/3, 4in/3}
    
    let out-point0:Distance2d = 
        {Distance2d
            {ceiling (point0.x * resolution) - 0.5} / resolution,
            {ceiling (point0.y * resolution) - 0.5} / resolution
        }
    
    let out-point1:Distance2d = 
        {Distance2d
            {ceiling (point1.x * resolution) - 0.5} / resolution,
            {ceiling (point1.y * resolution) - 0.5} / resolution
        }
}


このコードでは Resolution を掛けて Distance をピクセルに変換します。次に、ceiling を使用して丸め、ピクセルの中心位置を計算します。最後に、Resolution で割って Distance に戻します。


touch-input-enabled? (アクセサ)
アクセサ public Window.touch-input-enabled?:bool

個別のタッチでの接触点の認識が Window に対して有効になっているかを表します。

説明

このプロパティは現在 Window に対して TouchWindowEvent を受け取ることができるかを表します。

注意事項

TouchWindowEventGestureWindowEvent よりも低レベルのイベントであり、touch-input-enabled?false であっても、 GestureWindowEvent が生成されることになります。


詳細は touch-input-supported? を参照してください。
導入: バージョン 8.0


touch-input-supported? (アクセサ)
アクセサ public Window.touch-input-supported?:bool

個別のタッチでの接触点が Window で認識出来るかを表します。

説明

このプロパティは TouchWindowEvent が潜在的に Window に対して有効かどうかを判別するのみです。(GestureWindowEvent を通じた)ジェスチャーの入力がホスト プラットフォームでサポートされているならば touch-input-supported?true もしくは false に関わらずいつでも利用可能です。


別のプロパティ touch-input-enabled? は、この Window に対して個別のタッチでの接触点の認識が現在有効になっているかを判別します。TouchWindowEvent を有効または無効にするには、 enable-touch-input および disable-touch-input を参照してください。


touch-input-supported?false の場合、touch-input-enabled?true になりません。

注意事項

タッチのサポートはホスト オペレーティング システムとハードウェアに依存しています。現時点では、個別のタッチでの接触点の認識は Microsoft Windows 7 から利用可能です。TouchWindowEvent を Windows 上で有効にすることで、GestureWindowEvent は無効になります。
導入: バージョン 8.0


visibility (フィールド)
protected Window.visibility:WindowVisibility

この Window の可視性状態を示す WindowVisibility フラグ。

注意事項

アプリケーションでは、このフィールドの代わりに Window.get-window-visibility の使用が推奨さています。




クラス プロシージャ詳細
common-ancestor (クラスプロシージャ)
public {Window.common-ancestor
window0:#Window,
window1:#Window
}:#Window

2 つのウィンドウでより近いウィンドウの祖先 (window-ancestor) を検索します。

説明

ab の ウィンドウの親である場合、このプロシージャは a を返します。この逆も成立します。

戻り値



is-superior? (クラスプロシージャ)
public {Window.is-superior? a:Window, b:Window}:bool

ab のウィンドウの祖先 (window-ancestor) である場合、true を返します。

説明

ウィンドウ (a) が別のウィンドウ (b) を直接含む場合、a は b のウィンドウの親 (window-parent) になります。a がウィンドウの親であるか、または複数のウィンドウ コンテナで b を含む場合、a はウィンドウの祖先 (window-ancestor) になります。
a: 潜在的なウィンドウの祖先 (window-ancestor)。
b: 潜在的なウィンドウの子孫 (window-descendant)。

戻り値

a が同じスレッド内の b のウィンドウの祖先 (window-ancestor) である場合は true



メソッド詳細
capture-pointer (メソッド)
public abstract {Window.capture-pointer}:bool

ポインタを明示的にキャプチャします。

説明

Window.capture-pointerWindow 上で呼び出されると、明示的なポインタ キャプチャが発生します。ポインタの場所に関わりなく、マウス インプットから生成されるすべてのイベントはウィンドウで連続的に発生します。ポインタをキャプチャしたウィンドウで Window.release-pointer が呼び出されると、明示的なポインタ キャプチャが解放されます。

対照的に、ウィンドウ内でマウス ボタンを押すと暗黙的なポインタ キャプチャが発生します。続いてそのウィンドウで Window.capture-pointer の呼び出しが行なわれない場合、Window.release-pointer が呼び出されるか、ユーザーがマウス ボタンを離す (アプリケーションでシステムがそれを解放する) まで、暗黙的なポインタ キャプチャは有効になります。Window.capture-pointer が異なるウィンドウで呼び出される場合、暗黙的キャプチャも早期に終了する可能性があります。

キャプチャが終了する状態や原因に関わらず、以前にポインタをキャプチャしたウィンドウで PointerCaptureEndWindowEvent が起動します。

ポインタ キャプチャに関するいくつかの重要な点は、次のとおりです.。


clear-dirty-rectangle-set (メソッド)
public final {Window.clear-dirty-rectangle-set}:void

"ダーティーな" 四角形セットをクリアします。

説明

ダーティな四角形セットをクリアして空にします。


dirty-rectangle-set-clone (メソッド)
public final {Window.dirty-rectangle-set-clone}:RectangleSet

ダーティな四角形セットのコピーを作成し、返します。

戻り値

Returns the dirty rectangle set clone. Note that this will include any areas explicitly invalidated as well as any areas exposed e.g. by window movements in other windows overlapping this window.


disable-touch-input (メソッド)
public {Window.disable-touch-input}:bool

この Window で、個別のタッチでの接触の認識 (TouchWindowEvent) を無効にします。

注意事項

詳細は touch-input-supported? を参照してください。

戻り値

操作が成功した場合は true、そうでない場合は false
導入: バージョン 8.0


disable-window (メソッド)
public sealed {Window.disable-window}:void

Window の入力を無効にします。

注意事項

Window が無効の場合、それに埋め込まれた子はすべて暗黙的に無効になります。

注意事項

disable-window の各呼び出しは、enable-window の呼び出しとペアにする必要があります。


display-to-window-coordinate (メソッド)
public abstract {Window.display-to-window-coordinate
display-x:Distance,
display-y:Distance
}:(window-x:FloatDistance, window-y:FloatDistance)

ウィンドウの親 (window-parent) を基準としてウィンドウの位置を取得します。

説明

ディスプレイ座標でウィンドウの位置が与えられている場合、このメソッドはウィンドウ座標でその位置を返します。
display-x, display-y: ウィンドウ座標でのウィンドウの位置。

戻り値

ウィンドウ座標でのウィンドウの位置。


enable-touch-input (メソッド)
public {Window.enable-touch-input}:bool

この Window で、個別のタッチでの接触の認識 (TouchWindowEvent) を有効にします。

注意事項

詳細は touch-input-supported? を参照してください。

戻り値

操作が成功した場合は true、そうでない場合は false
導入: バージョン 8.0


enable-window (メソッド)
public sealed {Window.enable-window}:void

Window の入力を有効にします。

注意事項

Window が無効の場合、それに埋め込まれた子はすべて暗黙的に無効になります。

注意事項

disable-window の各呼び出しは、enable-window の呼び出しとペアにする必要があります。


focus-window (メソッド)
public abstract {Window.focus-window}:void

このウィンドウがインプット フォーカスを得るように要求します。



force-window-on-screen (メソッド)
public sealed {Window.force-window-on-screen
min-visible:Fraction = 70%,
move-all-onscreen?:bool = true
}:void

ウィンドウが画面上にあり、非表示または最小化にされないようにします。

説明

各寸法に対して指定されたサイズより小さいウィンドウしか見えない場合、そのウィンドウは画面上で移動します。
min-visible: 表示されなければならないウィンドウのサイズをパーセンテージで決定します。与えられた寸法に対してこのパーセンテージより少ない量のウィンドウが画面上に表示されている場合、ウィンドウの位置は move-all-onscreen? に従って調整されます。
move-all-onscreen?: これが true に設定され、ウィンドウが画面の外側のいずれかの方向にずれている場合 (min-visible に基づいて決定)、ウィンドウ全体が画面上で元の位置に一番近い位置に移動します。false の場合は、ウィンドウの min-visible のパーセンテージが見えるようになるまでその寸法 (x と y) がそれぞれ調整されます。


get-display (メソッド)
public final {Window.get-display}:Display

この Window に関連付けられている現在の Display を取得します。

注意事項

特権アプレットのみがこのメソッドを呼び出すことができます。Window に関連する Display は常に変わる可能性があります。これは、Display 間を Window が (プログラムまたはユーザー操作のいずれかによって) 移動する場合に最もよく起こります。


get-window-position (メソッド)
public abstract {Window.get-window-position
normal-position?:bool = false
}:(x:FloatDistance, y:FloatDistance)

Window の親を基準として現在のウィンドウの位置を取得します。

normal-position?: true の場合、WindowVisibility.normal 状態にあるウィンドウの位置が返されます。false の場合 (既定)、ウィンドウの現在の位置 (最小化や最大化によって変わります) が返されます。

説明

位置は、ウィンドウの親のクライアント領域 (タイトル バーやウィンドウ境界線を除くウィンドウの領域) の左上隅を基準としています。

ウィンドウがトップレベルのウィンドウ、つまり親がない場合、この位置は Display の左上隅を基準とします。

注意事項

この値は一般に、現在の時刻においてホスト ウィンドウ システムで認識されるウィンドウの位置を反映します。


get-window-size (メソッド)
public abstract {Window.get-window-size
normal-size?:bool = false
}:(width:FloatDistance, height:FloatDistance)

現在のウィンドウサイズを返します。

normal-size?: true の場合、WindowVisibility.normal 状態にあるウィンドウのサイズが返されます。false (既定) の場合は、ウィンドウの現在のサイズ (最小化や最大化によって変わります) が返されます。

注意事項

この値は一般に、現時点にホスト ウィンドウ システムで認識されるウィンドウのサイズを反映します。これは、Window.width およびWindow.height とは異なります。それらは Curl がホスト ウィンドウ システム イベントを処理するまで更新されません。

ウィンドウの可視性が hidden、normal、または maximized に設定さている場合 (minimized である必要はない)、この値は正確であると考えてください。


get-window-title (メソッド)
public abstract {Window.get-window-title}:#String

現在のウィンドウ タイトルを返します。



get-window-visibility (メソッド)
public {Window.get-window-visibility}:WindowVisibility

ウィンドウの現在の可視状態を取得します。

説明

有効な値については WindowVisibility を参照してください。


handle-event (メソッド)
public final {Window.handle-event event:Event}:void

適切な EventHandlers を呼び出してイベントを処理します。

event: 処理する Event。


invalidate-rect (メソッド)
public sealed {Window.invalidate-rect}:void

ダーティな四角形セットに四角形を追加します。

説明

ダブル バッファリング (double-buffering) がページ フリップとして実行されるシステムでは、四角形を無効にするとウィンドウ全体が無効になります。
x, y: ウィンドウ座標における四角形の左上隅。
width, height: 四角形の幅および高さ。


invalidate-rect-float (メソッド)
public sealed {Window.invalidate-rect-float}:void

ダーティな四角形セットに四角形を追加します。

説明

ダブル バッファリング (double-buffering) がページ フリップとして実行されるシステムでは、四角形を無効にするとウィンドウ全体が無効になります。
x, y: ウィンドウ座標における四角形の左上隅。
width, height: 四角形の幅および高さ。


lower-window (メソッド)
public abstract {Window.lower-window}:void

ウィンドウ順序の最後、つまり他のすべてのウィンドウの背後にこのウィンドウを移動します。

説明

これにより、最上位ウィンドウは最上位でなくなります。


raise-window (メソッド)
public abstract {Window.raise-window}:void

ウィンドウ順の先頭、つまり他のすべてのウィンドウの前面にこのウィンドウを移動します。



release-pointer (メソッド)
public abstract {Window.release-pointer}:void

現在キャプチャされたポインタを離します。

説明

このウィンドウが (暗黙的にまたは明示的に) ポインタをキャプチャした場合、現在キャプチャされているポインタを解放します。それ以外の場合は、何も行なわれません。

ポインタが離されると、以前にそれをキャプチャしたウィンドウでポインタ キャプチャ終了イベントが発生します。このイベントは、対応する PointerCaptureEndWindowEvent ハンドラによって処理できます。


request-update (メソッド)
public sealed {Window.request-update}:void

後で他のイベントが保留中でなくなったときにウィンドウの更新 (update-window) が実行されるように要求します。

注意事項

保留中のイベントがなくなり、更新が要求されているか、またはダーティな四角形セットが空でない場合に更新が実行されます。


set-cursor (メソッド)
public abstract {Window.set-cursor cursor:CURSOR.Cursor}:void

この Window の現在の Cursor を設定します。

説明

Window には、システム カーソルがその Window に置かれると表示される、関連 Cursor があります。

既定の CursorCursor.get-arrow-cursor です。


set-opacity (メソッド)
public final {Window.set-opacity opacity:FloatFraction}:void

Window の不透明度を設定します。

opacity: この Window の不透明度。 0 (透明)から 1 (不透明)の範囲です。0 より小さい場合は 0 として、1 より大きい場合は 1 として扱われます。

注意事項

特権アプレットのみがこのメソッドを呼び出せます。 子の view のためにこのメソッドを呼び出しても効果がありません。 これは、WindowsXP 以降と Macintosh プラットフォームでのみサポートされます。他のプラットフォームでは効果がありません。
導入: バージョン 6.0


set-shape (メソッド)
public final {Window.set-shape shape:#Region}:void

region によってこの Window の形を変更します。

説明

このメソッドはデコレートされていないトップレベルのウィンドウでしか呼び出せません。もし、ウィンドウにタイトルバーやボーダーを持っているか、子ウィンドウの場合このメソッドは例外をスローします。
非特権アプレットでこのメソッドを呼び出した場合、SecurityException がスローされます。
shape: ウィンドウの形。座標はウィンドウの基点 (左上) から計算されます。null の場合、ウィンドウ領域は通常の領域にリセットされます。

注意事項

形はウィンドウサイズに制約を受けます。すなわち、ウィンドウに表示された形はウィンドウの領域と region との重なり合った部分になります。この重なり合った部分はウィンドウのサイズや形が変わるたびに再計算されます。
このメソッドが呼ばれるときは形が変更される時のみです。ウィンドウのイベントが処理されるまで、形が実際に変わりません。実際、遅れは非常に小さいのでこれは重要ではありません。
導入: バージョン 7.0


set-topmost (メソッド)
public abstract {Window.set-topmost topmost?:bool}:void

このウィンドウが最上位にあるかどうかを設定します。

説明

他のウィンドウが前面に移動してきた場合でも、最上位ウィンドウは常に他のすべてのウィンドウの前面にあります。


set-window-position (メソッド)
public abstract {Window.set-window-position}:void

Window の親を基準としてウィンドウの位置を設定します。

説明

この位置は、ウィンドウの親のクライアント領域 (タイトル バーやウィンドウ境界線を除くウィンドウの領域) の左上隅を基準としています。

ウィンドウがトップレベルのウィンドウで親がない場合、この位置は Display の左上隅を基準とします。


set-window-size (メソッド)
public abstract {Window.set-window-size
width:Distance,
height:Distance
}:void

指定したパラメータに Window のサイズを設定するように要求します。



set-window-title (メソッド)
public {Window.set-window-title title:#StringInterface}:void

現在のウィンドウ タイトルを設定します。

title: Window の新規タイトル。

注意事項

title が 255 文字を超える場合、ホストには最初の 252 文字だけが通知され、その後に "..." が続きます。この場合、視覚的ですがホストがタイトルをさらに切り取ることになります。この切り取りは、get-window-title の結果には影響を及ぼしません。


set-window-visibility (メソッド)
public abstract {Window.set-window-visibility
visibility:WindowVisibility
}:void

ウィンドウの現在の可視状態を設定します。

説明

有効な値については WindowVisibility を参照してください。


swap-buffers (メソッド)
public abstract {Window.swap-buffers area:#RectangleSet = null}:void

オフスクリーン レンダ バッファをディスプレイにコピーします。

説明

It allows you to either copy the entire offscreen buffer to the display or copy only the information stored in the dirty rectangle set, using it as a backing store.
area: ダーティな四角形セットを指定します。


update-window (メソッド)
public sealed {Window.update-window}:void

ウィンドウを更新します。

説明

このメソッドは通常、シングル バッファ ウィンドウによって呼び出されます。次のようにウィンドウを更新します。
  1. ウィンドウの更新要求 (request-update) が呼び出されると UpdateWindowEvent イベント ハンドラを起動します。
  2. ウィンドウのダーティな四角形セットが空でない場合、RepaintWindowEvent イベント ハンドラを起動します。
  3. ウィンドウのダーティな四角形のセットをクリアします。


window-to-display-coordinate (メソッド)
public abstract {Window.window-to-display-coordinate
window-x:Distance,
window-y:Distance
}:(display-x:FloatDistance, display-y:FloatDistance)

ディスプレイを基準としてウィンドウ位置を取得します。

説明

ウィンドウ座標でウィンドウの位置が与えられている場合、このメソッドはディスプレイ座標でその位置を返します。
window-x, window-y: ウィンドウ座標でのウィンドウの位置。

戻り値

ディスプレイ座標のウィンドウの位置