Ignore:
Timestamp:
Apr 8, 2003, 3:45:04 PM (22 years ago)
Author:
sandervl
Message:

PF: Treat LBUTTON press different from others in scrollbar. (WineX resync)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/user32/scroll.cpp

    r9542 r9994  
    1 /* $Id: scroll.cpp,v 1.48 2002-12-20 15:09:44 sandervl Exp $ */
     1/* $Id: scroll.cpp,v 1.49 2003-04-08 13:45:04 sandervl Exp $ */
    22/*
    33 * Scrollbar control
     
    11531153}
    11541154
     1155
     1156/***********************************************************************
     1157 *           SCROLL_TrackScrollBar
     1158 *
     1159 * Track a mouse button press on a scroll-bar.
     1160 * pt is in screen-coordinates for non-client scroll bars.
     1161 */
     1162void SCROLL_TrackScrollBar( HWND hwnd, WPARAM wparam, LPARAM lParam, INT scrollbar)
     1163{
     1164    MSG msg;
     1165    INT xoffset = 0, yoffset = 0;
     1166    POINT pt;
     1167    pt.x = SLOWORD(lParam);
     1168    pt.y = SHIWORD(lParam);
     1169
     1170    if (scrollbar != SB_CTL)
     1171    {
     1172      Beep(100,100);
     1173    }
     1174
     1175    SCROLL_HandleScrollEvent( hwnd, wparam, lParam, scrollbar, WM_LBUTTONDOWN);
     1176
     1177    do
     1178    {
     1179        if (!GetMessageW( &msg, 0, 0, 0 )) break;
     1180        if (CallMsgFilterW( &msg, MSGF_SCROLLBAR )) continue;
     1181        switch(msg.message)
     1182        {
     1183        case WM_LBUTTONUP:
     1184        case WM_MOUSEMOVE:
     1185        case WM_SYSTIMER:
     1186            pt.x = SLOWORD(msg.lParam) + xoffset;
     1187            pt.y = SHIWORD(msg.lParam) + yoffset;
     1188            SCROLL_HandleScrollEvent( hwnd, msg.wParam, MAKELONG(pt.x,pt.y), scrollbar, msg.message );
     1189            break;
     1190        default:
     1191            TranslateMessage( &msg );
     1192            DispatchMessageW( &msg );
     1193            break;
     1194        }
     1195        if (!IsWindow( hwnd ))
     1196        {
     1197            ReleaseCapture();
     1198            break;
     1199        }
     1200    } while (msg.message != WM_LBUTTONUP);
     1201}
     1202
    11551203/* Window Procedures */
    11561204
     
    11731221
    11741222    case WM_LBUTTONDOWN:
     1223            SCROLL_TrackScrollBar( hwnd, wParam, lParam, SB_CTL);
     1224            break;
     1225
    11751226    case WM_LBUTTONUP:
    11761227    case WM_NCHITTEST:
     
    15321583    info.nMax   = MaxVal;
    15331584    info.fMask  = SIF_RANGE;
     1585#ifdef __WIN32OS2__
    15341586//testestset
    15351587    static int nestlevel = 0;
     
    15411593    nestlevel--;
    15421594//testestset
     1595#endif
    15431596    return TRUE;
    15441597}
Note: See TracChangeset for help on using the changeset viewer.