mirror of https://github.com/tongzx/nt5src
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.
80 lines
1.8 KiB
80 lines
1.8 KiB
/*++
|
|
|
|
Copyright (C) 1993-1999 Microsoft Corporation
|
|
|
|
Module Name:
|
|
|
|
ctrlwin.cpp
|
|
|
|
Abstract:
|
|
|
|
Window procedure for the sysmon.ocx drawing window and support
|
|
functions.
|
|
--*/
|
|
|
|
#include "polyline.h"
|
|
|
|
/*
|
|
* CPolyline::Draw
|
|
*
|
|
* Purpose:
|
|
* Paints the current line in the polyline window.
|
|
*
|
|
* Parameters:
|
|
* hDC HDC to draw on, a metafile or printer DC.
|
|
* fMetafile BOOL indicating if hDC is a metafile or not,
|
|
* so we can avoid operations that RIP.
|
|
* fEntire BOOL indicating if we should draw the entire
|
|
* figure or not.
|
|
* pRect LPRECT defining the bounds in which to draw.
|
|
*
|
|
* Return Value:
|
|
* None
|
|
*/
|
|
|
|
void
|
|
CPolyline::Draw(
|
|
HDC hDC,
|
|
HDC hAttribDC,
|
|
BOOL fMetafile,
|
|
BOOL fEntire,
|
|
LPRECT pRect)
|
|
{
|
|
|
|
RECT rc;
|
|
|
|
if (!fMetafile && !RectVisible(hDC, pRect))
|
|
return;
|
|
|
|
SetMapMode(hDC, MM_ANISOTROPIC);
|
|
|
|
//
|
|
// Always set up the window extents to the natural window size
|
|
// so the drawing routines can work in their normal dev coords
|
|
//
|
|
|
|
// Use client rect vs. extent rect for Zoom calculation.
|
|
// Zoom factor = prcPos / Extent, so pRect/ClientRect.
|
|
|
|
|
|
/********* Use the extent rect, not the window rect *********/
|
|
// Using rectExt makes Word printing correct at all zoom levels.
|
|
rc = m_RectExt;
|
|
// GetClientRect(m_pCtrl->Window(), &rc);
|
|
/************************************************************/
|
|
|
|
SetWindowOrgEx(hDC, 0, 0, NULL);
|
|
SetWindowExtEx(hDC, rc.right, rc.bottom, NULL);
|
|
|
|
SetViewportOrgEx(hDC, pRect->left, pRect->top, NULL);
|
|
SetViewportExtEx(hDC, pRect->right - pRect->left,
|
|
pRect->bottom - pRect->top, NULL);
|
|
|
|
m_pCtrl->InitView( g_hWndFoster);
|
|
m_pCtrl->Render(hDC, hAttribDC, fMetafile, fEntire, &rc);
|
|
|
|
return;
|
|
}
|
|
|
|
|
|
|