-/* GPM functions
+/* GPM (General purpose mouse) functions
Copyright (C) 1997 William M. Perry <wmperry@gnu.org>
Copyright (C) 1999 Free Software Foundation, Inc.
extern void *gpm_stack;
static int (*orig_event_pending_p) (int);
-static void (*orig_next_event_cb) (struct Lisp_Event *);
+static void (*orig_next_event_cb) (Lisp_Event *);
static Lisp_Object gpm_event_queue;
static Lisp_Object gpm_event_queue_tail;
}
static int
-get_process_infd (struct Lisp_Process *p)
+get_process_infd (Lisp_Process *p)
{
Lisp_Object instr, outstr;
get_process_streams (p, &instr, &outstr);
Gpm_Event ev;
int modifiers = 0;
int button = 1;
- Lisp_Object fake_event;
- struct Lisp_Event *event = NULL;
+ Lisp_Object fake_event = Qnil;
+ Lisp_Event *event = NULL;
struct gcpro gcpro1;
static int num_events;
/* Whow, wouldn't named defines be NICE!?!?! */
modifiers = 0;
- if (ev.modifiers & 1) modifiers |= MOD_SHIFT;
- if (ev.modifiers & 2) modifiers |= MOD_META;
- if (ev.modifiers & 4) modifiers |= MOD_CONTROL;
- if (ev.modifiers & 8) modifiers |= MOD_META;
+ if (ev.modifiers & 1) modifiers |= XEMACS_MOD_SHIFT;
+ if (ev.modifiers & 2) modifiers |= XEMACS_MOD_META;
+ if (ev.modifiers & 4) modifiers |= XEMACS_MOD_CONTROL;
+ if (ev.modifiers & 8) modifiers |= XEMACS_MOD_META;
if (ev.buttons & GPM_B_LEFT)
{
struct device *d = decode_device (Qnil);
int fd = DEVICE_INFD (d);
char c = 3;
- Lisp_Object output_stream;
- Lisp_Object terminal_stream;
- Lisp_Object output_string;
+ Lisp_Object output_stream = Qnil;
+ Lisp_Object terminal_stream = Qnil ;
+ Lisp_Object output_string = Qnil;
struct gcpro gcpro1,gcpro2,gcpro3;
GCPRO3(output_stream,terminal_stream,output_string);
}
static Lisp_Object
-tty_selection_exists_p (Lisp_Object selection)
+tty_selection_exists_p (Lisp_Object selection, Lisp_Object selection_type)
{
return (Qt);
}
#if 0
static Lisp_Object
-tty_own_selection (Lisp_Object selection_name, Lisp_Object selection_value)
+tty_own_selection (Lisp_Object selection_name, Lisp_Object selection_value,
+ Lisp_Object how_to_add, Lisp_Object selection_type)
{
/* There is no way to do this cleanly - the GPM selection
** 'protocol' (actually the TIOCLINUX ioctl) requires a start and
static void
tty_set_mouse_position (struct window *w, int x, int y)
{
- /*
+ /*
#### I couldn't find any GPM functions that set the mouse position.
#### Mr. Perry had left this function empty; that must be why.
#### karlheg
return (orig_event_pending_p (user_p));
}
-static void gpm_next_event_cb (struct Lisp_Event *event)
+static void gpm_next_event_cb (Lisp_Event *event)
{
/* #### It would be nice to preserve some sort of ordering of the
** #### different types of events, but that would be quite a bit
** #### of work, and would more than likely break the abstraction
** #### between the other event loops and this one.
*/
-
+
if (!NILP (gpm_event_queue))
{
Lisp_Object queued_event = dequeue_event (&gpm_event_queue, &gpm_event_queue_tail);
conn.maxMod = ((1<<KG_SHIFT)|(1<<KG_ALT)|(1<<KG_CTRL));
/* Reset some silly static variables so that multiple Gpm_Open()
- ** calls have even a sligh chance of working
+ ** calls have even a slight chance of working
*/
gpm_tried = 0;
gpm_flag = 0;
** descriptor, or it can get the wrong terminal sizes, etc.
*/
gpm_consolefd = fd;
-
+
/* We have to pass the virtual console manually, otherwise if you
** use 'gnuclient -nw' to connect to an XEmacs that is running in
** X, Gpm_Open() tries to use ttyname(0 | 1 | 2) to find out which