* improved level number selection in main menu and player selection in
setup menu (input devices section) by using standard button gadgets
* added support for mouse scroll wheel (caused buggy behaviour before)
+ * added support for scrolling horizontal scrollbars with mouse wheel by
+ holding "Ctrl" button pressed while scrolling the wheel
2006-07-25
* improved general scrollbar handling (when jump-scrolling scrollbars)
-#define COMPILE_DATE_STRING "[2006-07-26 16:18]"
+#define COMPILE_DATE_STRING "[2006-07-26 18:08]"
ED_SCROLLBAR_XPOS, ED_SCROLLBAR_YPOS,
SX + ED_SCROLL_HORIZONTAL_XPOS, SY + ED_SCROLL_HORIZONTAL_YPOS,
ED_SCROLL_HORIZONTAL_XSIZE, ED_SCROLL_HORIZONTAL_YSIZE,
- -1, -1,
- -1, -1,
+ 0, 0,
+ SX + SXSIZE + SX, WIN_YSIZE,
GD_TYPE_SCROLLBAR_HORIZONTAL,
GADGET_ID_SCROLL_HORIZONTAL,
"scroll level editing area horizontally"
/* first check for scrollbars in case of mouse scroll wheel button events */
if (button == 4 || button == 5)
{
+ boolean check_horizontal = (GetKeyModState() & KMOD_Control);
+
/* check for the first active scrollbar with matching mouse wheel area */
for (gi = gadget_list_first_entry; gi != NULL; gi = gi->next)
{
if (gi->mapped && gi->active &&
- gi->type & GD_TYPE_SCROLLBAR &&
+ ((gi->type & GD_TYPE_SCROLLBAR_HORIZONTAL && check_horizontal) ||
+ (gi->type & GD_TYPE_SCROLLBAR_VERTICAL && !check_horizontal)) &&
mx >= gi->wheelarea.x && mx < gi->wheelarea.x + gi->wheelarea.width &&
my >= gi->wheelarea.y && my < gi->wheelarea.y + gi->wheelarea.height)
return gi;