Silverfrost Forums

Welcome to our forums

Scroll wheel support in sdbg

8 Dec 2006 9:32 #1399

The title says it all - it would be really really nice if sdbg supported scrolling using the mouse scroll wheel.

Alan

5 Jul 2007 12:25 #2023

A third vote. It would be good if %gr call-back and get_mouse_info@ included information of the scroll wheel operation. I've tried it with full_mouse_input and the scroll button appears as a mouse move in the Y direction. Is there any more information on how to use the scroll wheel in this way ?

5 Jul 2007 8:35 #2024

Here is a summary of the current situation as I understand it.

WM_MOUSEWHEEL is implemented in %eb as evidenced in the old Plato2. It is also implemented in %ht but nowhere else in ClearWin+ that I can see.

SDBG is built on the basis of %tx which does not respond to WM_MOUSEWHEEL at the moment. Off hand I do not know how much work would be needed to add this feature to ClearWin+.

I think that it would probably be a simple matter to add WM_MOUSEWHEEL to the %gr feedback and I will add this to the wishlist.

get_mouse_info@ reports the current mouse position so, on the face of it, does not bear any direct relation to the WM_MOUSEWHEEL 'event' unless and until it is converted into a scrolling action. There again, the mouse position is not changed by a mouse wheel scrolling action so get_mouse_info@ does not seem to be related to the mouse wheel.

You can get at WM_MOUSEWHEEL directly by implementing %mg for this 'event'.

5 Jul 2007 11:06 #2026

Paul,

With i = winio@ ('%`^gr[grey, rgb_colours, full_mouse_input]&', ... I appeared to get the Y value changing with the scroll wheel, but that may have been me moving the mouse as I tried to hold it still. The X value and the mouse icon did not appear to move.

It would be good to trap the clicking and direction of the wheel in %gr.

John

21 Nov 2007 12:07 #2455

Hi,

I'm not sure if I understood the question, but here is some code to get information about the mouse wheel:

  INTEGER FUNCTION CB_MOUSE_WHEEL()

  USE MSWIN
  integer*4     zDelta,WPARAM

  CB_MOUSE_WHEEL = 3

  WPARAM = CLEARWIN_INFO@('MESSAGE_WPARAM')
  zDelta = HIWORD@(WPARAM)

c ... use zDelta for further calculations like zoom in a graphics window

  end

Maybe this can help.

Regards, Wilfried

Please login to reply.