1 /* 2 * Copyright 1996 by Frederic Lepied, France. <Frederic.Lepied@sugix.frmug.org> 3 * 4 * Permission to use, copy, modify, distribute, and sell this software and its 5 * documentation for any purpose is hereby granted without fee, provided that 6 * the above copyright notice appear in all copies and that both that 7 * copyright notice and this permission notice appear in supporting 8 * documentation, and that the name of the authors not be used in 9 * advertising or publicity pertaining to distribution of the software without 10 * specific, written prior permission. The authors make no 11 * representations about the suitability of this software for any purpose. It 12 * is provided "as is" without express or implied warranty. 13 * 14 * THE AUTHORS DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, 15 * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO 16 * EVENT SHALL THE AUTHORS BE LIABLE FOR ANY SPECIAL, INDIRECT OR 17 * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, 18 * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER 19 * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR 20 * PERFORMANCE OF THIS SOFTWARE. 21 * 22 */ 23 24 #if HAVE_CONFIG_H 25 #include <config.h> 26 #endif 27 28 #include <X11/Xlib.h> 29 #include <X11/extensions/XInput.h> 30 #if HAVE_XI2 31 #include <X11/extensions/XInput2.h> 32 #endif 33 #include <X11/Xutil.h> 34 #include <stdio.h> 35 #include <stdlib.h> 36 37 #ifndef EXIT_SUCCESS 38 #define EXIT_SUCCESS 1 39 #endif 40 #ifndef EXIT_FAILURE 41 #define EXIT_FAILURE 0 42 #endif 43 44 extern int xi_opcode; /* xinput extension op code */ 45 XDeviceInfo* find_device_info( Display *display, char *name, Bool only_extended); 46 #if HAVE_XI2 47 XIDeviceInfo* xi2_find_device_info(Display *display, char *name); 48 int xinput_version(Display* display); 49 #endif 50 51 int get_feedbacks( Display* display, int argc, char *argv[], char *prog_name, char *prog_desc); 52 int set_ptr_feedback( Display* display, int argc, char *argv[], char *prog_name, char *prog_desc); 53 int get_button_map( Display* display, int argc, char *argv[], char *prog_name, char *prog_desc); 54 int set_button_map( Display* display, int argc, char *argv[], char *prog_name, char *prog_desc); 55 int set_pointer( Display* display, int argc, char *argv[], char *prog_name, char *prog_desc); 56 57 int set_mode( Display* display, int argc, char *argv[], char *prog_name, char *prog_desc); 58 int list( Display* display, int argc, char *argv[], char *prog_name, char *prog_desc); 59 int test( Display* display, int argc, char *argv[], char *prog_name, char *prog_desc); 60 int version( Display* display, int argc, char *argv[], char *prog_name, char *prog_desc); 61 int set_integer_feedback( Display* display, int argc, char *argv[], char *prog_name, char *prog_desc); 62 int query_state( Display* display, int argc, char *argv[], char *prog_name, char *prog_desc); 63 64 /* X Input 1.5 */ 65 int list_props( Display* display, int argc, char *argv[], char *prog_name, char *prog_desc); 66 int set_int_prop( Display* display, int argc, char *argv[], char *prog_name, char *prog_desc); 67 int set_float_prop( Display* display, int argc, char *argv[], char *prog_name, char *prog_desc); 68 int set_atom_prop( Display* display, int argc, char *argv[], char *prog_name, char *prog_desc); 69 int watch_props( Display* display, int argc, char *argv[], char *prog_name, char *prog_desc); 70 int delete_prop( Display* display, int argc, char *argv[], char *prog_name, char *prog_desc); 71 int set_prop( Display* display, int argc, char *argv[], char *prog_name, char *prog_desc); 72 int disable( Display* display, int argc, char *argv[], char *prog_name, char *prog_desc); 73 int enable( Display* display, int argc, char *argv[], char *prog_name, char *prog_desc); 74 75 /* X Input 2.0 */ 76 int create_master( Display* display, int argc, char *argv[], char *prog_name, char *prog_desc); 77 int remove_master( Display* display, int argc, char *argv[], char *prog_name, char *prog_desc); 78 int change_attachment( Display* display, int argc, char *argv[], char *prog_name, char *prog_desc); 79 int float_device( Display* display, int argc, char *argv[], char *prog_name, char *prog_desc); 80 int set_clientpointer( Display* display, int argc, char *argv[], char *prog_name, char *prog_desc); 81 int test_xi2( Display* display, int argc, char *argv[], char *prog_name, char *prog_desc); 82 int map_to_output( Display* display, int argc, char *argv[], char *prog_name, char *prog_desc); 83 84 /* end of xinput.h */ 85