1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
|
/*!
@file
@author Albert Semenov
@date 07/2012
*/
#include "ActionDestroyData.h"
#include "DataManager.h"
namespace tools
{
ActionDestroyData::ActionDestroyData() :
mData(nullptr),
mComplete(false)
{
}
ActionDestroyData::~ActionDestroyData()
{
if (mComplete)
{
delete mData;
mData = nullptr;
}
}
void ActionDestroyData::doAction()
{
DataManager::getInstance().getRoot()->removeChild(mData);
DataManager::getInstance().invalidateDatas();
mComplete = true;
}
void ActionDestroyData::undoAction()
{
DataManager::getInstance().getRoot()->addChild(mData);
DataManager::getInstance().invalidateDatas();
mComplete = false;
}
void ActionDestroyData::setData(Data* _data)
{
mData = _data;
}
}
|