構造体
PropertyNotify イベントに対する構造体の内容を示す。
typedef struct { int type; unsigned long serial; Bool send_event; Display *display; Window window; Atom atom; Time time; int state; } XPropertyEvent;
このイベントを受け取ったとき、構造体の内容は以下のように設定されている。
type メンバには、イベントの型を一意に識別する定数名が設定される。 例えば、X サーバがクライアントアプリケーションに GraphicsExpose イベントを通知するとき、X サーバは type メンバに GraphicsExpose を設定した XGraphicsExposeEvent 構造体を送る。 display メンバには、イベントが読み出されたディスプレイへのポインタがセッ send_event メンバは、このイベント自身が SendEvent プロトコルリクエストから送られてきた場合に True が設定される。 serial メンバはプロトコルで通知されたシリアル番号を基に設定される。 ただし、最少桁の16ビットから完全32ビットの値に拡張される。 window メンバには、ツールキットのディスパッチャが最も便利に使えるウィ ンドウが設定される。
window メンバには、関連するプロパティが変更されたウィンドウが設定される。 atom メンバにはプロパティのアトムが設定される。 アトムは、変更されたプロパティか変更を要求するプロパティを示す。 time メンバには、プロパティが変更されたサーバ時刻が設定される。 state メンバは、プロパティが新しい値に変更された( PropertyNewValue )のか削除された( PropertyDelete )を示す。 XChangeProperty や XRotateWindowProperties を使ってウィンドウのプロパティが変更された場合( XChangeProperty で長さ 0 のデータを追加した場合であっても )や、 XChangeProperty や XRotateWindowProperties を使って同じデータの一部あるいは全部のプロパティを置き換えた場合には、 state メンバには PropertyNewValue が設定される。 XDeleteProperty や 引き数 delete を True とした XGetWindowProperty を使ってウィンドウのプロパティを削除した場合、state メンバには PropertyDelete が設定される。