|
|
|
|
|
#pragma once
|
|
|
|
|
|
#include "ActionItem.h"
|
|
|
|
|
|
|
|
|
|
|
|
namespace NAction
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD> Action<EFBFBD><EFBFBD>֧<EFBFBD>ֽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Action <EFBFBD><EFBFBD>װ<EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һЩ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>װ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><EFBFBD> CActionComboItem<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
*/
|
|
|
|
|
|
class CActionListItem :
|
|
|
|
|
|
public CActionItem
|
|
|
|
|
|
{
|
|
|
|
|
|
public:
|
|
|
|
|
|
CActionListItem();
|
|
|
|
|
|
CActionListItem(CSigmaDoc * ppDoc, UINT actionType);
|
|
|
|
|
|
virtual ~CActionListItem(void);
|
|
|
|
|
|
|
|
|
|
|
|
std::string GetActionName() const override
|
|
|
|
|
|
{
|
|
|
|
|
|
return typeid(*this).name();
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
virtual void Undo(void);
|
|
|
|
|
|
virtual void Redo(void);
|
|
|
|
|
|
virtual void Finish(void);
|
|
|
|
|
|
|
|
|
|
|
|
void accept(CActionVisitor& visitor) override;
|
|
|
|
|
|
|
|
|
|
|
|
POSITION AddLayerAddItem(CLayer* pAddedLayer, const CString curLayerName);
|
|
|
|
|
|
|
|
|
|
|
|
POSITION AddChangeLayerItem(CPositionList& list, CString strOldLayer, CString strNewLayer);
|
|
|
|
|
|
|
|
|
|
|
|
friend class BlobSerializer;
|
|
|
|
|
|
|
|
|
|
|
|
protected:
|
|
|
|
|
|
CPtrList ActionList;
|
|
|
|
|
|
POSITION AddItem(CActionItem* pItem);
|
|
|
|
|
|
|
|
|
|
|
|
public:
|
|
|
|
|
|
void Clear();
|
|
|
|
|
|
int GetCount(void);
|
|
|
|
|
|
|
|
|
|
|
|
POSITION AddTailItem(CActionItem* pItem);
|
|
|
|
|
|
POSITION AddHeadItem(CActionItem* pItem);
|
|
|
|
|
|
|
|
|
|
|
|
POSITION AddAddItem(const CPositionList& AddList);
|
|
|
|
|
|
POSITION AddAddItem(COne* pOne);
|
|
|
|
|
|
POSITION AddDeleteItem(const CPositionList& DelList, BOOL bPerformOperation=FALSE);
|
|
|
|
|
|
POSITION AddDeleteItem(POSITION posElement);
|
|
|
|
|
|
/**
|
|
|
|
|
|
* ע<EFBFBD>⣺<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ĵ<EFBFBD> CActionModifiedItem <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ԭ<EFBFBD><EFBFBD><EFBFBD>Ѿ<EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ԭʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¸<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> api <EFBFBD>Ѿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><EFBFBD>ʹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
*
|
|
|
|
|
|
* \param list
|
|
|
|
|
|
* \return
|
|
|
|
|
|
*/
|
|
|
|
|
|
POSITION AddModifiedItem(const CPositionList& list);
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
* ע<EFBFBD>⣺<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ĵ<EFBFBD> CActionModifiedItem <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ԭ<EFBFBD><EFBFBD><EFBFBD>Ѿ<EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ԭʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¸<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> api <EFBFBD>Ѿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><EFBFBD>ʹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
*
|
|
|
|
|
|
* \param posElement
|
|
|
|
|
|
* \param pOne
|
|
|
|
|
|
* \return
|
|
|
|
|
|
*/
|
|
|
|
|
|
POSITION AddModifiedItem(POSITION posElement, COne* pOne);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
POSITION AddBackupItem(const CPositionList& bakList);
|
|
|
|
|
|
POSITION AddBackupItem(POSITION pos);
|
|
|
|
|
|
POSITION AddBackupItem(COne* pOne);
|
|
|
|
|
|
|
|
|
|
|
|
POSITION AddMarkAddItem(CXy* pxy);
|
|
|
|
|
|
POSITION AddMarkDeleteItem(CXy* pxy);
|
|
|
|
|
|
|
|
|
|
|
|
POSITION AddChangeNameItem(POSITION pos, CString oldName, CString newName);
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
};
|