Enabled (MenuItem)

Introduced

5.0

Description

Sets or returns a Boolean indicating whether the menu item is enabled (true) or not. Menu objects can also be enabled or disabled which means all menu items defined in a menu are affected. This property is typically used for updating a menu item based on a specific context.

C# Syntax

// get accessor
Boolean rtn = MenuItem.Enabled;

// set accessor
MenuItem.Enabled = Boolean;

Examples

JScript Example

/*
   This example showing how to enable/disable custom menus defined in 
   a self-installing plug-in.

   Adds a menu in the top menu bar with 3 menu items.
   The first item is a greyed out menu item
   The second item is greyed out submenu item
   The third item allows you to enable or disable the first and second item. 
*/

function XSILoadPlugin( in_reg )
{
   in_reg.Author = "Softimage SDK team";
   in_reg.Name = "DemoMenuPlugin";
   in_reg.Major = 1;
   in_reg.Minor = 0;

   var bSubmenu = true; // value ignored for top level menus
   var bDynamic = true;
   in_reg.RegisterMenu(siMenuMainTopLevelID,"Demo Menu",bSubmenu,bDynamic);
   return true;
}

function DemoMenu_Init( ctxt )
{
   if ( ctxt.UserData == undefined )
   {
       // disable demo menu items if the user data is not set yet
       ctxt.UserData = false;
   }

   var menu = ctxt.Source;

   var bEnabled = ctxt.UserData;
   var strTitle = "Demo menu item is enabled";
   var strSubmenuTitle = "Demo sub menu is enabled";
   if ( bEnabled == false )
   {
       strTitle = "Demo menu item is disabled";
       strSubmenuTitle = "Demo sub menu is disabled";
   }

   var menuitem = menu.AddCallbackItem(strTitle,"OnDemoMenuItem");
   menuitem.Enabled = bEnabled;

   var submenu = menu.AddItem( strSubmenuTitle, siMenuItemSubmenu );
   submenu.AddCallbackItem(strTitle,"OnDemoMenuItem");
   submenu.Enabled = bEnabled;
       
   menu.AddCallbackItem("Toggle Demo menu","OnToggleDemoMenuItem");

   return true;
}

function OnDemoMenuItem( in_ctxt )
{
   LogMessage( "OnDemoMenuItem" );
}

function OnToggleDemoMenuItem( in_ctxt )
{
   // toggles the enabled flag
   if ( in_ctxt.UserData == true )
   {
       in_ctxt.UserData = false;
   }
   else
   {
       in_ctxt.UserData = true;
   }
}


Autodesk Softimage v7.5