class RedrawTime : MenuPlugin
{
	public:
		RedrawTime();

		GetID();
		GetName();
		GetState();

		GetHelp();
		Execute(doc);
}

RedrawTime::RedrawTime()
{
	super();
}

RedrawTime::GetID()
{
	return 1001151;
}

RedrawTime::GetState()
{
	return CMD_ENABLED;
}

RedrawTime::GetName()
{
	return "Redraw Time";
}

RedrawTime::GetHelp()
{
	return "Measure Redraw Time";
}

RedrawTime::Execute(doc)
{
	StopAllThreads();
	SetMousePointer(MOUSE_BUSY);

	var i,t=time(),str;

	for (i=0; i<10; i++)
		DrawViews(DA_NO_THREAD|DA_ONEPLANE|DA_NO_REDUCTION|DA_NO_ANIMATION);

	t=time()-t;

	str=stradd("Average time for a redraw is ",tostring(t/10)," ms");

	SetMousePointer(MOUSE_NORMAL);
	TextDialog(str);
}

main()
{
	Register(RedrawTime);
}
