# TPropertyTab Struct Reference
[Shell Interfaces]

List of all members.

## Public Member Functions
| TPropertyTab ()
| TPropertyTab (const TPropertyTab &tab)
| TPropertyTab (IMFPart *inPage, const TMCString &inTitle)
| TPropertyTab (IDType familyID, IDType classID, MFPartID nodeID, int16 titleResID, int16 titleResIndex)
void | Init ()
## Public Attributes
TMCPtr< IMFPart > | fPage
| The node part to display.
TMCDynamicString | fTitle
| The tab's title.
IDType | fCompFamilyID
| To setup the correct resource file.
IDType | fCompClassID
| To setup the correct resource file.
MFPartID | fNodeID
| ID of the node part to use for the page.
int16 | fTitleResID
| ID of the STR# resource to use for the title.
int16 | fTitleResIndex
| index (one based) of the title in the STR# resource

## Detailed Description

TPropertyTab contains the information given to the properties module by the client to load the tabs that are independent from the current selection (through GetExtraTabs)

Note that the fCompFamilyID, fCompClassID and fNodeID are used to identify the tab to avoid annoying change of the current tab when the selection changes. (they won't be used to override fPage if you provide a part for it)

Example of implementation of GetExtraTabs:

                    extraTabs.SetElemSpace(4);
                    extraTabs.AddElem( TPropertyTab(kRID_ModuleFamilyID, kHierModuleID, kHierarchyTreeNodeID,       kHierarchyModulePublicStrings, kHierModuleInstancesString) );
                    extraTabs.AddElem( TPropertyTab(kRID_ModuleFamilyID, kHierModuleID, kObjectsPartNodeID,         kHierarchyModulePublicStrings, kHierModuleObjectsString) );
                    extraTabs.AddElem( TPropertyTab(kRID_ModuleFamilyID, kHierModuleID, kShadersPartNodeID,         kHierarchyModulePublicStrings, kHierModuleShadersString) );
                    TPropertyTab previewTab(kRID_ModuleFamilyID, k3DViewModuleClassID, kPreviewTabNodeID, k3DViewModulePublicStrings, k3DViewModulePreviewString);
                    previewTab.fPage= gShell3DUtilities->GetScenePreviewPart();
                    extraTabs.AddElem(previewTab);

## Constructor & Destructor Documentation

TPropertyTab::TPropertyTab | ( |  | ) | `[inline]`

TPropertyTab::TPropertyTab | ( | const TPropertyTab & | tab | ) | `[inline]`

TPropertyTab::TPropertyTab | ( | IMFPart * | inPage,
|  | const TMCString & | inTitle |
| ) |  |  | `[inline]`

TPropertyTab::TPropertyTab | ( | IDType | familyID,
|  | IDType | classID,
|  | MFPartID | nodeID,
|  | int16 | titleResID,
|  | int16 | titleResIndex |
| ) |  |  | `[inline]`

## Member Function Documentation

void TPropertyTab::Init | ( | void |  | ) | `[inline]`

## Member Data Documentation

IDType TPropertyTab::fCompClassID

To setup the correct resource file.

IDType TPropertyTab::fCompFamilyID

To setup the correct resource file.

MFPartID TPropertyTab::fNodeID

ID of the node part to use for the page.

TMCPtr<IMFPart> TPropertyTab::fPage

The node part to display.

TMCDynamicString TPropertyTab::fTitle

The tab's title.

int16 TPropertyTab::fTitleResID

ID of the STR# resource to use for the title.

int16 TPropertyTab::fTitleResIndex

index (one based) of the title in the STR# resource

The documentation for this struct was generated from the following file:

- IPropertiesModule.h