Object Hierarchy | Related C++ Class: PPGItem
v4.0
This object represents a component of the user interface of a
Property Page. Normally a PPGItem represents a user interface
control that is directly related to a Parameter of the object that is inspected. For
example a PPGItem of type siControlString would display the value
of a String parameter. Similarly
a PPGItem of type siControlFCurve would show the FCurve contained
inside a FCurve Parameter. The connection between the control and
its associated Parameter is established based on the PPGItem.Name.
Other PPGItems do not directly correspond to a parameter, for
example Buttons, Tabs and Groups.
Each PPGItem exposes a series of "attributes" that can be used to
tweak its appearance. Some of the most common attributes are
exposed directly as properties of the object, for example PPGItem.Label, whereas the more
specialized or uncommon attributes can be accessed via PPGItem.GetAttribute.
PPGItem objects are accessible via the PPGLayout of a ProjectItem.
'example demonstrating using the PPGItem 'object to set the Labels of an object. dim oPSet,oPPGLayout, oItem set oPSet=ActiveSceneRoot.AddProperty("CustomProperty",false,"Demo") oPSet.AddParameter3 "Check1", siBool oPSet.AddParameter3 "Check2", siBool set oPPGLayout = oPSet.PPGLayout oPPGLayout.AddGroup "", true oPPGLayout.AddRow oPPGLayout.AddItem "Check1" set oItem = oPPGLayout.AddItem( "Check2" ) oItem.Label = "Check Box 2" oPPGLayout.EndRow oPPGLayout.EndGroup 'We can look up and change the items afterwards set oItem = oPPGLayout.Item( "Check1" ) oItem.Label = "Check Box 1" 'Show our PPG InspectObj oPSet |
//example building a layout with two Controls for selecting a //filepath and one for selecting a folder. var oPSet=ActiveSceneRoot.AddProperty("CustomProperty",false,"Demo") ; oPSet.AddParameter3( "ExportFile", siString ) ; oPSet.AddParameter3( "ImportFile", siString ) ; oPSet.AddParameter3( "FolderPicker", siString ) ; var oPPGLayout = oPSet.PPGLayout ; var oItem = oPPGLayout.AddItem( "ExportFile","Export Filename",siControlFilePath ) ; // You can use the string directly, or the typdef siUIInitialDir (see siPPGItemAttribute enum) oItem.SetAttribute( "initialdir", "project" ) ; oItem.SetAttribute( siUIFileFilter, "Text files (*.txt)|*.txt|All Files (*.*)|*.*||" ) ; var oItem = oPPGLayout.AddItem( "ImportFile","",siControlFilePath ) ; oItem.SetAttribute( siUIFileFilter, "spdl files (*.spdl)|*.spdl|" + "xsiaddon files (*.xsiaddon)|*.xsiaddon|" + "All Files (*.*)|*.*||" ); oItem.SetAttribute( siUIOpenFile, true ) ; oItem.SetAttribute( siUIInitialDir, "factory" ) ; oItem.SetAttribute( siUISubFolder, "Application/spdl" ) ; oItem.SetAttribute( siUIFileMustExist, true ); var oItem = oPPGLayout.AddItem( "FolderPicker", "", "Folder" ); oItem.SetAttribute( siUIInitialDir, "user" ) ; InspectObj( oPSet ); |