Redrawing on Window Movement

static LRESULT

OnMove(HWND hwnd, int x, int y)

{

int xDelta;

int yDelta;

HRESULT hRes;

// No action if the device has not yet been created or if we are

// suspended.

if ((NULL != lpd3dDevice) && !fSuspended)

{

// Update the destination rectangle for the new client position.

xDelta = x - rDstRect.left;

yDelta = y - rDstRect.top;

rDstRect.left += xDelta;

rDstRect.top += yDelta;

rDstRect.right += xDelta;

rDstRect.bottom += yDelta;

// Repaint the client area.

hRes = DoFrame();

if (FAILED(hRes))

{

FatalError(hwnd, IDS_ERRMSG_RENDERSCENE, hRes);

return 0L;

}

}

return 0L;

}