void UndoOrthoViewChangeTransformScaleFn(void *info)
{
	UndoOrthoViewChangeTransformScale *undoInfo = (UndoOrthoViewChangeTransformScale *)info;

	SceneGraph *sg = GetWorld()->getSceneGraph();
	if (sg->hasNode(undoInfo->transform) == true)
		undoInfo->transform->setScale(undoInfo->scale);
}
void UndoOrthoViewChangeTransformRotationFn(void *info)
{
	UndoOrthoViewChangeTransformRotation *undoInfo = (UndoOrthoViewChangeTransformRotation *)info;

	SceneGraph *sg = GetWorld()->getSceneGraph();
	if (sg->hasNode(undoInfo->transform) == true)
		undoInfo->transform->setRotation(undoInfo->rotation);
}
void UndoOrthoViewCreatePrimitiveFn(void *info)
{
	UndoOrthoViewCreatePrimitive *undoInfo = (UndoOrthoViewCreatePrimitive *)info;

	SceneGraph *sg = GetWorld()->getSceneGraph();
	if (sg->hasNode(undoInfo->transform) == true) {
		CtbGetTreeView()->deleteSceneGraphNode(undoInfo->transform);
		delete undoInfo->transform;
	}
}
void UndoOrthoViewDeletePrimitiveFn(void *info)
{
	UndoOrthoViewDeletePrimitive *undoInfo = (UndoOrthoViewDeletePrimitive *)info;

	SceneGraph *sg = GetWorld()->getSceneGraph();
	if (undoInfo->parentNode != NULL) {
		if (sg->hasNode(undoInfo->parentNode) == true)
			undoInfo->parentNode->addChildNode(undoInfo->shape);
	}
	else
		sg->addNode(undoInfo->shape);

	CtbGetTreeView()->addSceneGraphNode(undoInfo->shape, undoInfo->parentNode);
}