// =========================================================================== // 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. // =========================================================================== proc createLayoutPopupMenu(string $rp) { menuItem -rp $rp -l (uiRes("m_texturePanelCreatePopupContextMenu.kLayout")) -sm 1; menuItem -rp "SW" -l (uiRes("m_texturePanelCreatePopupContextMenu.kLayoutUV")) -image "polyLayoutUV.png" -ecr 1 -c "LayoutUV"; menuItem -rp "SW" -optionBox 1 -ecr 1 -c "LayoutUVOptions"; menuItem -rp "W" -l (uiRes("m_texturePanelCreatePopupContextMenu.kLayoutAlongU")) -ecr 1 -c "texLayoutAlong(0)" -version "2018"; menuItem -rp "NW" -l (uiRes("m_texturePanelCreatePopupContextMenu.kLayoutAlongV")) -ecr 1 -c "texLayoutAlong(1)" -version "2018"; setParent -menu ..; } proc createUnfoldpopupMenu(string $rp) { menuItem -rp $rp -l (uiRes("m_texturePanelCreatePopupContextMenu.kUnfold")) -sm 1; menuItem -rp "W" -l (uiRes("m_texturePanelCreatePopupContextMenu.kUnfold")) -image "polyUnfoldUV.png" -ecr 1 -c "UnfoldUV"; menuItem -rp "W" -optionBox 1 -ecr 1 -c "UnfoldUVOptions"; menuItem -rp "NW" -l (uiRes("m_texturePanelCreatePopupContextMenu.kUnfoldAlongU")) -ecr 1 -c "uvTkDoUnfoldAlong(2)" -version "2018"; menuItem -rp "SW" -l (uiRes("m_texturePanelCreatePopupContextMenu.kUnfoldAlongV")) -ecr 1 -c "uvTkDoUnfoldAlong(1)" -version "2018"; setParent -menu ..; } proc createMappingPopupMenu(string $rp) { menuItem -rp $rp -l (uiRes("m_texturePanelCreatePopupContextMenu.kMapping")) -sm 1; menuItem -rp "N" -l (uiRes("m_texturePanelCreatePopupContextMenu.kPlanarMapping")) -image "polyPlanProj.png" -ecr 1 -c "UVPlanarProjection"; menuItem -rp "N" -optionBox 1 -ecr 1 -c "UVPlanarProjectionOptions"; menuItem -rp "NE" -l (uiRes("m_texturePanelCreatePopupContextMenu.kNormalBasedMapping")) -image "polyNormalProj.png" -ecr 1 -c "UVNormalBasedProjection" -version "2018"; menuItem -rp "NE" -optionBox 1 -ecr 1 -c "UVNormalBasedProjectionOptions"; menuItem -rp "NW" -l (uiRes("m_texturePanelCreatePopupContextMenu.kAutomaticMapping")) -image "polyAutoProj.png" -ecr 1 -c "UVAutomaticProjection"; menuItem -rp "NW" -optionBox 1 -ecr 1 -c "UVAutomaticProjectionOptions"; setParent -menu ..; } proc createRotatePopupSubMenu() { menuItem -rp "E" -l (uiRes("m_texturePanelCreatePopupContextMenu.kRotateCW")) -image "polyRotateUVCW.png" -ecr 1 -c "uvTkDoRotate(1, 0)"; menuItem -rp "W" -l (uiRes("m_texturePanelCreatePopupContextMenu.kRotateCCW")) -image "polyRotateUVCCW.png" -ecr 1 -c "uvTkDoRotate(0, 0)"; } proc createAlignPopupSubMenu() { menuItem -rp "NE" -l (uiRes("m_texturePanelCreatePopupContextMenu.kMaxV")) -image "UVAlignTop.png" -ecr 1 -c "performAlignUV maxV"; menuItem -rp "E" -l (uiRes("m_texturePanelCreatePopupContextMenu.kCenterV")) -image "UVAlignMiddleV.png" -ecr 1 -c "performAlignUV avgV"; menuItem -rp "SE" -l (uiRes("m_texturePanelCreatePopupContextMenu.kMinV")) -image "UVAlignBottom.png" -ecr 1 -c "performAlignUV minV"; menuItem -rp "S" -l (uiRes("m_texturePanelCreatePopupContextMenu.kLinearAlign")) -image "polyAlignUVLinear.png" -ecr 1 -c "texLinearAlignUVs" -version "2018"; menuItem -rp "SW" -l (uiRes("m_texturePanelCreatePopupContextMenu.kMinU")) -image "UVAlignLeft.png" -ecr 1 -c "performAlignUV minU"; menuItem -rp "W" -l (uiRes("m_texturePanelCreatePopupContextMenu.kCenterU")) -image "UVAlignMiddleU.png" -ecr 1 -c "performAlignUV avgU"; menuItem -rp "NW" -l (uiRes("m_texturePanelCreatePopupContextMenu.kMaxU")) -image "UVAlignRight.png" -ecr 1 -c "performAlignUV maxU"; } global proc texturePanelCreatePopupContextMenu( string $parent ) // // Description: // Create shift key modifier popup menu for the UV texture editor. // { if (!`popupMenu -query -exists $parent`) return; popupMenu -edit -deleteAllItems $parent; setParent -menu $parent; string $mask = getComponentMask(); if ($mask == "polymeshUV") { menuItem -rp "N" -l (uiRes("m_texturePanelCreatePopupContextMenu.kSnap")) -sm 1; menuItem -rp "NE" -l (uiRes("m_texturePanelCreatePopupContextMenu.kSnapTogether")) -image "polyUVSnapPoints.png" -ecr 1 -c "UVSnapTogether" -version "2018"; menuItem -rp "NE" -optionBox 1 -ecr 1 -c "UVSnapTogetherOptions"; menuItem -rp "SE" -l (uiRes("m_texturePanelCreatePopupContextMenu.kMatchUVs")) -image "polyMatchUV.png" -ecr 1 -c "MatchUVs" -version "2018"; menuItem -rp "SE" -optionBox 1 -ecr 1 -c "MatchUVsOptions"; menuItem -rp "SW" -l (uiRes("m_texturePanelCreatePopupContextMenu.kMatchGrid")) -image "polySnapUVsToGrid.png" -ecr 1 -c "GridUV"; menuItem -rp "SW" -optionBox 1 -ecr 1 -c "GridUVOptions"; menuItem -rp "NW" -l (uiRes("m_texturePanelCreatePopupContextMenu.kSnapStack")) -image "polyUVSnapStackShells.png" -ecr 1 -c "texSnapStackShells" -version "2018"; setParent -menu ..; menuItem -rp "NE" -l (uiRes("m_texturePanelCreatePopupContextMenu.kStraighten")) -sm 1; menuItem -rp "N" -l (uiRes("m_texturePanelCreatePopupContextMenu.kStraightenUVs")) -image "polyStraightenUV.png" -ecr 1 -c "UVStraighten" -version "2018"; menuItem -rp "N" -optionBox 1 -ecr 1 -c "UVStraightenOptions"; menuItem -rp "NE" -l (uiRes("m_texturePanelCreatePopupContextMenu.kStraightenBorder")) -image "polyStraightenUVBorder.png" -ecr 1 -c "StraightenUVBorder"; menuItem -rp "NE" -optionBox 1 -ecr 1 -c "StraightenUVBorderOptions"; menuItem -rp "NW" -l (uiRes("m_texturePanelCreatePopupContextMenu.kStraightenShell")) -image "polyStraightenUVShell.png" -ecr 1 -c "texStraightenShell" -version "2018"; setParent -menu ..; menuItem -rp "E" -l (uiRes("m_texturePanelCreatePopupContextMenu.kOptimize")) -image "polyOptimizeUV.png" -ecr 1 -c "OptimzeUVs"; menuItem -rp "E" -optionBox 1 -ecr 1 -c "OptimzeUVsOptions"; menuItem -rp "SE" -l (uiRes("m_texturePanelCreatePopupContextMenu.kAlignUVs")) -sm 1; createAlignPopupSubMenu(); setParent -menu ..; menuItem -rp "S" -l (uiRes("m_texturePanelCreatePopupContextMenu.kRotateUVs")) -sm 1; createRotatePopupSubMenu(); setParent -menu ..; createLayoutPopupMenu("SW"); createUnfoldpopupMenu("W"); menuItem -rp "NW" -l (uiRes("m_texturePanelCreatePopupContextMenu.kNormalize")) -image "polyNormalizeUVs.png" -ecr 1 -c "NormalizeUVs"; menuItem -rp "NW" -optionBox 1 -ecr 1 -c "NormalizeUVsOptions"; menuItem -l (uiRes("m_texturePanelCreatePopupContextMenu.kDistribute")) -image "UVDistributeUVs.png" -ecr 1 -c "DistributeUVs" -version "2018"; menuItem -optionBox 1 -ecr 1 -c "DistributeUVsOptions"; menuItem -l (uiRes("m_texturePanelCreatePopupContextMenu.kFlip")) -image "polyFlipUVs.png" -ecr 1 -c "FlipUVs"; menuItem -optionBox 1 -ecr 1 -c "FlipUVsOptions"; menuItem -l (uiRes("m_texturePanelCreatePopupContextMenu.kMapBorder")) -image "polyMapUVBorder.png" -ecr 1 -c "MapUVBorder"; menuItem -optionBox 1 -ecr 1 -c "MapUVBorderOptions"; menuItem -l (uiRes("m_texturePanelCreatePopupContextMenu.kSymmetrize")) -image "polySymmetrizeUV.png" -ecr 1 -c "SymmetrizeUV"; menuItem -optionBox 1 -ecr 1 -c "SymmetrizeUVOptions"; menuItem -l (uiRes("m_texturePanelCreatePopupContextMenu.kUnitize")) -image "polyUnitizeUVs.png" -ecr 1 -c "UnitizeUVs"; menuItem -optionBox 1 -ecr 1 -c "UnitizeUVsOptions"; menuItem -divider true; menuItem -l (uiRes("m_texturePanelCreatePopupContextMenu.kAutoSeams")) -image "polyAutoSeamsLarge.png" -ecr 1 -c "performPolyAutoSeamUV 0" -version "2018"; menuItem -optionBox 1 -ecr 1 -c "performPolyAutoSeamUV 1" ; menuItem -divider true; menuItem -l (uiRes("m_texturePanelCreatePopupContextMenu.kCreateUVShell")) -image "polyCreateUVShell.png" -ecr 1 -c "CreateUVShellAlongBorder"; menuItem -divider true; menuItem -l (uiRes("m_texturePanelCreatePopupContextMenu.kCutUVs")) -image "polyCutUV.png" -ecr 1 -c "CutUVs"; menuItem -l (uiRes("m_texturePanelCreatePopupContextMenu.kDeleteUVs")) -image "polyMapDel.png" -ecr 1 -c "DeleteUVs"; menuItem -l (uiRes("m_texturePanelCreatePopupContextMenu.kMergeUVs")) -image "polyMergeUV.png" -ecr 1 -c "MergeUV"; menuItem -optionBox 1 -ecr 1 -c "MergeUVOptions"; menuItem -l (uiRes("m_texturePanelCreatePopupContextMenu.kSewUVs")) -image "polySewUV.png" -ecr 1 -c "SewUVs"; menuItem -divider true; menuItem -l (uiRes("m_texturePanelCreatePopupContextMenu.kMeasurePixelDistance")) -image "polyMeasureUV.png" -ecr 1 -c "texCalculatePixelDistance" -version "2018"; menuItem -divider true; } else if ($mask == "meshUVShell") { createMappingPopupMenu("N"); menuItem -rp "NE" -l (uiRes("m_texturePanelCreatePopupContextMenu.kFlipAlongV")) -ecr 1 -c "polyFlipUV -flipType 1 -local on -cutUV 1"; menuItem -rp "E" -l (uiRes("m_texturePanelCreatePopupContextMenu.kOptimize")) -image "polyOptimizeUV.png" -ecr 1 -c "OptimzeUVs"; menuItem -rp "E" -optionBox 1 -ecr 1 -c "OptimzeUVsOptions"; menuItem -rp "SE" -l (uiRes("m_texturePanelCreatePopupContextMenu.kAlignShells")) -sm 1; createAlignPopupSubMenu(); setParent -menu ..; menuItem -rp "S" -l (uiRes("m_texturePanelCreatePopupContextMenu.kRotateShell")) -sm 1; createRotatePopupSubMenu(); setParent -menu ..; createLayoutPopupMenu("SW"); createUnfoldpopupMenu("W"); menuItem -rp "NW" -l (uiRes("m_texturePanelCreatePopupContextMenu.kFlipAlongU")) -ecr 1 -c "polyFlipUV -flipType 0 -local on -cutUV 1"; menuItem -l (uiRes("m_texturePanelCreatePopupContextMenu.kAutoSeams")) -image "polyAutoSeamsLarge.png" -ecr 1 -c "performPolyAutoSeamUV 0" -version "2018"; menuItem -optionBox 1 -ecr 1 -c "performPolyAutoSeamUV 1"; menuItem -divider true; menuItem -l (uiRes("m_texturePanelCreatePopupContextMenu.kMatchGrid")) -image "polySnapUVsToGrid.png" -ecr 1 -c "GridUV"; menuItem -optionBox 1 -ecr 1 -c "GridUVOptions"; menuItem -l (uiRes("m_texturePanelCreatePopupContextMenu.kMatchUVs")) -image "polyMatchUV.png" -ecr 1 -c "MatchUVs" -version "2018"; menuItem -optionBox 1 -ecr 1 -c "MatchUVsOptions"; menuItem -l (uiRes("m_texturePanelCreatePopupContextMenu.kNormalize")) -image "polyNormalizeUVs.png" -ecr 1 -c "NormalizeUVs"; menuItem -optionBox 1 -ecr 1 -c "NormalizeUVsOptions"; menuItem -l (uiRes("m_texturePanelCreatePopupContextMenu.kStraightenBorder")) -image "polyStraightenUVBorder.png" -ecr 1 -c "StraightenUVBorder"; menuItem -optionBox 1 -ecr 1 -c "StraightenUVBorderOptions"; menuItem -l (uiRes("m_texturePanelCreatePopupContextMenu.kStraightenUVs")) -image "polyStraightenUV.png" -ecr 1 -c "UVStraighten" -version "2018"; menuItem -optionBox 1 -ecr 1 -c "UVStraightenOptions"; menuItem -l (uiRes("m_texturePanelCreatePopupContextMenu.kUnitize")) -image "polyUnitizeUVs.png" -ecr 1 -c "UnitizeUVs"; menuItem -optionBox 1 -ecr 1 -c "UnitizeUVsOptions"; menuItem -divider true; menuItem -l (uiRes("m_texturePanelCreatePopupContextMenu.kDistributeShells")) -image "UVDistributeShells.png" -sm 1 -version "2018"; menuItem -l (uiRes("m_texturePanelCreatePopupContextMenu.kRight")) -ecr 1 -c "uvTkDoDistributeShells\"right\""; menuItem -l (uiRes("m_texturePanelCreatePopupContextMenu.kLeft")) -ecr 1 -c "uvTkDoDistributeShells\"left\""; menuItem -l (uiRes("m_texturePanelCreatePopupContextMenu.kUp")) -ecr 1 -c "uvTkDoDistributeShells\"up\""; menuItem -l (uiRes("m_texturePanelCreatePopupContextMenu.kDown")) -ecr 1 -c "uvTkDoDistributeShells\"down\""; menuItem -divider true; menuItem -l (uiRes("m_texturePanelCreatePopupContextMenu.kTowardsTarget")) -ecr 1 -c "texDistributeShells(1, 0, \"\", {})" -version "2018"; setParent -menu ..; menuItem -l (uiRes("m_texturePanelCreatePopupContextMenu.kGatherShells")) -image "polyGatherShell.png" -ecr 1 -c "UVGatherShells" -version "2018"; menuItem -l (uiRes("m_texturePanelCreatePopupContextMenu.kOrientShells")) -image "polyOrientShell.png" -ecr 1 -c "UVOrientShells" -version "2018"; menuItem -l (uiRes("m_texturePanelCreatePopupContextMenu.kRandomizeShells")) -image "polyRandomizeShell.png" -ecr 1 -c "RandomizeShells" -version "2018"; menuItem -optionBox 1 -ecr 1 -c "RandomizeShellsOptions"; menuItem -l (uiRes("m_texturePanelCreatePopupContextMenu.kSnapStackShells")) -image "polyUVSnapStackShells.png" -ecr 1 -c "texSnapStackShells" -version "2018"; menuItem -l (uiRes("m_texturePanelCreatePopupContextMenu.kStackShells")) -image "polyStackShell.png" -ecr 1 -c "texStackShells({})" -version "2018"; menuItem -l (uiRes("m_texturePanelCreatePopupContextMenu.kStackOrientShells")) -image "polyStackOrient.png" -ecr 1 -c "texStackShells({});UVOrientShells" -version "2018"; menuItem -l (uiRes("m_texturePanelCreatePopupContextMenu.kStackSimilar")) -image "polyStackSimilarShell.png" -ecr 1 -c "UVStackSimilarShells" -version "2018"; menuItem -optionBox 1 -ecr 1 -c "UVStackSimilarShellsOptions"; menuItem -l (uiRes("m_texturePanelCreatePopupContextMenu.kUnstackShells")) -image "polyUnstackShell.png" -ecr 1 -c "UVUnstackShells" -version "2018"; menuItem -optionBox 1 -ecr 1 -c "UVUnstackShellsOptions"; menuItem -divider true; } else if ($mask == "vertex") { menuItem -rp "E" -l (uiRes("m_texturePanelCreatePopupContextMenu.kOptimize")) -image "polyOptimizeUV.png" -ecr 1 -c "OptimzeUVs"; menuItem -rp "E" -optionBox 1 -ecr 1 -c "OptimzeUVsOptions"; menuItem -rp "SE" -l (uiRes("m_texturePanelCreatePopupContextMenu.kCreateUVShell")) -image "polyCreateUVShell.png" -ecr 1 -c "CreateUVShellAlongBorder"; createLayoutPopupMenu("SW"); createUnfoldpopupMenu("W"); menuItem -rp "NW" -l (uiRes("m_texturePanelCreatePopupContextMenu.kNormalize")) -image "polyNormalizeUVs.png" -ecr 1 -c "NormalizeUVs"; menuItem -rp "NW" -optionBox 1 -ecr 1 -c "NormalizeUVsOptions"; } else if ($mask == "edge") { menuItem -rp "N" -l (uiRes("m_texturePanelCreatePopupContextMenu.kMoveAndSewEdges")) -image "polyMoveSew.png" -ecr 1 -c "performPolyMapSewMove 0"; menuItem -rp "N" -optionBox 1 -ecr 1 -c "performPolyMapSewMove 1"; menuItem -rp "NE" -l (uiRes("m_texturePanelCreatePopupContextMenu.kStraightenShell")) -image "polyStraightenUVShell.png" -ecr 1 -c "texStraightenShell" -version "2018"; menuItem -rp "E" -l (uiRes("m_texturePanelCreatePopupContextMenu.kOptimize")) -image "polyOptimizeUV.png" -ecr 1 -c "OptimzeUVs"; menuItem -rp "E" -optionBox 1 -ecr 1 -c "OptimzeUVsOptions"; menuItem -rp "SE" -l (uiRes("m_texturePanelCreatePopupContextMenu.kSew")) -image "polySewUV.png" -ecr 1 -c "SewUVs"; menuItem -rp "S" -l (uiRes("m_texturePanelCreatePopupContextMenu.kStitchTogether")) -image "polyUVMultiStitch.png" -ecr 1 -c "StitchTogether" -version "2018"; menuItem -rp "S" -optionBox 1 -ecr 1 -c "StitchTogetherOptions"; menuItem -rp "SW" -l (uiRes("m_texturePanelCreatePopupContextMenu.kCut")) -image "polyCutUV.png" -ecr 1 -c "CutUVs"; createUnfoldpopupMenu("W"); menuItem -rp "NW" -l (uiRes("m_texturePanelCreatePopupContextMenu.kOrientShelltoEdges")) -image "polyOrientToEdge.png" -ecr 1 -c "texOrientEdge" -version "2018" ; } else if ($mask == "facet") { createMappingPopupMenu("N"); menuItem -rp "NE" -l (uiRes("m_texturePanelCreatePopupContextMenu.kStraightenUVs")) -image "polyStraightenUV.png" -ecr 1 -c "UVStraighten" -version "2018"; menuItem -rp "NE" -optionBox 1 -ecr 1 -c "UVStraightenOptions"; menuItem -rp "E" -l (uiRes("m_texturePanelCreatePopupContextMenu.kOptimize")) -image "polyOptimizeUV.png" -ecr 1 -c "OptimzeUVs"; menuItem -rp "E" -optionBox 1 -ecr 1 -c "OptimzeUVsOptions"; menuItem -rp "SE" -l (uiRes("m_texturePanelCreatePopupContextMenu.kCreateUVShell")) -image "polyCreateUVShell.png" -ecr 1 -c "CreateUVShellAlongBorder"; menuItem -rp "S" -l (uiRes("m_texturePanelCreatePopupContextMenu.kRotateFaces")) -sm 1; createRotatePopupSubMenu(); setParent -menu ..; createLayoutPopupMenu("SW"); createUnfoldpopupMenu("W"); menuItem -rp "NW" -l (uiRes("m_texturePanelCreatePopupContextMenu.kNormalize")) -image "polyNormalizeUVs.png" -ecr 1 -c "NormalizeUVs"; menuItem -rp "NW" -optionBox 1 -ecr 1 -c "NormalizeUVsOptions"; menuItem -l (uiRes("m_texturePanelCreatePopupContextMenu.kCycle")) -image "cycleUVs.png" -ecr 1 -c "polyRotateUVsByVertex"; menuItem -l (uiRes("m_texturePanelCreatePopupContextMenu.kFlip")) -image "polyFlipUVs.png" -ecr 1 -c "FlipUVs"; menuItem -optionBox 1 -ecr 1 -c "FlipUVsOptions"; menuItem -l (uiRes("m_texturePanelCreatePopupContextMenu.kMatchGrid")) -image "polySnapUVsToGrid.png" -ecr 1 -c "GridUV"; menuItem -optionBox 1 -ecr 1 -c "GridUVOptions"; menuItem -l (uiRes("m_texturePanelCreatePopupContextMenu.kMatchUVs")) -image "polyMatchUV.png" -ecr 1 -c "MatchUVs" -version "2018"; menuItem -optionBox 1 -ecr 1 -c "MatchUVsOptions"; menuItem -l (uiRes("m_texturePanelCreatePopupContextMenu.kSymmetrize")) -image "polySymmetrizeUV.png" -ecr 1 -c "SymmetrizeUV"; menuItem -optionBox 1 -ecr 1 -c "SymmetrizeUVOptions"; menuItem -divider true; } menuItem -l (uiRes("m_texturePanelCreatePopupContextMenu.kTools")) -sm 1; menuItem -l (uiRes("m_texturePanelCreatePopupContextMenu.kCutTool")) -image "cutUVTool.png" -c "setToolTo texCutUVContext; texCutContext -edit -mode Cut -i1 \"UV_Cut_ToolLarge.png\" texCutUVContext;"; menuItem -optionBox 1 -c "setToolTo texCutUVContext; texCutContext -edit -mode Cut -i1 \"UV_Cut_ToolLarge.png\" texCutUVContext; toolPropertyWindow;"; menuItem -l (uiRes("m_texturePanelCreatePopupContextMenu.kSewTool")) -image "sewUVTool.png" -c "setToolTo texCutUVContext; texCutContext -edit -mode Sew -i1 \"UV_Sew_ToolLarge.png\" texCutUVContext;"; menuItem -optionBox 1 -c "setToolTo texCutUVContext; texCutContext -edit -mode Sew -i1 \"UV_Cut_ToolLarge.png\" texCutUVContext; toolPropertyWindow;"; menuItem -divider true; menuItem -l (uiRes("m_texturePanelCreatePopupContextMenu.kOptimizeTool")) -image "optimizeUVTool.png" -c "Unfold3DContext -e -optimize -i1 \"UV_Optimize_BrushLarge.png\" texUnfoldUVContext;setToolTo texUnfoldUVContext;"; menuItem -optionBox 1 -c "Unfold3DContext -e -optimize -i1 \"UV_Optimize_BrushLarge.png\" texUnfoldUVContext;setToolTo texUnfoldUVContext; toolPropertyWindow;"; menuItem -l (uiRes("m_texturePanelCreatePopupContextMenu.kUnfoldTool")) -image "unfoldUVTool.png" -c "Unfold3DContext -e -unfold -i1 \"UV_Unfold_BrushLarge.png\" texUnfoldUVContext;setToolTo texUnfoldUVContext;"; menuItem -optionBox 1 -c "Unfold3DContext -e -unfold -i1 \"UV_Unfold_BrushLarge.png\" texUnfoldUVContext;setToolTo texUnfoldUVContext; toolPropertyWindow;"; menuItem -divider true; menuItem -l (uiRes("m_texturePanelCreatePopupContextMenu.kGrabTool")) -image "grabUVTool.png" -c "texSculptCacheContext -e -m Grab -i1 \"UV_Grab_BrushLarge.png\" texSculptCacheContextObj;setToolTo texSculptCacheContextObj;"; menuItem -optionBox 1 -image "grabUVTool.png" -c "texSculptCacheContext -e -m Grab -i1 \"UV_Grab_BrushLarge.png\" texSculptCacheContextObj;setToolTo texSculptCacheContextObj; toolPropertyWindow;"; menuItem -l (uiRes("m_texturePanelCreatePopupContextMenu.kLatticeTool")) -image "UVLatticeTool.png" -c "LatticeUVTool;"; menuItem -optionBox 1 -c "LatticeUVToolOptions;"; menuItem -l (uiRes("m_texturePanelCreatePopupContextMenu.kPinTool")) -image "pinUVTool.png" -c "texSculptCacheContext -e -m Freeze -i1 \"UV_Freeze_ToolLarge.png\" texSculptCacheContextObj;setToolTo texSculptCacheContextObj;"; menuItem -optionBox 1 -c "texSculptCacheContext -e -m Freeze -i1 \"UV_Freeze_ToolLarge.png\" texSculptCacheContextObj;setToolTo texSculptCacheContextObj; toolPropertyWindow;"; menuItem -l (uiRes("m_texturePanelCreatePopupContextMenu.kPinchTool")) -image "pinchUVTool.png" -c "texSculptCacheContext -e -m Pinch -i1 \"UV_Pinch_ToolLarge.png\" texSculptCacheContextObj;setToolTo texSculptCacheContextObj;"; menuItem -optionBox 1 -c "texSculptCacheContext -e -m Pinch -i1 \"UV_Pinch_ToolLarge.png\" texSculptCacheContextObj;setToolTo texSculptCacheContextObj; toolPropertyWindow;"; menuItem -l (uiRes("m_texturePanelCreatePopupContextMenu.kSmearTool")) -image "smearUVTool.png" -c "texSculptCacheContext -e -m Smear -i1 \"UV_Smear_ToolLarge.png\" texSculptCacheContextObj;setToolTo texSculptCacheContextObj;"; menuItem -optionBox 1 -c "texSculptCacheContext -e -m Smear -i1 \"UV_Smear_ToolLarge.png\" texSculptCacheContextObj;setToolTo texSculptCacheContextObj; toolPropertyWindow;"; menuItem -l (uiRes("m_texturePanelCreatePopupContextMenu.kSymmetrizeTool")) -image "symmetrizeUVTool.png" -c "SymmetrizeUVContext -e -i1 \"UVSymmetrizeTool.png\" texSymmetrizeUVContext;setToolTo texSymmetrizeUVContext;"; menuItem -optionBox 1 -c "SymmetrizeUVContext -e -i1 \"UVSymmetrizeTool.png\" texSymmetrizeUVContext;setToolTo texSymmetrizeUVContext; toolPropertyWindow;"; setParent -menu ..; menuItem -divider true; menuItem -l (uiRes("m_texturePanelCreatePopupContextMenu.kPinning")) -sm 1; menuItem -l (uiRes("m_texturePanelCreatePopupContextMenu.kPinSelection")) -image "polyPinUV.png" -ecr 1 -c "PinSelection"; menuItem -optionBox 1 -ecr 1 -c "PinSelectionOptions"; menuItem -l (uiRes("m_texturePanelCreatePopupContextMenu.kInversePinning")) -image "invertUVpinning.png" -ecr 1 -c "UVEditorInvertPin"; menuItem -l (uiRes("m_texturePanelCreatePopupContextMenu.kUnpinSelection")) -image "unpinUV.png" -ecr 1 -c "UnpinSelection"; menuItem -l (uiRes("m_texturePanelCreatePopupContextMenu.kUnpinAll")) -image "unpinAllUV.png" -ecr 1 -c "UVEditorUnpinAll"; menuItem -divider true; menuItem -l (uiRes("m_texturePanelCreatePopupContextMenu.kResetSettings")) -version 2019 -sm 1; menuItem -l (uiRes("m_texturePanelCreatePopupContextMenu.kResetUVEditorUI")) -ecr 1 -c "UVEditorResetAllToDefault"; setParent -menu ..; menuItem -divider true; commonTexSelectionConstraintsOptionsPopup(); commonTexTransformConstraintsOptionsPopup(); menuItem -divider true; menuItem -l (uiRes("m_texturePanelCreatePopupContextMenu.kToggleShellBorders")) -c "ToggleUVShellBorder"; string $texWinName[] = `getPanel -sty polyTexturePlacementPanel`; string $editor = $texWinName[0]; int $dtb = textureWindowTexBorder(0,0); int $id = textureWindowTextureImage(0,0); int $dct = textureWindowDisplayCheckered(0,0); int $ddt = textureWindowDistortion(0,0); string $cmdTail = (";txtWndUpdateEditor(\""+$editor+"\", \"textureWindow\", \"null\", 101);"); menuItem -l (uiRes("m_texturePanelCreatePopupContextMenu.kTextureBorders")) -c ("textureWindowTexBorder(1,"+($dtb?"0 ":"1 ")+")"+$cmdTail) -cb $dtb; menuItem -divider true; menuItem -l (uiRes("m_texturePanelCreatePopupContextMenu.kDisplayImage")) -c ("textureWindowTextureImage(1,"+($id?"0 ":"1 ")+")"+$cmdTail) -cb $id; menuItem -l (uiRes("m_texturePanelCreatePopupContextMenu.kCheckerMap")) -c ("performTextureViewCheckerMapOptions 0;textureWindowDisplayCheckered(1,"+($dct?"0 ":"1 -ccm 0 ")+")"+$cmdTail) -cb $dct; menuItem -l (uiRes("m_texturePanelCreatePopupContextMenu.kDistortionShader")) -c ("textureWindowDistortion(1,"+($ddt?"0 ":"1 ")+")"+$cmdTail) -cb $ddt; // allow user to define a proc with additional menu items if (`exists contextUVToolsVertexUserMM`) contextUVToolsVertexUserMM $parent; }