55 virtual bool GetSize(SIZE& _size)
const = 0;
64 virtual bool Resize(
const SIZE& size) = 0;
73 virtual void Draw(HDC dc,
int x = 0,
int y = 0)
const = 0;
83 virtual void DrawEx(HDC dc,
int x,
int y, LPARAM lParam)
const
174 virtual void Draw(HDC dc,
int x = 0,
int y = 0)
const
199 size_t m_orgLeftWidth;
211 m_pDrawLeft = drawLeft.
Clone();
212 m_pDrawRight = drawRight.
Clone();
215 m_orgLeftWidth = orgSize.cx;
255 SIZE s1 = { min(
ToInt(m_orgLeftWidth), size.cx), size.cy };
256 SIZE s2 = { max(down_cast<LONG>(size.cx - m_orgLeftWidth), 0), size.cy };
269 virtual void Draw(HDC dc,
int x = 0,
int y = 0)
const
282 virtual void DrawEx(HDC dc,
int x,
int y, LPARAM lParam)
const
286 m_pDrawLeft->
DrawEx(dc, x, y + (m_size.cy - s1.cy) / 2, lParam);
289 m_pDrawRight->
DrawEx(dc, x + s1.cx, y + (m_size.cy - s2.cy) / 2, lParam);
315 void m_CalcSize(
void)
323 RECT r1 = { 0, 0, s1.cx, s1.cy };
324 RECT r2 = { m_offsetOver.x, m_offsetOver.y, m_offsetOver.x + s2.cx, m_offsetOver.y + s2.cy };
325 if ( ::UnionRect(&r1, &r1, &r2) )
327 m_size.cx = r1.right - r1.left;
328 m_size.cy = r1.bottom - r1.top;
344 m_pDrawBase = drawBase.
Clone();
345 m_pDrawOver = drawOver.
Clone();
360 m_pDrawOver = draw.
Clone();
371 return new COffsetDrawer(*m_pDrawBase, m_offsetOver, *m_pDrawOver);
407 virtual void Draw(HDC dc,
int x = 0,
int y = 0)
const
420 virtual void DrawEx(HDC dc,
int x,
int y, LPARAM lParam)
const
422 if ( ! m_pDrawBase.
IsNull() )
424 m_pDrawBase->
DrawEx(dc, x, y, lParam);
426 if ( ! m_pDrawOver.
IsNull() )
428 m_pDrawOver->
DrawEx(dc, x + m_offsetOver.x, y + m_offsetOver.y, lParam);
462 : _super(size), m_color(color), m_width(width)
473 : _super(), m_color(color), m_width(width)
494 virtual void Draw(HDC dc,
int x = 0,
int y = 0)
const
496 int z1 = m_width / 2;
497 int z2 = (m_width + 1) / 2 - 1;
498 HPEN pen = ::CreatePen(PS_SOLID, m_width, m_color);
503 dca.
SelectBrush(
static_cast<HBRUSH
>(::GetStockObject(NULL_BRUSH)));
504 ::RoundRect(dc, x + z1, y + z1,
m_size.cx + x - z2,
m_size.cy + y - z2, 0, 0);
568 virtual void Draw(HDC dc,
int x = 0,
int y = 0)
const
571 COLORREF c = ::GetBkColor(dc);
572 ::SetBkColor(dc, m_color);
573 ::ExtTextOut(dc, 0, 0, ETO_OPAQUE, &rc, NULL, 0, NULL);
631 virtual void Draw(HDC dc,
int x = 0,
int y = 0)
const
634 ::InvertRect(dc, &rc);
668 : _super(size), m_isFrameMode(isFrameMode), m_param1(p1), m_param2(p2)
680 : _super(), m_isFrameMode(isFrameMode), m_param1(p1), m_param2(p2)
701 virtual void Draw(HDC dc,
int x = 0,
int y = 0)
const
704 m_isFrameMode ? ::DrawFrameControl(dc, &rc, m_param1, m_param2) : ::DrawEdge(dc, &rc, m_param1, m_param2);
761 virtual void Draw(HDC dc,
int x = 0,
int y = 0)
const
764 ::DrawFocusRect(dc, &rc);
CBoxDrawer(const SIZE &size, COLORREF color, int width=1)
コンストラクタ
virtual void Draw(HDC dc, int x=0, int y=0) const
[描画] 描画.
CBoxDrawer(COLORREF color, int width=1)
コンストラクタ
virtual IDrawable * Clone(void) const
[作成] クローン作成.
CBoxFillDrawer(COLORREF color)
コンストラクタ
virtual void Draw(HDC dc, int x=0, int y=0) const
[描画] 描画.
CBoxFillDrawer(const SIZE &size, COLORREF color)
コンストラクタ
virtual IDrawable * Clone(void) const
[作成] クローン作成.
virtual void Draw(HDC dc, int x=0, int y=0) const
[描画] 描画.
CBoxInverter(const SIZE &size)
コンストラクタ
CBoxInverter(void)
コンストラクタ
virtual IDrawable * Clone(void) const
[作成] クローン作成.
void SelectBrush(HBRUSH brush)
[選択] ブラシ選択.
void Restore(void)
[設定] リストア.
void SelectPen(HPEN pen)
[選択] ペン選択.
virtual void Draw(HDC dc, int x=0, int y=0) const
[描画] 描画.
CFocusFrameDrawer(void)
コンストラクタ
CFocusFrameDrawer(const SIZE &size)
コンストラクタ
virtual IDrawable * Clone(void) const
[作成] クローン作成.
CFrameDrawer(bool isFrameMode, UINT p1, UINT p2)
コンストラクタ
virtual void Draw(HDC dc, int x=0, int y=0) const
[描画] 描画.
virtual IDrawable * Clone(void) const
[作成] クローン作成.
CFrameDrawer(const SIZE &size, bool isFrameMode, UINT p1, UINT p2)
コンストラクタ
CNullDrawer(void)
コンストラクタ.
virtual void Draw(HDC dc, int x=0, int y=0) const
[描画] 描画.
CNullDrawer(const SIZE &size)
コンストラクタ
virtual bool Resize(const SIZE &size)
[設定] サイズ設定.
virtual bool GetSize(SIZE &_size) const
[取得] サイズ取得.
virtual IDrawable * Clone(void) const
[作成] クローン作成.
virtual void Draw(HDC dc, int x=0, int y=0) const
[描画] 描画.
COffsetDrawer(const IDrawable &drawBase, const POINT &off, const IDrawable &drawOver)
コンストラクタ
virtual bool Resize(const SIZE &size)
[設定] サイズ設定.
COffsetDrawer(const SIZE &size, const POINT &off, const IDrawable &draw)
コンストラクタ.
virtual bool GetSize(SIZE &_size) const
[取得] サイズ取得.
virtual IDrawable * Clone(void) const
[作成] クローン作成.
virtual void DrawEx(HDC dc, int x, int y, LPARAM lParam) const
[描画] 描画.
virtual void Draw(HDC dc, int x=0, int y=0) const
[描画] 描画.
CPairDrawer(const IDrawable &drawLeft, const IDrawable &drawRight)
コンストラクタ
virtual bool Resize(const SIZE &size)
[設定] サイズ設定.
virtual bool GetSize(SIZE &_size) const
[取得] サイズ取得.
virtual IDrawable * Clone(void) const
[作成] クローン作成.
virtual void DrawEx(HDC dc, int x, int y, LPARAM lParam) const
[描画] 描画.
bool IsNull(void) const
[確認] NULLチェック
int ToInt(LPCSTR lpsz, int iBase=10)
[変換] INT変換(ASCII/SJIS用).
virtual bool Resize(const SIZE &size)=0
[設定] サイズ設定.
CPointerHandleT< IDrawable > Ptr
ポインタハンドル型宣言
virtual bool GetSize(SIZE &_size) const =0
[取得] サイズ取得.
virtual ~IDrawable(void)
デストラクタ
virtual IDrawable * Clone(void) const =0
[作成] クローン作成.
virtual void Draw(HDC dc, int x=0, int y=0) const =0
[描画] 描画.
virtual void DrawEx(HDC dc, int x, int y, LPARAM lParam) const
[描画] 描画.