34template<
typename WND = CWnd>
59 HRGN h = ::CreateRectRgn(0, 0, 0, 0);
60 if ( ::CombineRgn(h, rgn, NULL, RGN_COPY) == ERROR )
77 HRGN h = ::CreateRectRgnIndirect(&rc);
108 if ( ::PtInRegion(
m_areas[i].hRgn, po.x, po.y) )
113 return INVALID_INDEX;
133 virtual LRESULT
WindowProc(UINT message, WPARAM wParam, LPARAM lParam)
142 return _super::WindowProc(message, wParam, lParam);
154 if ( idx != INVALID_INDEX )
#define loop(VAR, CNT)
loop構文.
void RemoveAll(void)
[削除] 空化
size_t GetSize(void) const
[取得] サイズ取得
INDEX Add(const TYP &t)
[追加] 要素一つ追加.
virtual ~CHitTestAddinT(void)
デストラクタ
virtual INT_PTR OnToolHitTest(CPoint point, TOOLINFO *pTI) const
[確認] ヒットテスト.
INDEX HitTest(const POINT &po) const
[確認] ヒットテスト
CSimpleVectorT< TParam > m_areas
エリア管理
CHitTestAddinT(void)
コンストラクタ
bool AddArea(INDEX id, const RECT &rc)
[追加] エリア設定.
virtual LRESULT WindowProc(UINT message, WPARAM wParam, LPARAM lParam)
[通知] for processing Windows messages.
bool AddArea(INDEX id, HRGN rgn)
[追加] エリア設定.
void DeleteAllAreas(void)
[削除] 全エリア情報破棄