// =========================================================================== // Copyright 2018 Autodesk, Inc. All rights reserved. // // Use of this software is subject to the terms of the Autodesk license // agreement provided at the time of installation or download, or which // otherwise accompanies this software in either electronic or hard copy form. // =========================================================================== // // Procedure Name: // AEnurbsCurveTemplate // // Description Name; // Creates the attribute editor controls for the expression node // // Input Value: // nodeName // // Output Value: // None // global proc AEexpressionFieldNew ( string $expression ) { global int $gTextColumnWidthIndex; setUITemplate -pst attributeEditorTemplate; formLayout expressionForm; text -label (uiRes("m_AEexpressionTemplate.kExpression")) exprText; textField -ed 0 exprField; setParent ..; formLayout -e -aof exprText right (5 - $gTextColumnWidthIndex) -af exprText top 0 -af exprText bottom 0 -an exprText left -af exprField top 0 -af exprField bottom 0 -af exprField right 0 -ac exprField left 5 exprText expressionForm; setUITemplate -ppt; AEexpressionFieldReplace $expression; } global proc AEexpressionFieldReplace ( string $expression ) { scriptJob -rp -p exprField -attributeChange $expression ("AEexpressionFieldUpdate " + $expression); AEexpressionFieldUpdate $expression; } global proc AEexpressionFieldUpdate (string $expression) { string $expressionValue = `getAttr $expression`; textField -e -tx $expressionValue exprField; } global proc AEexpressionTemplate( string $nodeName ) { editorTemplate -beginScrollLayout; editorTemplate -callCustom "AEexpressionFieldNew" "AEexpressionFieldReplace" "expression"; // include/call base class/node attributes AEdependNodeTemplate $nodeName; editorTemplate -suppress "input"; editorTemplate -suppress "output"; editorTemplate -addExtraControls; editorTemplate -endScrollLayout; }