From 1c35540e3b20c9ab9172f0656f207303ed23e08b Mon Sep 17 00:00:00 2001 From: =?utf8?q?St=C3=A9phane=20Borel?= Date: Wed, 5 Jun 2002 18:07:03 +0000 Subject: [PATCH] * Added mouse coordinates to vout struct. They are only update from x11 for now, and they are used nowhere. --- include/video_output.h | 5 ++++- plugins/x11/xcommon.c | 13 ++++++++++++- src/video_output/video_output.c | 6 +++++- 3 files changed, 21 insertions(+), 3 deletions(-) diff --git a/include/video_output.h b/include/video_output.h index 13e4856098..baf82eeec8 100644 --- a/include/video_output.h +++ b/include/video_output.h @@ -5,7 +5,7 @@ * thread, and destroy a previously opened video output thread. ***************************************************************************** * Copyright (C) 1999, 2000 VideoLAN - * $Id: video_output.h,v 1.77 2002/06/01 18:04:48 sam Exp $ + * $Id: video_output.h,v 1.78 2002/06/05 18:07:03 stef Exp $ * * Authors: Vincent Seguin * @@ -135,6 +135,9 @@ struct vout_thread_s mtime_t display_jitter; /* average deviation from the PTS */ count_t c_jitter_samples; /* number of samples used for the * * calculation of the jitter */ + + int i_mouse_x, i_mouse_y, i_mouse_button; + }; #define I_OUTPUTPICTURES p_vout->output.i_pictures diff --git a/plugins/x11/xcommon.c b/plugins/x11/xcommon.c index 70cab82677..c5daf3ade0 100644 --- a/plugins/x11/xcommon.c +++ b/plugins/x11/xcommon.c @@ -2,7 +2,7 @@ * xcommon.c: Functions common to the X11 and XVideo plugins ***************************************************************************** * Copyright (C) 1998-2001 VideoLAN - * $Id: xcommon.c,v 1.39 2002/06/04 00:11:12 sam Exp $ + * $Id: xcommon.c,v 1.40 2002/06/05 18:07:03 stef Exp $ * * Authors: Vincent Seguin * Samuel Hocevar @@ -721,6 +721,12 @@ static int vout_Manage( vout_thread_t *p_vout ) /* Mouse click */ else if( xevent.type == ButtonPress ) { + p_vout->i_mouse_x = (int)( (float)xevent.xmotion.x + / p_vout->p_sys->i_width * p_vout->render.i_width ); + p_vout->i_mouse_y = (int)( (float)xevent.xmotion.y + / p_vout->p_sys->i_height * p_vout->render.i_height ); + p_vout->i_mouse_button = 1; + switch( ((XButtonEvent *)&xevent)->button ) { case Button1: @@ -774,6 +780,11 @@ static int vout_Manage( vout_thread_t *p_vout ) { ToggleCursor( p_vout ); } + + p_vout->i_mouse_x = (int)( (float)xevent.xmotion.x + / p_vout->p_sys->i_width * p_vout->render.i_width ); + p_vout->i_mouse_y = (int)( (float)xevent.xmotion.y + / p_vout->p_sys->i_height * p_vout->render.i_height ); } /* Reparent move -- XXX: why are we getting this ? */ else if( xevent.type == ReparentNotify ) diff --git a/src/video_output/video_output.c b/src/video_output/video_output.c index 95f07e6fc0..76e0b8830f 100644 --- a/src/video_output/video_output.c +++ b/src/video_output/video_output.c @@ -5,7 +5,7 @@ * thread, and destroy a previously oppened video output thread. ***************************************************************************** * Copyright (C) 2000-2001 VideoLAN - * $Id: video_output.c,v 1.183 2002/06/02 09:03:54 sam Exp $ + * $Id: video_output.c,v 1.184 2002/06/05 18:07:03 stef Exp $ * * Authors: Vincent Seguin * @@ -133,6 +133,10 @@ vout_thread_t * __vout_CreateThread ( vlc_object_t *p_parent, p_vout->render_time = 10; p_vout->c_fps_samples= 0; + p_vout->i_mouse_x = 0; + p_vout->i_mouse_y = 0; + p_vout->i_mouse_button = 0; + /* user requested fullscreen? */ if( config_GetInt( p_vout, "fullscreen" ) ) { -- 2.39.2