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.
kev/Drawer/Module/GeoSigmaDraw/ActionMarkDeleteItem.h

53 lines
1022 B
C++

#pragma once
#include ".\actionitem.h"
#include ".\DrawOperator\MapStringToPtrNoCase.h"
class CSigmaDoc;
class CSigmaView;
namespace NAction
{
class CActionMarkDeleteItem :
public CActionItem
{
public:
CActionMarkDeleteItem();
CActionMarkDeleteItem(CSigmaDoc* ppDoc, UINT actionType);
virtual ~CActionMarkDeleteItem(void);
std::string GetActionName() const override
{
return typeid(*this).name();
}
void AddMark(CXy* pMarkXy);
virtual void Undo(void);
virtual void Redo(void);
void EnableRePosition(BOOL bPosition);
void Clear();
void accept(CActionVisitor& visitor) override;
CMapStringToPtrNoCase mark;
BOOL m_bDelete = FALSE;
BOOL m_bRePosition = FALSE;
protected:
void UndoToAdd(void);
void RedoToDelete(void);
};
class CActionMarkAddItem :
public CActionMarkDeleteItem
{
public:
CActionMarkAddItem();
CActionMarkAddItem(CSigmaDoc* ppDoc, UINT actionType);
virtual ~CActionMarkAddItem(void);
virtual void Undo(void);
virtual void Redo(void);
};
};