+ case AT_LoadSVG:
+ {
+ #ifdef TRANSFORM_OBJECTS_NOT_VIEW
+ view->Doc().LoadSVG(currentAction.textargs, Rect(Real(1)/Real(2),Real(1)/Real(2),Real(1)/Real(800),Real(1)/Real(600)));
+ #else
+ const Rect & bounds = view->GetBounds();
+ view->Doc().LoadSVG(currentAction.textargs, Rect(bounds.x+bounds.w/Real(2),bounds.y+bounds.h/Real(2),bounds.w/Real(800),bounds.h/Real(600)));
+ #endif
+ currentAction.type = AT_WaitFrame;
+ view->ForceRenderDirty();
+ view->ForceBufferDirty();
+ view->ForceBoundsDirty();
+ currentAction.loops = 1;
+ break;
+ }
+ case AT_Label:
+ m_labels[currentAction.textargs] = m_index;
+ currentAction.type = AT_WaitFrame;
+ currentAction.loops = 1;
+ break;
+ case AT_Goto:
+ m_index = m_labels[currentAction.textargs];
+ currentAction.loops = 1;
+ break;
+ case AT_Debug:
+ Debug("View bounds: %s", view->GetBounds().Str().c_str());
+ if (currentAction.textargs.size() > 0)
+ Debug("%s", currentAction.textargs.c_str());
+ break;
+ case AT_ClearDocument:
+ view->Doc().ClearObjects();
+ currentAction.loops = 1;
+ break;
+ case AT_ClearPerformance:
+ ClearPerformance(view, scr);
+ currentAction.loops = 1;
+ break;
+ case AT_PrintPerformance:
+ PrintPerformance(view, scr);
+ currentAction.loops = 1;
+ break;
+ case AT_RecordPerformance:
+ PrintPerformance(view, scr);
+ break;
+ case AT_DebugFont:
+ scr->ShowDebugFont(currentAction.textargs == "1" || currentAction.textargs == "on");
+ currentAction.loops = 1;
+ break;