Ignore:
Timestamp:
Aug 21, 2009, 5:55:37 PM (16 years ago)
Author:
lpino
Message:
  • More mouse control implementation and fixes
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/plugins/org.eclipse.swt/Eclipse SWT/pm/org/eclipse/swt/widgets/Control.java

    r177 r181  
    29492949//        case OS.WM_BUTTON2DBLCLK: result = WM_BUTTON2DBLCLK (mp1, mp2); break;
    29502950        case OS.WM_BUTTON1DOWN: result = WM_BUTTON1DOWN (mp1, mp2); break;
    2951 //        case OS.WM_BUTTON1UP: result = WM_BUTTON1UP (mp1, mp2); break;
     2951        case OS.WM_BUTTON1UP: result = WM_BUTTON1UP (mp1, mp2); break;
    29522952//        case OS.WM_BUTTON1CLICK: result = WM_BUTTON1CLICK (mp1, mp2); break;
    29532953        case OS.WM_CALCVALIDRECTS: result = WM_CALCVALIDRECTS (mp1, mp2); break;
     
    33413341      * fix is to send a mouse down event.
    33423342      */
    3343 //      sendMouseEvent (SWT.MouseDown, 1, OS.WM_LBUTTONDOWN, wParam, lParam);
    33443343      sendMouseEvent (SWT.MouseDoubleClick, 1, OS.WM_BUTTON1DBLCLK, mp1, mp2);
    33453344      int result = callWindowProc (OS.WM_BUTTON1DBLCLK, mp1, mp2);
     
    33683367//      }
    33693368      sendMouseEvent (SWT.MouseDown, 1, OS.WM_BUTTON1DOWN, mp1, mp2);
    3370 //      int result = callWindowProc (OS.WM_BUTTON1DOWN, mp1, mp2);
    3371       int result = 0;
     3369      int result = callWindowProc (OS.WM_BUTTON1DOWN, mp1, mp2);
     3370//      int result = 0;
    33723371      if (mouseDown) {
    33733372          int hwnd = OS.WinQueryCapture (OS.HWND_DESKTOP);
     
    33813380                  System.out.println("Control::WM_BUTTON1DOWN");
    33823381              }
    3383 //              OS.WinSetActiveWindow (OS.HWND_DESKTOP, handle);
     3382              OS.WinSetActiveWindow (OS.HWND_DESKTOP, handle);
    33843383      }
    33853384//      if (dragging) {
     
    34153414}
    34163415
    3417 //LRESULT WM_LBUTTONUP (int wParam, int lParam) {
    3418 //      sendMouseEvent (SWT.MouseUp, 1, OS.WM_LBUTTONUP, wParam, lParam);
    3419 //      int result = callWindowProc (OS.WM_LBUTTONUP, wParam, lParam);
     3416MRESULT WM_BUTTON1UP (int mp1, int mp2) {
     3417      sendMouseEvent (SWT.MouseUp, 1, OS.WM_BUTTON1UP, mp1, mp2);
     3418      int result = callWindowProc (OS.WM_BUTTON1UP, mp1, mp2);
    34203419//      if ((wParam & (OS.MK_LBUTTON | OS.MK_MBUTTON | OS.MK_RBUTTON)) == 0) {
    3421 //              if (OS.WinQueryCapture () == handle) OS.ReleaseCapture ();
     3420              if (OS.WinQueryCapture (OS.HWND_DESKTOP) == handle) OS.WinSetCapture (OS.HWND_DESKTOP, OS.NULLHANDLE);
    34223421//      }
    3423 //      return new LRESULT (result);
    3424 //}
    3425 //
     3422      return new MRESULT (result);
     3423}
     3424
    34263425//LRESULT WM_MBUTTONDBLCLK (int wParam, int lParam) {
    34273426//      /*
Note: See TracChangeset for help on using the changeset viewer.