[AD] re: mouse mickeys problem

[ Thread Index | Date Index | More lists.liballeg.org/allegro-developers Archives ]


some investigation into the allegro source i find that mickeys are obtained by using win32::GetCursorPos() which i presume only works until the cursor hits the edge of the screen.
i have found some directInput code that apparently gets the raw mickeys
here is a sample:

DIMOUSESTATE diMouseState;
LONG         MouseX, MouseY;
if(lpdiMouse->GetDeviceState(sizeof(diMouseState), &diMouseState) == DI_OK)
{
   MouseX = diMouseState.lX;
   MouseY = diMouseState.lY;
}


i think this is what needs to be done to get real mickeys from DirectInput.
i got the above sample from;

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dninput/html/msdn_dinput3.asp

which is DirectInput 3.. is that version old enough to support all the platforms allegro supports ?

i do not know enough about COM or DirectInput to be much more help.. i hope this is a good start.


aj.







WinXP
MSVC 7.1
windowed mode
allegro 4.1.13 (original/non-cvs)


mouse mickeys work as described in the docs, until the cursor hits the Windows desktop edge, then they stop working. Is this the designed behaviour?, cause it doesn't match the documented behaviour.

I was wishing to have mickeys continue to work when the cursor hits the Windows desktop edge.

1. allegro needs fixing ; either the code to match the docs, or the docs to match the code! 2. if the code gets fixed im happy. if the docs get fixed; can anyone offer a solution for me (i want mickeys when mouse hits desktop edge).





Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/