XConfigureEvent(3) ConfigureNotify イベント構造体

構造体

ConfigureNotify イベントに対する構造体の内容を示す。

typedef struct {
     int type;                
     unsigned long serial;    
     Bool send_event;         
     Display *display;        
     Window event;
     Window window;
     int x, y;
     int width, height;
     int border_width;
     Window above;
     Bool override_redirect;
} XConfigureEvent;

このイベントを受け取ったとき、構造体の内容は以下のように設定されている。

type メンバには、イベントの型を一意に識別する定数名が設定される。 例えば、X サーバがクライアントアプリケーションに GraphicsExpose イベントを通知するとき、X サーバは type メンバに GraphicsExpose を設定した XGraphicsExposeEvent 構造体を送る。 display メンバには、イベントが読み出されたディスプレイへのポインタが 設定される。 send_event メンバは、このイベント自身が SendEvent プロトコルリクエストから送られてきた場合に True が設定される。 serial メンバはプロトコルで通知されたシリアル番号を基に設定される。 ただし、最少桁の16ビットから完全32ビットの値に拡張される。 window メンバには、ツールキットのディスパッチャが最も便利に使える ウィンドウが設定される。

StructureNotifySubstructureNotify のどちらを選択したかによって、 event メンバには構成が変えられたウィンドウか、その親ウィンドウが設定 される。 window メンバには、サイズ、位置、境界、スタック順が変わったウィンドウ が設定される。

x, y メンバには親ウィンドウの原点に対する座標が設定され、ウィンドウ の左上外側の位置を示す。 width, height メンバには境界を含まないウィンドウの内側の大きさが設定 される。 border_width メンバには、ウィンドウの境界の幅がピクセル単位で設定さ れる。

above メンバには兄弟ウィンドウが設定され、スタック操作のために使われ る。 X サーバがこのメンバに None を設定した場合、状態が変化したウィンドウは兄弟ウィンドウに対して スタックの最下位にある。 しかし、このメンバに兄弟ウィンドウが設定された場合、状態が変化した ウィンドウはこの兄弟ウィンドウの上にある。

override_redirect メンバにはウィンドウの override-redirect 属性が設定 される。 ウィンドウマネージャは、override_redirect メンバが True ならば、通常このウィンドウを無視すべきである。