Next: , Previous: , Up: フレーム   [Contents][Index]


30.11 フレームの可視性

グラフィカルなディスプレイ上のフレームは可視(visible)不可視(invisible)、またはアイコン化(iconified)されているかもしれません。可視ならそのコンテンツは通常の方法により表示されます。アイコン化されている場合にはそのコンテンツは表示されませんが、ビュー内にフレームを戻すための小さいアイコンがどこかにあります(いくつかのウィンドウマネージャーはこの状態をアイコン化ではなく最小化と呼ぶがEmacsの見地ではこれらは同等である)。フレームが不可視ならまったく表示されません。

可視性の概念はマップ(または非マップ)されたフレームと強い関連性があります。フレーム(より正確にはウィンドウシステムのウィンドウ)は最初に表示されるときにマップ済み(mapped)となり、状態がiconifiedinvisibleからvisibleに変化します。それとは逆に状態がvisibleからiconifiedinvisibleに変化したときは、フレームは常に非マップ済み(unmapped)になります。

テキスト端末では実際に表示されるのは常に選択されたフレームだけなので可視性に意味はありません。

Function: frame-visible-p frame

この関数はフレームframeの可視性の状態をリターンする。値はframeが可視ならt、不可視ならnil、アイコン化されていればicon

テキスト端末上ではたとえ1つのフレームだけが表示されているとしても、この関数の目的にたいしてはすべてのフレームが可視とみなされる。フレームのraise、lower、re-stackを参照のこと。

Command: iconify-frame &optional frame

この関数はフレームframeをアイコン化する。frameを省略すると選択されたフレームをアイコン化する。これにより通常はframeのすべての子フレーム(と子孫)は不可視になる(子フレームを参照)。

Command: make-frame-visible &optional frame

この関数はフレームframeを可視にする。frameを省略すると選択されたフレームを可視にする。これはフレームを前面に移動しないが、望むならraise-frameでこれを行うことができる(フレームのraise、lower、re-stackを参照)。

通常はフレームを可視とすることにより、すべての子フレーム(と子孫)も同様に可視になる(子フレームを参照)。

Command: make-frame-invisible &optional frame force

この関数はフレームframeを不可視にする。frameを省略すると選択されたフレームを不可視にする。これにより通常はframeのすべての子フレーム(と子孫)も不可視になる(子フレームを参照)。

この関数はforcenilの場合には、他のすべてのフレームが不可視ならframeを不可視にすることを拒絶する。

フレームの可視性の状態はフレームパラメーターとしても利用可能である。つまりフレームパラメーターとして読み取りと変更ができる。ウィンドウ管理のパラメーターを参照のこと。ウィンドウマネージャーによりユーザーがフレームのアイコン化や非アイコン化を行うこともできる。これはEmacsが何らかの制御を及ぼすのが可能なレベルより下のレベルにおいて発生するが、Emacsはそのような変化を追跡するために使用するイベントを提供する。その他のシステムイベントを参照のこと。

Function: x-double-buffered-p &optional frame

この関数はframeがカレントでダブルバッファリングで描画されていれば非nilをリターンする。frameのデフォルトは選択されたフレーム。