// Copyright (C) 1997-2004 Alias Systems Corp.
// 
// The information in this file is provided for the exclusive use of the
// licensees of Alias.  Such users have the right to use, modify,
// and incorporate this code into other products for purposes authorized
// by the Alias license agreement, without fee.
// 
// ALIAS DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
// INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
// EVENT SHALL ALIAS BE LIABLE FOR ANY SPECIAL, INDIRECT OR
// CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
// DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
// TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
// PERFORMANCE OF THIS SOFTWARE.

//
//	Alias Script File
//
//	Creation Date:	June 16, 1997
//
//	Procedure Name:
//	AEfilterEulerTemplate
//
//	Description Name;
//	Creates the attribute editor controls for the filterEuler node
//
//	Input Value:
//	nodeName
//
//	Output Value:
//	None
//

global proc checkFilterEulerEnableInitialRotation ( string $nodeName )
{
	string $nodeAttr = $nodeName + ".enableInitialRotation";
	int $value = `getAttr $nodeAttr`;
	if ($value) {
		editorTemplate -dimControl $nodeName "initialRotation" false;
	} else {
		editorTemplate -dimControl $nodeName "initialRotation" true;
	}
}

global proc checkFilterEulerSmooth ( string $nodeName )
{
	string $nodeAttr = $nodeName + ".smooth";
	int $value = `getAttr $nodeAttr`;
	if ($value == 3 ) {
		editorTemplate -dimControl $nodeName "nearestTo" false;
		editorTemplate -dimControl $nodeName "weight"    false;
	} else if ($value == 2 ) {
		editorTemplate -dimControl $nodeName "nearestTo" false;
		editorTemplate -dimControl $nodeName "weight"    true;
	} else {
		editorTemplate -dimControl $nodeName "nearestTo" true;
		editorTemplate -dimControl $nodeName "weight" true;
	}
}

global proc AEfilterEulerTemplate ( string $nodeName )
{

	editorTemplate -beginScrollLayout;
		editorTemplate -beginLayout "Filter Euler Attributes" -collapse 0;
			editorTemplate -addControl "enableInitialRotation"
					"checkFilterEulerEnableInitialRotation";
			editorTemplate -addControl "initialRotation";
			editorTemplate -addControl "smooth"
					"checkFilterEulerSmooth";
			editorTemplate -addControl "nearestTo";
			editorTemplate -addControl "weight";
		// include/call base class/node attributes
		AEfilterCommon $nodeName;		
		editorTemplate -endLayout;
		// include/call base class/node attributes
		AEfilterInclude $nodeName;

	editorTemplate -addExtraControls;
	editorTemplate -endScrollLayout;

}
