// =========================================================================== // 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. // =========================================================================== global proc AEMASH_BreakoutTemplate( string $nodeName ) { editorTemplate -beginScrollLayout; python("import MASH.nodeHeaders; MASH.nodeHeaders.addHeader('" + $nodeName + "', 'Breakout', False)") editorTemplate -endLayout; editorTemplate -callCustom "MASHbreakoutConnectionListWidgetBuildQt" "MASHbreakoutConnectionListWidgetUpdateQt" ""; editorTemplate -callCustom "MASHbreakoutButton" "MASHbreakoutButtonEdit" ""; editorTemplate -label (getPluginResource("MASH", "kIDOffset")) -addControl "idStart"; AEdependNodeTemplate $nodeName; editorTemplate -addExtraControls; editorTemplate -endScrollLayout; } global proc MASHbreakoutButton ( string $attr ) { string $nodeName[]; tokenize($attr, ".", $nodeName); columnLayout -columnAlign "left" -columnAttach "left" 5; iconTextButton -style "iconOnly" -image1 "out_MASH_OpenEditor.png" -annotation (getPluginResource("MASH", "kBCM_BCM")) -c ( "python(\"import MASH.breakoutConnectionManager; MASH.breakoutConnectionManager.CreateUI([], '" + $nodeName[0] + "')\")" ) MASHbreakoutConnectionManagerButton; setParent ..; separator -w 100 -h 5 -hr 1 -st "none"; } global proc MASHbreakoutButtonEdit ( string $attr ) { string $nodeName[]; tokenize($attr, ".", $nodeName); iconTextButton -e -c ( "python(\"import MASH.breakoutConnectionManager; MASH.breakoutConnectionManager.CreateUI([], '" + $nodeName[0] + "')\")" ) MASHbreakoutConnectionManagerButton; } global proc MASHbreakoutConnectionListWidgetBuildQt(string $nodeName) { string $buffer[]; tokenize($nodeName, ".", $buffer); $nodeName = $buffer[0]; python("import MASHlistQtWidget"); string $parent = `setParent -q`; //get python to create the widget, include the desired nodeType as an arguement python("MASHlistQtWidget.build_qt_widget('" + $parent + "', '" + $nodeName + "', 'transform', 'outputs', '', 'BreakoutNodeConnect', 'kConnectedNodes')"); setParent..; } global proc MASHbreakoutConnectionListWidgetUpdateQt(string $nodeName ) { string $buffer[]; tokenize($nodeName, ".", $buffer); $nodeName = $buffer[0]; string $parent = `setParent -q`; python("import MASHlistQtWidget"); python("MASHlistQtWidget.update_qt_widget('" + $parent + "', '" + $nodeName + "', 'transform', 'outputs', '', 'BreakoutNodeConnect', 'kConnectedNodes')"); }