#pragma once #include "actionitem.h" namespace NAction { class CActionSortItem : public CActionItem { public: CActionSortItem(); CActionSortItem(CSigmaDoc * ppDoc, UINT actionType, const CPositionList& list, int nModeSel=0); virtual ~CActionSortItem(void); std::string GetActionName() const override { return typeid(*this).name(); } virtual void Undo(void); virtual void Redo(void); void accept(CActionVisitor& visitor) override; void GetElementList(CPositionList& list); friend class BlobSerializer; protected: std::vector m_oldPos; CPositionList m_eleList; int m_nModeSel = 0; void Movetofront(CPositionList& list); //最上显示 0 void Movetoback(CPositionList& list); //最下显示 1 void Moveforward(CPositionList& list); //上移一层 2 void Moveback(CPositionList& list); //下移一层 3 }; };