10.13.2 PropertyNotify Events

The X server can report PropertyNotify events to clients wanting information about property changes for a specified window.
X サーバーは、指定したウインドウのプロパティー(property)の変化に ついての情報を要求するクライアントに PropertyNotifyイベントを通知する。

To receive PropertyNotify events, set the PropertyChangeMask bit in the event-mask attribute of the window.
PropertyNotifyイベントを受け取るには、 を受け取るにはウインドウの event-mask 属性の PropertyChangeMaskビットを設定する。

The structure for this event type contains:
このイベントのための構造体を以下に示す:


typedef struct {
	int type;		/* PropertyNotify */
	unsigned long serial;	/* # of last request processed by server */
	Bool send_event;	/* true if this came from a SendEvent request */
	Display *display;	/* Display the event was read from */
	Window window;
	Atom atom;
	Time time;
	int state;		/* PropertyNewValue or PropertyDelete */
} XPropertyEvent;

The window member is set to the window whose associated property was changed. The atom member is set to the property's atom and indicates which property was changed or desired. The time member is set to the server time when the property was changed. The state member is set to indicate whether the property was changed to a new value or deleted and can be PropertyNewValue or PropertyDelete. The state member is set to PropertyNewValue when a property of the window is changed using XChangeProperty() or XRotateWindowProperties() (even when adding zero-length data using XChangeProperty()) and when replacing all or part of a property with identical data using XChangeProperty() or XRotateWindowProperties(). The state member is set to PropertyDelete when a property of the window is deleted using XDeleteProperty() or, if the delete argument is True, XGetWindowProperty().
window メンバーは関連づけられたプロパティー(property)が変えられた ウインドウが設定される。 atom メンバーはプロパティー(property)のアトム(atom)が設定され、 どのプロパティー(property)が変えられあるいは望まれているかを示す。 time メンバーはプロパティー(property)が変更された時のサーバー時間が 設定される。 state メンバーはプロパティー(property)が、新しい値に変更、削除のいずれかを示すように設定され、 PropertyNewValuePropertyDeleteのいずれかだ。 state メンバーは、 XChangePropertyXRotateWindowPropertiesのいずれかを使ってウインドウのプロパティー(property)が変更された時と( XChangePropertyを使って長さがゼロのデータを追加した時でも)、 XChangePropertyXRotateWindowPropertiesを使って同じデータのすべてあるいは一部のプロパティー(property)を 置き換えた時に、 PropertyNewValueに設定される。 state メンバーは XDeletePropertyや、引数が TrueXGetWindowPropertyを使ってウインドウのプロパティー(property)を削除した場合に、 PropertyDeleteに設定される。

Next: SelectionClear Events

Christophe Tronche, ch.tronche@computer.org