Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

48 lines
1.5 KiB

/****************************************************************************
MOUSE.CPP : Mouse callback
History:
02-OCT-2000 CSLim Created
****************************************************************************/
#include "private.h"
#include "korimx.h"
#include "icpriv.h"
#include "mes.h"
//+---------------------------------------------------------------------------
//
// _MouseCallback
//
//----------------------------------------------------------------------------
#define IMEMOUSE_NONE 0x00 // no mouse button was pushed
#define IMEMOUSE_LDOWN 0x01
#define IMEMOUSE_RDOWN 0x02
#define IMEMOUSE_MDOWN 0x04
#define IMEMOUSE_WUP 0x10 // wheel up
#define IMEMOUSE_WDOWN 0x20 // wheel down
/* static */
HRESULT CICPriv::_MouseCallback(ULONG uEdge, ULONG uQuadrant, DWORD dwBtnStatus, BOOL *pfEaten, void *pv)
{
CEditSession2 *pes;
ESSTRUCT ess;
HRESULT hr;
CICPriv *pCicPriv = (CICPriv *)pv;
if ((dwBtnStatus & (IMEMOUSE_LDOWN |IMEMOUSE_RDOWN | IMEMOUSE_MDOWN | IMEMOUSE_WDOWN)) && pCicPriv)
{
ESStructInit(&ess, ESCB_COMPLETE);
if (pes = new CEditSession2(pCicPriv->GetIC(), pCicPriv->GetIMX(), &ess, CKorIMX::_EditSessionCallback2))
{
pes->Invoke(ES2_READWRITE | ES2_ASYNC, &hr);
pes->Release();
}
}
*pfEaten = fFalse;
return S_OK;
}