The call setting the Cursor to MOVE_CURSOR doesn't seem to work correctly under Win32. When the cursor is changed to MOVE_CURSOR and the pointer is dragged, the previous cursor is drawn. The returned value of getCursor indicates that it has been set to MOVE_CURSOR. Sometimes the MOVE_CURSOR is drawn at the end of the drag.
To reproduce in JWS (sorry I don't have an isolated test case but i've examined the GUI builder code extensively):
- Open a GUI builder project and put a component on the layout.
- Move the cursor to the edge of the component and when the cursor changes to the HAND_CURSOR you may move the component by dragging it.
- The MOVE_CURSOR should appear instead of the HAND_CURSOR
If you change the _SS_JDK variable to say JDK1.1.2A it will behave correctly. It also behaves correctly on Sparc. Setting the cursor to the hand cursor seems to work fine.
I noticed that awt_Component.cpp has had some recent modifications with respect to pointer motion and setting the cursor.
john.walker@Eng 1997-09-04
I believe this same regression is manifesting itself in Java Studio Visual Java.
The cursor no longer changes on a mouse down.
To reproduce:
Bring up Java Studio and instantiate a component (such as the button)
by selecting the button in the palette and then clicking in the GUI
window. Now click on the border of the button, the cursor should change
to a move cursor on grow cursor depending on where on the border you
have clicked but it stays as the default cursor.
This behavior works using JDK1.1.2A and JDK1.1.3D.