typedef struct { int type; /* ColormapNotify */ unsigned long serial; /* 最後にサーバに処理されたリクエストの番号 */ Bool send_event; /* SendEvent リクエストから送られた場合に真 */ Display *display; /* イベントが読み出されたディスプレイ */ Window window; Colormap colormap; /* カラーマップか None */ Bool new; int state; /* ColormapInstalled, ColormapUninstalled */ } XColormapEvent;
このイベントを受け取った時、構造体のメンバは以下のように設定されている。
it. type メンバにはイベントの型を一意に識別する定数名が設定される。 例えば、X サーバがクライアントアプリケーションに GraphicsExpose イベントを通知するとき、X サーバは type メンバに GraphicsExpose を設定して XGraphicsExposeEvent 構造体を送る。 display メンバにはイベントが読み出されたディスプレイへのポインタが 設定される。 send_event メンバは、そのイベントが SendEvent プロトコルリクエストから送られてきた場合に True に設定される。 serial メンバはプロトコルで通知されたシリアル番号から設定されるが、 16ビットの最少桁ビットから完全32なビットの値に拡張される。 window メンバには、ツールキットのディスパッチャが最も有効に使えるウィ ンドウが設定される。
window メンバには、対応するカラーマップが変更、インストール、アンイン ストールされたウィンドウが設定される。 変更、インストール、アンインストールされたカラーマップに対して、 colormap メンバにはそのウィンドウに対応するカラーマップが設定される。 XFreeColormap の呼び出しによって変化したカラーマップに対しては、colormap メンバは None に設定される。 new メンバは、指定したウィンドウに対するカラーマップが変更、インストー ル、アンインストールのいずれがなされたかを示す値が設定される。 この値は True か False である。 この値が False の場合、カラーマップはインストールかアンインストールされたことを示す。 state メンバは常に設定され、カラーマップがインストールされたかアンイ ンストールされたかを示す。このメンバの値は ColormapInstalled か ColormapUninstalled である。