Esempio n. 1
0
void CExtButton::OnLButtonUp(UINT nFlags, CPoint point) 
{
	// RTF tool tip support
#if (!defined __EXT_MFC_NO_RTF_TOOLTIPS)
	if( m_bToolTipSet )
		m_wndRtfToolTipCtrl.Hide();
#endif

	if( m_bKeyTracking )
		return;

BOOL bWasPushed = m_bPushed && m_bPushTracking;
	m_bMouseOver = m_bPushed = m_bPushTracking = FALSE;
	if( GetCapture() == this )
		ReleaseCapture();
	Invalidate();
	UpdateWindow();

	if( !bWasPushed )
		return;

	//CButton::OnLButtonDown(nFlags, point);
	if( IsWindowEnabled()
		&& IsWindowVisible()
		)
		_OnClick();
}
Esempio n. 2
0
BOOL CExtButton::PreTranslateMessage(MSG* pMsg) 
{
	if( !CExtPopupMenuWnd::IsMenuTracking() )
	{
		InitToolTip();
		m_ToolTip.RelayEvent(pMsg);
	}

//	if( CExtPopupMenuWnd::IsMenuTracking() )
//		return TRUE;
	if(		(	pMsg->message == WM_KEYDOWN
				|| pMsg->message == WM_KEYUP
			)
		&&
			(	pMsg->wParam == VK_RETURN
				|| pMsg->wParam == VK_SPACE
			)
		)
	{
		if( IsWindowEnabled() && IsWindowVisible() && (!m_bPushTracking) )
		{
			if(	(pMsg->message == WM_KEYDOWN && pMsg->wParam == VK_RETURN)
				||
				(pMsg->message == WM_KEYUP && pMsg->wParam == VK_SPACE)
				)
			{
				if( GetCapture() == this )
					ReleaseCapture();
				m_bMouseOver = m_bPushed = m_bPushTracking = m_bKeyTracking = FALSE;
				Invalidate();
				UpdateWindow();
				_OnClick();
				return TRUE;
			}
			if(pMsg->message == WM_KEYDOWN && pMsg->wParam == VK_SPACE)
			{
				m_bMouseOver = m_bPushed = m_bKeyTracking = TRUE;
				SetCapture();
				Invalidate();
				UpdateWindow();
				return TRUE;
			}
		} // if( IsWindowEnabled() && IsWindowVisible() && (!m_bPushTracking) )
		return TRUE;
	}

	return CButton::PreTranslateMessage(pMsg);
}
Esempio n. 3
0
void TWidget::_handle_mouseButtonReleased(
    const TEvent_MouseClick& event, bool& consume
) {
    consume = false;

    if (IsVisible() == false) {
        return;
    }

    if (clicked == true) {
        if ((mouseOver == true) && (_isMouseOverChild() == false)) {
            _OnClick();
            GetSignal(DefaultSignalID::MouseClick).Send();
        }

        _OnMouseButtonUp(event);
        GetSignal(DefaultSignalID::MouseButtonUp).Send(&event);
    }
}