Source code of Windows XP (NT5)
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.
 
 
 
 
 
 

77 lines
1.7 KiB

#ifndef _PREVIEW_H
#define _PREVIEW_H
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
// Preview.h : header file
//
#define PREVIEW_SELECT_OFFSET 1
/////////////////////////////////////////////////////////////////////////////
// CRectTrackerEx
class CRectTrackerEx : public CRectTracker
{
public :
void SetClippingWindow(CRect Rect);
protected:
CRect m_rectClippingWindow;
virtual void AdjustRect( int nHandle, LPRECT lpRect );
};
/////////////////////////////////////////////////////////////////////////////
// CPreview window
class CPreview : public CWnd
{
// Construction
public:
void SetHBITMAP(HBITMAP hBitmap);
void PaintHBITMAPToDC();
void ScaleBitmapToDC(HDC hDC, HDC hDCM, LPRECT lpDCRect, LPRECT lpDIBRect);
void ScreenRectToClientRect(HWND hWnd,LPRECT pRect);
CRectTrackerEx m_RectTracker;
CPreview();
// Attributes
public:
// Operations
public:
void GetSelectionRect(RECT *pRect);
void SetSelectionRect(RECT *pRect);
void InvalidateSelectionRect();
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CPreview)
//}}AFX_VIRTUAL
// Implementation
public:
void SetPreviewRect(CRect Rect);
virtual ~CPreview();
// Generated message map functions
protected:
HBITMAP m_hBitmap;
CRect m_PreviewRect;
//{{AFX_MSG(CPreview)
afx_msg void OnLButtonDown(UINT nFlags, CPoint point);
afx_msg BOOL OnSetCursor(CWnd* pWnd, UINT nHitTest, UINT message);
afx_msg void OnPaint();
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
};
/////////////////////////////////////////////////////////////////////////////
//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.
#endif