home *** CD-ROM | disk | FTP | other *** search
-
-
-
- XXXXGGGGeeeettttFFFFeeeeeeeeddddbbbbaaaacccckkkkCCCCoooonnnnttttrrrroooollll((((3333XXXX11111111))))XXXX VVVVeeeerrrrssssiiiioooonnnn 11111111 ((((RRRReeeelllleeeeaaaasssseeee 6666....6666))))XXXXGGGGeeeettttFFFFeeeeeeeeddddbbbbaaaacccckkkkCCCCoooonnnnttttrrrroooollll((((3333XXXX11111111))))
-
-
-
- NNNNAAAAMMMMEEEE
- XGetFeedbackControl, XChangeFeedbackControl - query and
- change input device feedbacks
-
- SSSSYYYYNNNNTTTTAAAAXXXX
- XFeedbackState * XGetFeedbackControl(_d_i_s_p_l_a_y, _d_e_v_i_c_e,
- _n_u_m__f_e_e_d_b_a_c_k_s)
- Display *_d_i_s_p_l_a_y;
- XDevice *_d_e_v_i_c_e;
- int *_n_u_m__f_e_e_d_b_a_c_k_s;
-
- int XChangeFeedbackControl(_d_i_s_p_l_a_y, _d_e_v_i_c_e, _m_a_s_k, _c_o_n_t_r_o_l)
- Display *_d_i_s_p_l_a_y;
- XDevice *_d_e_v_i_c_e;
- Mask _m_a_s_k;
- XFeedbackControl *_c_o_n_t_r_o_l;
-
- AAAARRRRGGGGUUUUMMMMEEEENNNNTTTTSSSS
- _d_i_s_p_l_a_y Specifies the connection to the X server.
-
- _d_e_v_i_c_e Specifies the device whose feedbacks are to
- be queried or modified.
-
- _n_u_m__f_e_e_d_b_a_c_k_s Specifies an address into which the number of
- feedbacks supported by the device is to be
- returned.
-
- _m_a_s_k Specifies a mask specific to each type of
- feedback that describes how the feedback is
- to be modified.
-
- _c_o_n_t_r_o_l Specifies the address of an _X_F_e_e_d_b_a_c_k_C_o_n_t_r_o_l
- structure that contains the new values for
- the feedback.
-
- DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
- These requests are provided to manipulate those input
- devices that support feedbacks. A _B_a_d_M_a_t_c_h error will be
- generated if the requested device does not support
- feedbacks. Whether or not a given device supports feedbacks
- can be determined by examining the information returned by
- the _X_O_p_e_n_D_e_v_i_c_e request. For those devices that support
- feedbacks, _X_O_p_e_n_D_e_v_i_c_e will return an _X_I_n_p_u_t_C_l_a_s_s_I_n_f_o
- structure with the input_class field equal to the constant
- _F_e_e_d_b_a_c_k_C_l_a_s_s (defined in the file _X_I._h).
-
- The _X_G_e_t_F_e_e_d_b_a_c_k_C_o_n_t_r_o_l request returns a pointer to a list
- of _X_F_e_e_d_b_a_c_k_S_t_a_t_e structures. Each item in this list
- describes one of the feedbacks supported by the device. The
- items are variable length, so each contains its length to
- allow traversal to the next item in the list.
-
-
-
-
- Page 1 (printed 10/3/02)
-
-
-
-
-
-
- XXXXGGGGeeeettttFFFFeeeeeeeeddddbbbbaaaacccckkkkCCCCoooonnnnttttrrrroooollll((((3333XXXX11111111))))XXXX VVVVeeeerrrrssssiiiioooonnnn 11111111 ((((RRRReeeelllleeeeaaaasssseeee 6666....6666))))XXXXGGGGeeeettttFFFFeeeeeeeeddddbbbbaaaacccckkkkCCCCoooonnnnttttrrrroooollll((((3333XXXX11111111))))
-
-
-
- The feedback classes that are currently defined are:
- _K_b_d_F_e_e_d_b_a_c_k_C_l_a_s_s, _P_t_r_F_e_e_d_b_a_c_k_C_l_a_s_s, _S_t_r_i_n_g_F_e_e_d_b_a_c_k_C_l_a_s_s,
- _I_n_t_e_g_e_r_F_e_e_d_b_a_c_k_C_l_a_s_s, _L_e_d_F_e_e_d_b_a_c_k_C_l_a_s_s, and
- _B_e_l_l_F_e_e_d_b_a_c_k_C_l_a_s_s. These constants are defined in the file
- _X_I._h. An input device may support zero or more classes of
- feedback, and may support multiple feedbacks of the same
- class. Each feedback contains a class identifier and an id
- that is unique within that class for that input device. The
- id is used to identify the feedback when making an
- _X_C_h_a_n_g_e_F_e_e_d_b_a_c_k_C_o_n_t_r_o_l request.
-
- _X_G_e_t_F_e_e_d_b_a_c_k_C_o_n_t_r_o_l can generate a _B_a_d_D_e_v_i_c_e or _B_a_d_M_a_t_c_h
- error.
-
- The _X_C_h_a_n_g_e_F_e_e_d_b_a_c_k_C_o_n_t_r_o_l request modifies the values of
- one feedback on the specified device. The feedback is
- identified by the id field of the _X_F_e_e_d_b_a_c_k_C_o_n_t_r_o_l structure
- that is passed with the request. The fields of the feedback
- that are to be modified are identified by the bits of the
- mask that is passed with the request.
-
- _X_C_h_a_n_g_e_F_e_e_d_b_a_c_k_C_o_n_t_r_o_l can generate a _B_a_d_D_e_v_i_c_e, _B_a_d_M_a_t_c_h,
- or _B_a_d_V_a_l_u_e error.
-
- SSSSTTTTRRRRUUUUCCCCTTTTUUUURRRREEEESSSS
- Each class of feedback is described by a structure specific
- to that class. These structures are defined in the file
- _X_I_n_p_u_t._h. _X_F_e_e_d_b_a_c_k_S_t_a_t_e and _X_F_e_e_d_b_a_c_k_C_o_n_t_r_o_l are generic
- structures that contain three fields that are at the
- beginning of each class of feedback:
-
- typedef struct {
- XID class;
- int length;
- XID id;
- } XFeedbackState, XFeedbackControl;
-
- The _X_K_b_d_F_e_e_d_b_a_c_k_S_t_a_t_e structure defines the attributes that
- are returned for feedbacks equivalent to those on the X
- keyboard.
-
- typedef struct {
- XID class;
- int length;
- XID id;
- int click;
- int percent;
- int pitch;
- int duration;
- int led_mask;
- int global_auto_repeat;
- char auto_repeats[32];
-
-
-
- Page 2 (printed 10/3/02)
-
-
-
-
-
-
- XXXXGGGGeeeettttFFFFeeeeeeeeddddbbbbaaaacccckkkkCCCCoooonnnnttttrrrroooollll((((3333XXXX11111111))))XXXX VVVVeeeerrrrssssiiiioooonnnn 11111111 ((((RRRReeeelllleeeeaaaasssseeee 6666....6666))))XXXXGGGGeeeettttFFFFeeeeeeeeddddbbbbaaaacccckkkkCCCCoooonnnnttttrrrroooollll((((3333XXXX11111111))))
-
-
-
- } XKbdFeedbackState;
-
- The _X_P_t_r_F_e_e_d_b_a_c_k_S_t_a_t_e structure defines the attributes that
- are returned for feedbacks equivalent to those on the the X
- pointer.
-
- typedef struct {
- XID class;
- int length;
- XID id;
- int accelNum;
- int accelDenom;
- int threshold;
- } XPtrFeedbackState;
-
- The _X_I_n_t_e_g_e_r_F_e_e_d_b_a_c_k_S_t_a_t_e structure defines attributes that
- are returned for integer feedbacks.
-
- typedef struct {
- XID class;
- int length;
- XID id;
- int resolution;
- int minVal;
- int maxVal;
- } XIntegerFeedbackState;
-
- The _X_S_t_r_i_n_g_F_e_e_d_b_a_c_k_S_t_a_t_e structure defines the attributes
- that are returned for string feedbacks.
-
- typedef struct {
- XID class;
- int length;
- XID id;
- int max_symbols;
- int num_syms_supported;
- KeySym *syms_supported;
- } XStringFeedbackState;
-
- The _X_B_e_l_l_F_e_e_d_b_a_c_k_S_t_a_t_e structure defines the attributes that
- are returned for bell feedbacks.
-
- typedef struct {
- XID class;
- int length;
- XID id;
- int percent;
- int pitch;
- int duration;
- } XBellFeedbackState;
-
- The _X_L_e_d_F_e_e_d_b_a_c_k_S_t_a_t_e structure defines the attributes that
-
-
-
- Page 3 (printed 10/3/02)
-
-
-
-
-
-
- XXXXGGGGeeeettttFFFFeeeeeeeeddddbbbbaaaacccckkkkCCCCoooonnnnttttrrrroooollll((((3333XXXX11111111))))XXXX VVVVeeeerrrrssssiiiioooonnnn 11111111 ((((RRRReeeelllleeeeaaaasssseeee 6666....6666))))XXXXGGGGeeeettttFFFFeeeeeeeeddddbbbbaaaacccckkkkCCCCoooonnnnttttrrrroooollll((((3333XXXX11111111))))
-
-
-
- are returned for LED feedbacks.
-
- typedef struct {
- XID class;
- int length;
- XID id;
- int led_values;
- } XLedFeedbackState;
-
- The _X_P_r_t_F_e_e_d_b_a_c_k_C_o_n_t_r_o_l structure defines the attributes
- that can be controlled for pointer feedbacks.
-
- typedef struct {
- XID class;
- int length;
- XID id;
- int accelNum;
- int accelDenom;
- int threshold;
- } XPtrFeedbackControl;
-
- The _X_K_b_d_F_e_e_d_b_a_c_k_C_o_n_t_r_o_l structure defines the attributes
- that can be controlled for keyboard feedbacks.
-
- typedef struct {
- XID class;
- int length;
- XID id;
- int click;
- int percent;
- int pitch;
- int duration;
- int led_mask;
- int led_value;
- int key;
- int auto_repeat_mode;
- } XKbdFeedbackControl;
-
- The _X_S_t_r_i_n_g_F_e_e_d_b_a_c_k_C_o_n_t_r_o_l structure defines the attributes
- that can be controlled for string feedbacks.
-
- typedef struct {
- XID class;
- int length;
- XID id;
- int num_keysyms;
- KeySym *syms_to_display;
- } XStringFeedbackControl;
-
- The _X_I_n_t_e_g_e_r_F_e_e_d_b_a_c_k_C_o_n_t_r_o_l structure defines the attributes
- that can be controlled for integer feedbacks.
-
-
-
-
- Page 4 (printed 10/3/02)
-
-
-
-
-
-
- XXXXGGGGeeeettttFFFFeeeeeeeeddddbbbbaaaacccckkkkCCCCoooonnnnttttrrrroooollll((((3333XXXX11111111))))XXXX VVVVeeeerrrrssssiiiioooonnnn 11111111 ((((RRRReeeelllleeeeaaaasssseeee 6666....6666))))XXXXGGGGeeeettttFFFFeeeeeeeeddddbbbbaaaacccckkkkCCCCoooonnnnttttrrrroooollll((((3333XXXX11111111))))
-
-
-
- typedef struct {
- XID class;
- int length;
- XID id;
- int int_to_display;
- } XIntegerFeedbackControl;
-
- The _X_B_e_l_l_F_e_e_d_b_a_c_k_C_o_n_t_r_o_l structure defines the attributes
- that can be controlled for bell feedbacks.
-
- typedef struct {
- XID class;
- int length;
- XID id;
- int percent;
- int pitch;
- int duration;
- } XBellFeedbackControl;
-
- The _X_L_e_d_F_e_e_d_b_a_c_k_C_o_n_t_r_o_l structure defines the attributes
- that can be controlled for LED feedbacks.
-
- typedef struct {
- XID class;
- int length;
- XID id;
- int led_mask;
- int led_values;
- } XLedFeedbackControl;
-
- DDDDIIIIAAAAGGGGNNNNOOOOSSSSTTTTIIIICCCCSSSS
- _B_a_d_D_e_v_i_c_e An invalid device was specified. The specified
- device does not exist or has not been opened by
- this client via _X_O_p_e_n_I_n_p_u_t_D_e_v_i_c_e. This error
- may also occur if some other client has caused
- the specified device to become the X keyboard or
- X pointer device via the _X_C_h_a_n_g_e_K_e_y_b_o_a_r_d_D_e_v_i_c_e
- or _X_C_h_a_n_g_e_P_o_i_n_t_e_r_D_e_v_i_c_e requests.
-
- _B_a_d_M_a_t_c_h This error may occur if an _X_G_e_t_F_e_e_d_b_a_c_k_C_o_n_t_r_o_l
- request was made specifying a device that has no
- feedbacks, or an _X_C_h_a_n_g_e_F_e_e_d_b_a_c_k_C_o_n_t_r_o_l request
- was made with an _X_F_e_e_d_b_a_c_k_C_o_n_t_r_o_l structure that
- contains an invalid feedback type. It may also
- occur if an invalid combination of mask bits is
- specified (_D_v_K_e_y but no _D_v_A_u_t_o_R_e_p_e_a_t_M_o_d_e for
- keyboard feedbacks), or if an invalid KeySym is
- specified for a string feedback.
-
- _B_a_d_V_a_l_u_e Some numeric value falls outside the range of
- values accepted by the _X_C_h_a_n_g_e_F_e_e_d_b_a_c_k_C_o_n_t_r_o_l
- request. Unless a specific range is specified
-
-
-
- Page 5 (printed 10/3/02)
-
-
-
-
-
-
- XXXXGGGGeeeettttFFFFeeeeeeeeddddbbbbaaaacccckkkkCCCCoooonnnnttttrrrroooollll((((3333XXXX11111111))))XXXX VVVVeeeerrrrssssiiiioooonnnn 11111111 ((((RRRReeeelllleeeeaaaasssseeee 6666....6666))))XXXXGGGGeeeettttFFFFeeeeeeeeddddbbbbaaaacccckkkkCCCCoooonnnnttttrrrroooollll((((3333XXXX11111111))))
-
-
-
- for an argument, the full range defined by the
- argument's type is accepted. Any argument
- defined as a set of alternatives can generate
- this error.
-
- SSSSEEEEEEEE AAAALLLLSSSSOOOO
- _P_r_o_g_r_a_m_m_i_n_g _W_i_t_h _X_l_i_b
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Page 6 (printed 10/3/02)
-
-
-
-