You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
26 lines
755 B
C++
26 lines
755 B
C++
#pragma once
|
|
#include <afxwin.h>
|
|
#include "HTrackerHandleCalculator.h"
|
|
|
|
class HTrackerDrawer
|
|
{
|
|
public:
|
|
HTrackerDrawer();
|
|
void SetRotateAndShearState(bool status);
|
|
void Draw(CDC * pDC, const CRect & boundRect);
|
|
void Reset();
|
|
private:
|
|
void DrawMarkRect(CDC * pDC);
|
|
void DrawHandleRect(CDC* pDC, CRect rect, BOOL bNoEditMark);
|
|
void DrawCenter(CDC * pDC, POINT center, bool bTrack);
|
|
void DrawMarkRotate(CDC* pDC);
|
|
void DrawCenterRotate(CDC * pDC, POINT center, bool bTrack);
|
|
private:
|
|
CRect m_boundRect;
|
|
COLORREF m_colorMark; //大矩形的颜色.默认为浅灰色.
|
|
COLORREF m_colorHandles; //八个小矩形的颜色.默认为黑色.
|
|
COLORREF m_colorCenter;
|
|
HTrackerHandleCalculator m_handleCalctor;
|
|
int m_HandleSize;
|
|
bool m_rotateAndShearState;
|
|
}; |