У меня в принципе есть что-то вроде этого:
class CGlToolBase
{
public:
CGlToolBase(void)
{
}
virtual void OnMouseDown(CGlEngine &glEngine, WPARAM wParam, LPARAM lParam);
virtual void OnMouseMove(CGlEngine &glEngine, WPARAM wParam, LPARAM lParam);
virtual void OnMouseUp(CGlEngine &glEngine, WPARAM wParam, LPARAM lParam);
virtual void OnKeyDown(CGlEngine &glEngine, WPARAM wParam, LPARAM lParam);
virtual void OnLDoubleClick(CGlEngine &glEngine, WPARAM wParam, LPARAM lParam);
~CGlToolBase(void);
};
class CGlToolSelect : public CGlToolBase
{
bool selected;
public:
CGlToolSelect(void)
{
selected = false;
}
virtual void OnMouseDown(CGlEngine &glEngine, WPARAM wParam, LPARAM lParam);
virtual void OnMouseMove(CGlEngine &glEngine, WPARAM wParam, LPARAM lParam);
virtual void OnMouseUp(CGlEngine &glEngine, WPARAM wParam, LPARAM lParam);
virtual void OnKeyDown(CGlEngine &glEngine, WPARAM wParam, LPARAM lParam);
virtual void OnLDoubleClick(CGlEngine &glEngine, WPARAM wParam, LPARAM lParam);
~CGlToolSelect(void);
};
В моем инструменте выбора я установил для выбранного значение false. Это правильный способ сделать это, если я сделаю что-то вроде этого:
CGlToolBase *tool = new CGlToolSelect;
Спасибо