From f7cecd976b196288bd734eace2acff798a36513f Mon Sep 17 00:00:00 2001 From: Marco Gerards Date: Thu, 6 Jan 2005 21:53:26 +0000 Subject: 2005-01-06 Marco Gerards * Makefile (SRCS): Add `vcons-move-mouse.c' and `vcons-event.c'. * cons.h (mouse_movement): New enum. (mouse_button): Likewise. (mouse_event): New struct. (mouse_event_t): New type. (cons_vcons_set_mousecursor_pos): New prototype. (cons_vcons_set_mousecursor_status): Likewise. (cons_vcons_move_mouse): Likewise. * file-changed.c (cons_S_file_changed): Generate the `CONS_EVT_OUTPUT' event, in case there was output. * opts-std-startup.c (OPT_MOUSE_SHOW, OPT_MOUSE_HIDE) (OPT_MOUSE_SENS, DEFAULT_MOUSE_SENS, DEFAULT_MOUSE_SENS_STRING): New macros. (_cons_show_mouse, _cons_hide_mouse, _cons_mouse_sens): New variables. (startup_options): Add the options `--mouse-show-on', `--mouse-hide-on' and `--mouse-sensitivity'. (parse_startup_opt): Parse the options that were added to `startup_options' using the new local function `parse_events'. * priv.h (CONS_EVT_MOUSE_MOVE, CONS_EVT_MOUSE_BUTTON) (CONS_EVT_KEYPRESS, CONS_EVT_OUTPUT): New macros. (_cons_show_mouse, _cons_hide_mouse, _cons_mouse_sens): New declarations. (_cons_vcons_input): New prototype. (_cons_vcons_console_event): Likewise. * vcons-event.c: New file. * vcons-move-mouse.c: Likewise. * vcons-input.c (_cons_vcons_input): New function. (cons_vcons_input): Rewritten to use _cons_vcons_input and report the `CONS_EVT_KEYPRESS' event. * vcons-refresh.c: Include "priv.h". (cons_vcons_refresh): Report the `CONS_EVT_OUTPUT' event. * vcons-scrollback.c: Include "priv.h". (cons_vcons_scrollback): Report the `CONS_EVT_OUTPUT' event. --- libcons/priv.h | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) (limited to 'libcons/priv.h') diff --git a/libcons/priv.h b/libcons/priv.h index a1ec2451..377f021c 100644 --- a/libcons/priv.h +++ b/libcons/priv.h @@ -1,5 +1,5 @@ /* Private declarations for cons library - Copyright (C) 2002, 2003 Free Software Foundation, Inc. + Copyright (C) 2002, 2003, 2005 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as @@ -29,6 +29,11 @@ typedef enum BELL_AUDIBLE } bell_type_t; +#define CONS_EVT_MOUSE_MOVE (1 << 1) +#define CONS_EVT_MOUSE_BUTTON (1 << 2) +#define CONS_EVT_KEYPRESS (1 << 4) +#define CONS_EVT_OUTPUT (1 << 8) + /* Number of records the client is allowed to lag behind the server. */ @@ -49,11 +54,26 @@ extern bell_type_t _cons_visual_bell; /* The type of bell used for the audible bell. */ extern bell_type_t _cons_audible_bell; +/* The type of events that will make the mouse cursor visible. */ +extern int _cons_show_mouse; + +/* The type of events that will hide the mouse cursor. */ +extern int _cons_hide_mouse; + +/* The mouse sensitivity. */ +extern float _cons_mouse_sens; + /* Non-locking version of cons_vcons_scrollback. Does also not update the display. */ int _cons_vcons_scrollback (vcons_t vcons, cons_scroll_t type, float value); +/* Non-locking version of cons_vcons_input. */ +error_t _cons_vcons_input (vcons_t vcons, char *buf, size_t size); + +/* Generate the console event EVENT for console VCONS. */ +void _cons_vcons_console_event (vcons_t vcons, int event); + /* Called by MiG to translate ports into cons_notify_t. mutations.h arranges for this to happen for the fs_notify interfaces. */ -- cgit v1.2.3