@@ -85,8 +85,8 @@ const char* GetDriverName()
8585 * @param[in] CallBack DriverCallback für Rückmeldungen.
8686 */
8787VideoWinAPI::VideoWinAPI (VideoDriverLoaderInterface* CallBack)
88- : VideoDriver(CallBack), mouse_l(false ), mouse_r(false ), mouse_z( 0 ), screen( nullptr ), screen_dc (nullptr ),
89- screen_rc(nullptr ), isWindowResizable(false ), isMinimized(true )
88+ : VideoDriver(CallBack), mouse_l(false ), mouse_r(false ), mouse_m( false ), mouse_z( 0 ), screen (nullptr ),
89+ screen_dc( nullptr ), screen_rc(nullptr ), isWindowResizable(false ), isMinimized(true )
9090{
9191 pVideoWinAPI = this ;
9292}
@@ -684,6 +684,14 @@ LRESULT CALLBACK VideoWinAPI::WindowProc(HWND window, UINT msg, WPARAM wParam, L
684684 pVideoWinAPI->mouse_xy .rdown = false ;
685685 pVideoWinAPI->CallBack ->Msg_RightUp (pVideoWinAPI->mouse_xy );
686686 break ;
687+ case WM_MBUTTONDOWN:
688+ pVideoWinAPI->mouse_m = true ;
689+ pVideoWinAPI->mouse_xy .mdown = true ;
690+ pVideoWinAPI->CallBack ->Msg_MiddleDown (pVideoWinAPI->mouse_xy );
691+ case WM_MBUTTONUP:
692+ pVideoWinAPI->mouse_m = false ;
693+ pVideoWinAPI->mouse_xy .mdown = false ;
694+ pVideoWinAPI->CallBack ->Msg_MiddleUp (pVideoWinAPI->mouse_xy );
687695 case WM_MOUSEWHEEL:
688696 // Obtain scrolling distance. For every multiple of WHEEL_DELTA, we have to fire an event, because we treat
689697 // the wheel like two buttons. One wheel "step" usually produces a mouse_z of +/- WHEEL_DELTA. But there
0 commit comments