ウィンドウマネージャー
ウィンドウマネージャは、ウィンドウ作成、移動、サイズ変更などウィンドウに関するあらゆる操作を提供します。
用語説明
一般的にウィンドウは長方形で、左上の原点(xy座標)とXsize(幅)とYsize(高さ)が定義されています。
emWinでは
- 長方形
- Z -ポジションを持つ
- 非表示や表示が可能
- 有効、無効領域を持つことが可能
- 透明度を持つことが可能
- コールバックルーチンを持つことが可能
アクティブウィンドウ
現在の描画操作に使用されているウィンドウがアクティブウィンドウと呼ばれます。最前面のウィンドウと同じであるとは限りません。
コールバックルーチン
特定のイベントが発生した時に描画システムを呼び出すユーザー定義関数のことです。通常、ウィンドウの内容が変更されたときに自動的にウィンドウを再描画するために使用されます。
子/親ウィンドウ
子ウィンドウは親と呼ばれる、別のウィンドウに対して相対的に定義されているものです。親ウィンドウが移動すると、その子ウィンドウも一緒に移動します。同じ親を持つ複数の子ウィンドウは、お互いに"兄弟"とみなされます。
クライアントエリア
ウィンドウのクライアント領域は、単にその使用可能な領域です。ウィンドウの枠やタイトルバーが含まれている場合、クライアント領域は、長方形の内側の領域です。そのようなフレームが存在しない場合は、クライアント領域の座標は、ウィンドウ自体のものと同じです。
クリッピング、クリップ領域
クリッピングは、ウィンドウまたはその一部に出力を制限するプロセスです。ウィンドウのクリップ領域は表示領域です。
デスクトップウィンドウ
デスクトップウィンドウは自動的にウィンドウマネージャによって作成され、常に表示領域全体をカバーしています。常に一番裏のウィンドウであり、他のウィンドウがない場合、デフォルトの(アクティブな)ウィンドウとなります。またすべてのウィンドウはデスクトップウィンドウの子/孫ウィンドウとなりますである。
ハンドル
新しいウィンドウが作成されると、ウィンドウマネージャーはハンドルと呼ばれる固有のIDを割り当てます。ハンドルはウィンドウを操作するときに使用されます。
ウィンドウの非表示/表示
ハンドルを持つが画面上に表示されていないウィンドウを非表示ウィンドウといいます。通常createフラグが指定されていない場合は、ウィンドウ作成時にデフォルトで非表示ウィンドウとなります。ウィンドウを表示状態にすると画面に表示され、非表示状態にすると画面に表示されなくなります。
透明度
透明度を持っているウィンドウは、ウィンドウの一部が描画されず、背後にあるウィンドウを表示しています。
Z -ポジション、ボトム/トップ
画面上のバーチャルな奥行きです。これによってどのウィンドウがどのウィンドウの前に有り優先的に表示されるかなどを管理しています。