Blob Blame Raw


#ifndef PEGBARCMD_INCLUDED
#define PEGBARCMD_INCLUDED

#include "tcommon.h"
#include <QPair>
#include <QPointF>

#undef DVAPI
#undef DVVAR
#ifdef TOONZLIB_EXPORTS
#define DVAPI DV_EXPORT_API
#define DVVAR DV_EXPORT_VAR
#else
#define DVAPI DV_IMPORT_API
#define DVVAR DV_IMPORT_VAR
#endif

class TStageObjectId;
class TXsheetHandle;
class TObjectHandle;
class TColumnHandle;
class TFxHandle;
class TStageObjectSpline;
class TStageObject;

namespace TStageObjectCmd
{

DVAPI void rename(const TStageObjectId &id, std::string name, TXsheetHandle *xshHandle);
DVAPI void resetOffset(const TStageObjectId &id, TXsheetHandle *xshHandle);
DVAPI void resetCenterAndOffset(const TStageObjectId &id, TXsheetHandle *xshHandle);
DVAPI void resetPosition(const TStageObjectId &id, TXsheetHandle *xshHandle);
DVAPI void setHandle(const TStageObjectId &id, std::string handle, TXsheetHandle *xshHandle);
DVAPI void setParentHandle(const std::vector<TStageObjectId> &ids, std::string handle, TXsheetHandle *xshHandle);
DVAPI void setParent(const TStageObjectId &id,
					 TStageObjectId parentId,
					 std::string parentHandle,
					 TXsheetHandle *xshHandle, bool doUndo = true);
DVAPI void setSplineParent(TStageObjectSpline *spline, TStageObject *parentObj, TXsheetHandle *xshHandle);

DVAPI void addNewCamera(TXsheetHandle *xshHandle, TObjectHandle *objHandle, QPointF initialPos = QPointF());
DVAPI void addNewPegbar(TXsheetHandle *xshHandle, TObjectHandle *objHandle, QPointF initialPos = QPointF());
DVAPI void setAsActiveCamera(TXsheetHandle *xshHandle, TObjectHandle *objHandle);
DVAPI void addNewSpline(TXsheetHandle *xshHandle, TObjectHandle *objHandle, TColumnHandle *colHandle, QPointF initialPos = QPointF());
DVAPI void deleteSelection(const std::vector<TStageObjectId> &objIds,
						   const std::list<QPair<TStageObjectId, TStageObjectId>> &links,
						   const std::list<int> &splineIds,
						   TXsheetHandle *xshHandle,
						   TObjectHandle *objHandle,
						   TFxHandle *fxHandle, bool doUndo = true);
DVAPI void group(const QList<TStageObjectId> ids, TXsheetHandle *xshHandle);
DVAPI void ungroup(int groupId, TXsheetHandle *xshHandle);
DVAPI void renameGroup(const QList<TStageObject *> objs, const std::wstring &name, bool fromEditor, TXsheetHandle *xshHandle);
DVAPI void duplicateObject(const QList<TStageObjectId> ids, TXsheetHandle *xshHandle);
DVAPI void enableSplineAim(TStageObject *obj, int state, TXsheetHandle *xshHandle);
DVAPI void enableSplineUppk(TStageObject *obj, bool toggled, TXsheetHandle *xshHandle);
}

#endif