mirror of
https://github.com/VARCem/PDCurses.git
synced 2026-09-25 00:05:16 +00:00
Left/right scroll wheel support for SDL and Win32. Still not tested.
This commit is contained in:
@@ -2,7 +2,7 @@
|
||||
|
||||
#include "pdcsdl.h"
|
||||
|
||||
RCSID("$Id: pdckbd.c,v 1.20 2008/07/14 04:24:52 wmcbrine Exp $")
|
||||
RCSID("$Id: pdckbd.c,v 1.21 2011/04/23 06:50:02 wmcbrine Exp $")
|
||||
|
||||
/*man-start**************************************************************
|
||||
|
||||
@@ -282,12 +282,24 @@ static int _process_mouse_event(void)
|
||||
|
||||
/* handle scroll wheel */
|
||||
|
||||
if ((btn == 4 || btn == 5) && action == BUTTON_RELEASED)
|
||||
if ((btn >= 4 && btn <= 7) && action == BUTTON_RELEASED)
|
||||
{
|
||||
pdc_mouse_status.x = pdc_mouse_status.y = -1;
|
||||
|
||||
pdc_mouse_status.changes = (btn == 5) ?
|
||||
PDC_MOUSE_WHEEL_DOWN : PDC_MOUSE_WHEEL_UP;
|
||||
switch (btn)
|
||||
{
|
||||
case 4:
|
||||
pdc_mouse_status.changes = PDC_MOUSE_WHEEL_UP;
|
||||
break;
|
||||
case 5:
|
||||
pdc_mouse_status.changes = PDC_MOUSE_WHEEL_DOWN;
|
||||
break;
|
||||
case 6:
|
||||
pdc_mouse_status.changes = PDC_MOUSE_WHEEL_LEFT;
|
||||
break;
|
||||
case 7:
|
||||
pdc_mouse_status.changes = PDC_MOUSE_WHEEL_RIGHT;
|
||||
}
|
||||
|
||||
return KEY_MOUSE;
|
||||
}
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
#include "pdcwin.h"
|
||||
|
||||
RCSID("$Id: pdckbd.c,v 1.115 2008/07/20 20:12:04 wmcbrine Exp $")
|
||||
RCSID("$Id: pdckbd.c,v 1.116 2011/04/23 06:50:03 wmcbrine Exp $")
|
||||
|
||||
/*man-start**************************************************************
|
||||
|
||||
@@ -486,6 +486,19 @@ static int _process_mouse_event(void)
|
||||
return KEY_MOUSE;
|
||||
}
|
||||
|
||||
if (MEV.dwEventFlags == 8)
|
||||
{
|
||||
pdc_mouse_status.changes = (MEV.dwButtonState & 0xFF000000) ?
|
||||
PDC_MOUSE_WHEEL_RIGHT : PDC_MOUSE_WHEEL_LEFT;
|
||||
|
||||
pdc_mouse_status.x = -1;
|
||||
pdc_mouse_status.y = -1;
|
||||
|
||||
memset(&old_mouse_status, 0, sizeof(old_mouse_status));
|
||||
|
||||
return KEY_MOUSE;
|
||||
}
|
||||
|
||||
action = (MEV.dwEventFlags == 2) ? BUTTON_DOUBLE_CLICKED :
|
||||
((MEV.dwEventFlags == 1) ? BUTTON_MOVED : BUTTON_PRESSED);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user