by mlepage » Sep 29, 2003 @ 11:40pm
True. But it still leaves problems.
On the PC build I have a fancy toolbar that works just like in Visual Studio 6. When you move the mouse over the buttons, they pop out with a rollover effect. This is without pressing the mouse button.
So, if I move outside the toolbar, they all go back to normal. But if I move off the toolbar outside the window, that button retains its rollover effect which is unaesthetic. Normally I would just handle this on window exit, but I'm unsure where to do that in GapiDraw.
I suppose a brutish hack would be to try to detect a mouse leaving the window. But you can always move the mouse really quickly and defeat that attempt.
When I move the mouse back in the window, not on the toolbar, the rollover effect disappears because I'm not on the toolbar.
But let's say instead of a toolbar rollover effect, I was instead dragging something. Normally I would stop draggin on mouse up, but in this case I have left the window without a mouse up event.
Now, I could let go of the mouse button and reenter the window at any place. My app still thinks it is dragging the object, but now there is a dire consequence. The object I was dragging will snap to whatever position I reentered the window, which is startling and not intended.
Are these little problems we just have to live with when using GapiDraw on the PC in windowed mode? I know they sound like insignificant details, but these little things always bother me. That's why I gave the Tower Mogul folks such a hard time on doing button actions on mouse down when they should be on mouse up. :-)