void CKey::OnLButtonDown(const UINT nFlags, const CPoint point) { switch (m_nKeyType) { case NORMAL_KEY: SetKeyType(PUSHED_KEY); SetDraggingCursor(); break; case REMAPPED_KEY: SetKeyType(REMAPPED_PUSHED_KEY); break; } CButton::OnLButtonDown(nFlags, point); }
void CTreeViewEx::DragMove(CPoint /*point*/) { eTYPE_DROPPING eDropping; HTREEITEM hDroppingItem = GetDropItem(eDropping); GetTreeCtrl().SetInsertMark(0, 0); if(eDropping == DROPPING_ABOVE) { GetTreeCtrl().SetInsertMark(hDroppingItem, FALSE); } if(eDropping == DROPPING_BELOW) { GetTreeCtrl().SetInsertMark(hDroppingItem); } SetDraggingCursor(eDropping); }
void CKey::OnMouseMove(const UINT nFlags, CPoint point) { if (nFlags & MK_LBUTTON) { ClientToScreen(&point); CKeyboardLayout *parent = (CKeyboardLayout *)GetParent(); if (m_nKeyType == PUSHED_KEY) { int nPointedKey = parent->GetPointedKey(point); if (nPointedKey) { if (nPointedKey != m_nDroppableKey) { if (m_nDroppableKey) { reinterpret_cast<CKey*>(parent->GetDlgItem(m_nDroppableKey))->SetKeyType(m_nDroppableKeyType); SetNoCursor(); } if (IsDroppableKey(nPointedKey)) { m_nDroppableKey = nPointedKey; m_nDroppableKeyType = ((CKey*)parent->GetDlgItem(m_nDroppableKey))->GetKeyType(); reinterpret_cast<CKey*>(parent->GetDlgItem(m_nDroppableKey))->SetKeyType(DROPPABLE_KEY); SetDraggingCursor(); } } } else { if (m_nDroppableKey) { reinterpret_cast<CKey*>(parent->GetDlgItem(m_nDroppableKey))->SetKeyType(m_nDroppableKeyType); m_nDroppableKey = 0; m_nDroppableKeyType = NORMAL_KEY; SetNoCursor(); } } } if (m_nKeyType == REMAPPED_PUSHED_KEY) { if (m_nKey != parent->GetPointedKey(point)) { SetKeyType(REMAPPED_KEY); } } if (m_nKeyType == REMAPPED_KEY) { if (m_nKey == parent->GetPointedKey(point)) { SetKeyType(REMAPPED_PUSHED_KEY); } } } CButton::OnMouseMove(nFlags, point); }