// =========================================================================== // 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. // =========================================================================== // // // Creation Date: 31 May 1997 // // // Procedure Name: // HotboxControlsMenu // // Description: // Create the user customizable Hotbox Controls Menu for hotbox // // Input Arguments: // parent to parent the menu to. // // Return Value: // None. // global proc updateHotboxOptionVarSettings() { optionVar -intValue isHotBoxRiggingRowVisible `hotBox -q -rgt` -intValue isHotBoxModelingRowVisible `hotBox -q -mdt` -intValue isHotBoxAnimationRowVisible `hotBox -q -at` -intValue isHotBoxDynamicsRowVisible `hotBox -q -dt` -intValue isHotBoxRenderingRowVisible `hotBox -q -rt` -intValue isHotBoxCommonRowVisible `hotBox -q -ct` -intValue isHotBoxPaneSpecificRowVisible `hotBox -q -pt` -intValue isHotBoxClothRowVisible `hotBox -q -clt` -intValue isHotBoxLiveRowVisible `hotBox -q -lt` -intValue isHotBoxRmbPopupsOn `hotBox -q -rmb` -intValue isHotBoxShowAll `hotBox -q -a` -intValue showCustomMenuSetsMenusInHotBox `hotBox -q -customMenuSetsToggleMenus` -intValue hotBoxTransparencyLevel `hotBox -q -tr`; if( `menuItem -exists hotboxModelingRowVisibilityCheckboxMenuItem` ) menuItem -e -cb `hotBox -q -mdt` hotboxModelingRowVisibilityCheckboxMenuItem; if( `menuItem -exists hotboxRiggingRowVisibilityCheckboxMenuItem` ) menuItem -e -cb `hotBox -q -rgt` hotboxRiggingRowVisibilityCheckboxMenuItem; if( `menuItem -exists hotboxAnimationRowVisibilityCheckboxMenuItem` ) menuItem -e -cb `hotBox -q -at` hotboxAnimationRowVisibilityCheckboxMenuItem; if( `menuItem -exists hotboxDynamicsRowVisibilityCheckboxMenuItem` ) menuItem -e -cb `hotBox -q -dt` hotboxDynamicsRowVisibilityCheckboxMenuItem; if( `menuItem -exists hotboxRenderingRowVisibilityCheckboxMenuItem` ) menuItem -e -cb `hotBox -q -rt` hotboxRenderingRowVisibilityCheckboxMenuItem; if( `menuItem -exists hotboxCommonRowVisibilityCheckboxMenuItem` ) menuItem -e -cb `hotBox -q -ct` hotboxCommonRowVisibilityCheckboxMenuItem; if( `menuItem -exists hotboxPaneSpecificRowVisibilityCheckboxMenuItem` ) menuItem -e -cb `hotBox -q -pt` hotboxPaneSpecificRowVisibilityCheckboxMenuItem; if( `menuItem -exists hotboxClothRowVisibilityCheckboxMenuItem` ) menuItem -e -cb `hotBox -q -clt` hotboxClothRowVisibilityCheckboxMenuItem; if( `menuItem -exists hotboxLiveRowVisibilityCheckboxMenuItem` ) menuItem -e -cb `hotBox -q -lt` hotboxLiveRowVisibilityCheckboxMenuItem; if( `menuItem -exists hotboxCustomMenuSetsRowVisibilityCheckboxMenuItem` ) menuItem -e -cb `hotBox -q -customMenuSetsToggleMenus` hotboxCustomMenuSetsRowVisibilityCheckboxMenuItem; } global proc toggleMainMenubar( int $state ){ global string $gMainWindow; optionVar -iv mainWindowMenubarVis $state; window -e -mbv $state $gMainWindow; } global proc buildWinOptions( string $parent) { setParent -m $parent; // Make sure this submenu is rebuilt // everytime to ensure checkboxes are updated // if( `menu -q -ni $parent` != 0 ) { // // Menu is built already - just clear it. // menu -e -deleteAllItems $parent; } menuItem -label (uiRes("m_HotboxControlsMenu.kShowMainMenubar")) -ecr false -cb `optionVar -q mainWindowMenubarVis` -c "toggleMainMenubar #1"; menuItem -label (uiRes("m_HotboxControlsMenu.kShowPaneMenubars")) -ecr false -cb `optionVar -q allowMenusInPanels` -c "toggleMenuBarsInAllPanels #1"; } global proc buildHotboxStyleMenu(string $parent) { setParent -m $parent; // Make sure this submenu is rebuilt // everytime to ensure checkboxes are updated // if( `menu -q -ni $parent` != 0 ) { // // Menu is built already - just clear it. // menu -e -deleteAllItems $parent; } menuItem -label (localizedHotboxMenuItem("Zones and Menu Rows")) -c "hotBox -dh"; menuItem -label (localizedHotboxMenuItem("Zones Only")) -c "hotBox -dzo"; menuItem -label (localizedHotboxMenuItem("Center Zone Only")) -c "hotBox -dco"; menuItem -divider true; menuItem -label (uiRes("m_HotboxControlsMenu.kCenterZoneRMBPopups")) -cb `hotBox -q -rmb` -c "hotBox -rmb #1; updateHotboxOptionVarSettings()" hotboxRmbPopupsCheckboxMenuItem; } // It's preferable for this code to not be contained within // a procedure, because this code will only be run once, // and procedure definitions eat up memory. // //global proc HotboxControlsMenu( string $parent ) //{ // setParent -m $parent; // if( `menu -q -ni $parent` != 0 ) { // // // // Menu is built already - just return // // // return; // } menuItem -rp "NW" -label (uiRes("m_HotboxControlsMenu.kShowModeling")) -subMenu true; menuItem -rp "N" -label (uiRes("m_HotboxControlsMenu.kModelingOnly")) -c ("if (`menuSet -q -exists modelingMenuSet`) { hotBox -mdo; setMenuMode modelingMenuSet; updateHotboxOptionVarSettings(); }"); menuItem -rp "S" -label (uiRes("m_HotboxControlsMenu.kShowHideModeling")) -cb `hotBox -q -mdt` -c "hotBox -mdt #1; updateHotboxOptionVarSettings()" hotboxModelingRowVisibilityCheckboxMenuItem; setParent -m ..; menuItem -rp "NE" -label (uiRes("m_HotboxControlsMenu.kShowRigging")) -subMenu true; menuItem -rp "N" -label (uiRes("m_HotboxControlsMenu.kRiggingOnly")) -c ("if (`menuSet -q -exists riggingMenuSet`) { hotBox -rgo; setMenuMode riggingMenuSet; updateHotboxOptionVarSettings(); }"); menuItem -rp "S" -label (uiRes("m_HotboxControlsMenu.kShowHideRigging")) -cb `hotBox -q -st` -c "hotBox -rgt #1; updateHotboxOptionVarSettings()" hotboxRiggingRowVisibilityCheckboxMenuItem; setParent -m ..; menuItem -rp "E" -label (uiRes("m_HotboxControlsMenu.kShowAnimation")) -subMenu true; menuItem -rp "E" -label (uiRes("m_HotboxControlsMenu.kAnimationOnly")) -c ("if (`menuSet -q -exists animationMenuSet`) { hotBox -ao; setMenuMode animationMenuSet; updateHotboxOptionVarSettings(); }"); menuItem -rp "W" -label (uiRes("m_HotboxControlsMenu.kShowHideAnimation")) -cb `hotBox -q -at` -c "hotBox -at #1; updateHotboxOptionVarSettings()" hotboxAnimationRowVisibilityCheckboxMenuItem; setParent -m ..; menuItem -rp "S" -label (uiRes("m_HotboxControlsMenu.kShowFX")) -subMenu true; menuItem -rp "S" -label (uiRes("m_HotboxControlsMenu.kFXOnly")) -c ("if (`menuSet -q -exists dynamicsMenuSet`) { hotBox -do; setMenuMode dynamicsMenuSet; updateHotboxOptionVarSettings(); }"); menuItem -rp "N" -label (uiRes("m_HotboxControlsMenu.kShowHideFX")) -cb `hotBox -q -dt` -c "hotBox -dt #1; updateHotboxOptionVarSettings()" hotboxDynamicsRowVisibilityCheckboxMenuItem; setParent -m ..; menuItem -rp "SW" -label (uiRes("m_HotboxControlsMenu.kShowAll")) -c "hotBox -a true; updateHotboxOptionVarSettings()"; setParent -m ..; menuItem -rp "SE" -label (uiRes("m_HotboxControlsMenu.kHideAll")) -c "hotBox -a false; updateHotboxOptionVarSettings()"; setParent -m ..; menuItem -rp "W" -label (uiRes("m_HotboxControlsMenu.kShowRendering")) -subMenu true; menuItem -rp "W" -label (uiRes("m_HotboxControlsMenu.kRenderingOnly")) -c ("if (`menuSet -q -exists renderingMenuSet`) { hotBox -ro; setMenuMode renderingMenuSet; updateHotboxOptionVarSettings(); }"); menuItem -rp "E" -label (uiRes("m_HotboxControlsMenu.kShowHideRendering")) -cb `hotBox -q -rt` -c "hotBox -rt #1; updateHotboxOptionVarSettings()" hotboxRenderingRowVisibilityCheckboxMenuItem; setParent -m ..; // Overflow // menuItem -label (uiRes("m_HotboxControlsMenu.kShowCommonMenus")) -cb `hotBox -q -ct` -c "hotBox -ct #1; updateHotboxOptionVarSettings()" hotboxCommonRowVisibilityCheckboxMenuItem; menuItem -label (uiRes("m_HotboxControlsMenu.kShowPaneSpecificMenus")) -cb `hotBox -q -pt` -c "hotBox -pt #1; updateHotboxOptionVarSettings()" hotboxPaneSpecificRowVisibilityCheckboxMenuItem; menuItem -label (uiRes("m_HotboxControlsMenu.kShowCustomMenuSetMenus")) -checkBox `optionVar -q "showCustomMenuSetsMenusInHotBox"` -command "hotBox -cst #1; updateHotboxOptionVarSettings()" hotboxCustomMenuSetsRowVisibilityCheckboxMenuItem; // Transparency control items int $percentage = `optionVar -query hotBoxTransparencyLevel`; menuItem -label (uiRes("m_HotboxControlsMenu.kSetTransparency")) -subMenu true; radioMenuItemCollection; menuItem -label (uiRes("m_HotboxControlsMenu.kZero")) -rb ($percentage == 0) -c "hotBox -tr 0; updateHotboxOptionVarSettings()"; menuItem -label (uiRes("m_HotboxControlsMenu.kTwentyFive")) -rb ($percentage == 25) -c "hotBox -tr 25; updateHotboxOptionVarSettings()"; menuItem -label (uiRes("m_HotboxControlsMenu.kFifty")) -rb ($percentage == 50) -c "hotBox -tr 50; updateHotboxOptionVarSettings()"; menuItem -label (uiRes("m_HotboxControlsMenu.kSeventyFive")) -rb ($percentage == 75) -c "hotBox -tr 75; updateHotboxOptionVarSettings()"; menuItem -label (uiRes("m_HotboxControlsMenu.kHundred")) -rb ($percentage == 100) -c "hotBox -tr 100; updateHotboxOptionVarSettings()"; setParent -m ..; string $menu = `menuItem -label (localizedHotboxMenuItem("Hotbox Style")) -subMenu true`; menu -e -pmc ( "buildHotboxStyleMenu " + $menu ) $menu; setParent -m ..; menuItem -divider true; $menu = `menuItem -label (uiRes("m_HotboxControlsMenu.kWindowOptions")) -subMenu true`; menu -e -pmc ( "buildWinOptions " + $menu ) $menu; setParent -m ..; //}