typedef struct {
int type; /* GravityNotify */
unsigned long serial; /* 最後にサーバに処理されたリクエストの番号 */
Bool send_event; /* SendEvent リクエストから送られてきた場合に真 */
Display *display; /* イベントが読み出されたディスプレイ */
Window event;
Window window;
int x, y;
} XGravityEvent;
このイベントを受け取ったとき、構造体の内容は以下のように設定されている。
type メンバには、イベントの型を一意に識別する定数名が設定される。 例えば、X サーバがクライアントアプリケーションに GraphicsExpose イベントを通知するとき、X サーバは type メンバに GraphicsExpose を設定した XGraphicsExposeEvent 構造体を送る。 display メンバには、イベントが読み出されたディスプレイへのポインタが設定 される。 send_event メンバは、このイベント自身が SendEvent プロトコルリクエストから送られてきた場合に True が設定される。 serial メンバはプロトコルで通知されたシリアル番号を基に設定される。 ただし、最少桁の16ビットから完全32ビットの値に拡張される。 window メンバには、ツールキットのディスパッチャが最も便利に使える ウィンドウが設定される。
event メンバには、移動したウィンドウかその親ウィンドウが設定される。 これは StructureNotify と SubstructureNotify のいずれを選択していたかによって決まる。 window メンバには、移動した子ウィンドウが設定される。 x, y メンバは、ウィンドウの左上外側の隅の位置を示す。 これは親ウィンドウの原点に対する相対座標である。