CurrentTab (PPG)

Introduced

4.0

Description

Returns or sets the current tab visible on the property page as a String. The tab is identified by its label (see PPGLayout.AddTab).

Examples

JScript Example

// Demonstration of the ability to manipulate Tabs on 
// a PPG from within PPG logic code.
//
// It is possible to find out what tab is active,
// change the tab, and to get notified when the tab changes.

// Create a basic Custom PSet that doesn't even have any parameters,
// just layout elements.
var oPSet = ActiveSceneRoot.AddProperty( "CustomProperty",false,"TabDemo" )
var oLayout = oPSet.PPGLayout

oLayout.AddTab( "Tab 1" );
oLayout.AddButton( "Tab1Button", "Next" );
oLayout.AddTab( "Tab 2" );
oLayout.AddButton( "Tab2Button", "Previous" );
oLayout.AddTab( "LeaveMeAlone" ) ;
oLayout.AddButton( "NeverSeen" );

oLayout.Language = "JScript";
oLayout.Logic = OnInit.toString() + 
       Tab1_OnTab.toString() + 
       Tab2_OnTab.toString() + 
       LeaveMeAlone_OnTab.toString() +
       Tab1Button_OnClicked.toString() +
       Tab2Button_OnClicked.toString() ;

InspectObj( oPSet )

//
// The following is the logic code that
// controls the behavior of the PPG.
//

function OnInit()
{
   // Note: Currently it is not possible to change
   // tabs during the OnInit callback
          }

function Tab1Button_OnClicked()
{
   // "Next" button
   PPG.CurrentTab = "Tab 2" ;
}

function Tab2Button_OnClicked()
{
   // Move to the Previous tab
   PPG.CurrentTab = "Tab 1" ;
}

function Tab1_OnTab()
{
   // Called when Tab1 gets clicked
   // and when we first open the PPG.
   // (But not called when we change
   // the tab programmatically.)

   // Notice how the space in the tab label ("Tab 1")
   // has been removed to generate the callback name
   // ("Tab1_OnTab")

   Logmessage( "Current tab is: " + PPG.CurrentTab ) ;
       }

function Tab2_OnTab()
{
   Logmessage( "Now current tab is: " + PPG.CurrentTab ) ;
}

function LeaveMeAlone_OnTab()
{
   // Rather a harsh user interface - 
   // prevent users from going to this
   // tab.  This might be useful when implementing
   // a Wizard-style workflow 
   PPG.CurrentTab

See Also

InspectObj

PPG.Inspected



SOFTIMAGE|XSI v7.0