# IMFTabPart Struct Reference
[MCFrame]

Inheritance diagram for IMFTabPart:

List of all members.

## Public Member Functions
virtual void MCCOMAPI | AddPagesFromTABSResource (ResourceID inResID)=0
virtual IDType MCCOMAPI | AddPage (IMFPart *inPart, const TMCString &inPageName, ResourceID inImageResID, boolean inRecalcTabs, boolean inRenumberPages, boolean inFitPageToHost, boolean inDoNotResizePart=false)=0
virtual IDType MCCOMAPI | AddPage (ResourceID inPartResID, const TMCString &inPageName, ResourceID inImageResID, boolean inRecalcTabs, boolean inRenumberPages, boolean inFitPageToHost, boolean inDoNotResizePart=false)=0
virtual void MCCOMAPI | RemovePage (IDType inPageID, boolean inRecalcPages, boolean inRenumberPages)=0
virtual void MCCOMAPI | RemoveAllPages ()=0
virtual void MCCOMAPI | SetCurrentPage (IDType inCurrentPageID, boolean notify=true)=0
virtual IDType MCCOMAPI | GetCurrentPage ()=0
virtual IMFPart *MCCOMAPI | GetCurrentTab ()=0
virtual int32 MCCOMAPI | GetPageCount ()=0
virtual void MCCOMAPI | SetTabAlignment (ETabAlignment inTabAlignment)=0
virtual void MCCOMAPI | SetIsIconTabs (boolean inIsIconTabs)=0
virtual boolean MCCOMAPI | GetIsIconTabs ()=0
virtual void MCCOMAPI | SetPageIsEnabled (IDType inPageID, boolean inIsEnabled)=0
virtual void MCCOMAPI | SetPageName (IDType inPageID, const TMCString &inName)=0
virtual boolean MCCOMAPI | GetPageIsEnabled (IDType inPageID)=0
virtual void MCCOMAPI | GetPageName (IDType inPageID, TMCString &ioName)=0
virtual void MCCOMAPI | SetPageIsVisible (IDType inPageID, boolean inIsVisible)=0
virtual boolean MCCOMAPI | GetPageIsVisible (IDType inPageID)=0
virtual void MCCOMAPI | GetPageContainingPart (IDType partID, IDType &pageID)=0
virtual IMFPart *MCCOMAPI | GetThisPart ()=0

## Detailed Description

IMFTabPart is the interface used for tabs in the UI.

In MCSketch, you will create a Node part of class TMFTabPart, with a child TMFTabArea to hold the tabs themselves and a Node Part to host the tab contents. Give the tab area an ID of 'TabA' and the host NodePart an ID of 'Host'

The pages for the tabs can be generated automatically from a TABS resource, or manually with AddPage()

Tabs can have either text or icon labels. If using icon labels, the textual names of the tabs will be used as tooltips when the cursor hovers over the icon.

## Member Function Documentation

virtual IDType MCCOMAPI IMFTabPart::AddPage | ( | ResourceID | inPartResID,
|  | const TMCString & | inPageName,
|  | ResourceID | inImageResID,
|  | boolean | inRecalcTabs,
|  | boolean | inRenumberPages,
|  | boolean | inFitPageToHost,
|  | boolean | inDoNotResizePart = `false` |
| ) |  |  | `[pure virtual]`

Adds a new tab to the Tab Part.

Parameters:

  | inPartResID | Resource ID for the part to add
  | inPageName | Name to appear in this page's tab
  | inImageResID | If this has a value, the tab will have an icon rather than a title.
  | inRecalcTabs | If true, recalculates tab sizes
  | inRenumberPages | If true, renumbers the pages after inserting the page
  | inFitPageToHost | If true, the new page is given the size of the host pane. Otherwise, the new page is resized only if it is smaller. Use false when the scroll part is outside the tabs.
  | inDoNotResizePart | If true, does not resize the part.

virtual IDType MCCOMAPI IMFTabPart::AddPage | ( | IMFPart * | inPart,
|  | const TMCString & | inPageName,
|  | ResourceID | inImageResID,
|  | boolean | inRecalcTabs,
|  | boolean | inRenumberPages,
|  | boolean | inFitPageToHost,
|  | boolean | inDoNotResizePart = `false` |
| ) |  |  | `[pure virtual]`

Adds a new tab to the Tab Part.

Parameters:

  | inPart | Pointer to the Part to add
  | inPageName | Name to appear in this page's tab
  | inImageResID | If this has a value, the tab will have an icon rather than a title.
  | inRecalcTabs | If true, recalculates tab sizes
  | inRenumberPages | If true, renumbers the pages after inserting the page
  | inFitPageToHost | If true, the new page is given the size of the host pane. Otherwise, the new page is resized only if it is smaller. Use false when the scroll part is outside the tabs.
  | inDoNotResizePart | If true, does not resize the part.

virtual void MCCOMAPI IMFTabPart::AddPagesFromTABSResource | ( | ResourceID | inResID | ) | `[pure virtual]`

virtual IDType MCCOMAPI IMFTabPart::GetCurrentPage | ( |  | ) | `[pure virtual]`

virtual IMFPart* MCCOMAPI IMFTabPart::GetCurrentTab | ( |  | ) | `[pure virtual]`

virtual boolean MCCOMAPI IMFTabPart::GetIsIconTabs | ( |  | ) | `[pure virtual]`

virtual void MCCOMAPI IMFTabPart::GetPageContainingPart | ( | IDType | partID,
|  | IDType & | pageID |
| ) |  |  | `[pure virtual]`

virtual int32 MCCOMAPI IMFTabPart::GetPageCount | ( |  | ) | `[pure virtual]`

virtual boolean MCCOMAPI IMFTabPart::GetPageIsEnabled | ( | IDType | inPageID | ) | `[pure virtual]`

virtual boolean MCCOMAPI IMFTabPart::GetPageIsVisible | ( | IDType | inPageID | ) | `[pure virtual]`

virtual void MCCOMAPI IMFTabPart::GetPageName | ( | IDType | inPageID,
|  | TMCString & | ioName |
| ) |  |  | `[pure virtual]`

virtual IMFPart* MCCOMAPI IMFTabPart::GetThisPart | ( |  | ) | `[pure virtual]`

virtual void MCCOMAPI IMFTabPart::RemoveAllPages | ( |  | ) | `[pure virtual]`

virtual void MCCOMAPI IMFTabPart::RemovePage | ( | IDType | inPageID,
|  | boolean | inRecalcPages,
|  | boolean | inRenumberPages |
| ) |  |  | `[pure virtual]`

virtual void MCCOMAPI IMFTabPart::SetCurrentPage | ( | IDType | inCurrentPageID,
|  | boolean | notify = `true` |
| ) |  |  | `[pure virtual]`

virtual void MCCOMAPI IMFTabPart::SetIsIconTabs | ( | boolean | inIsIconTabs | ) | `[pure virtual]`

virtual void MCCOMAPI IMFTabPart::SetPageIsEnabled | ( | IDType | inPageID,
|  | boolean | inIsEnabled |
| ) |  |  | `[pure virtual]`

virtual void MCCOMAPI IMFTabPart::SetPageIsVisible | ( | IDType | inPageID,
|  | boolean | inIsVisible |
| ) |  |  | `[pure virtual]`

virtual void MCCOMAPI IMFTabPart::SetPageName | ( | IDType | inPageID,
|  | const TMCString & | inName |
| ) |  |  | `[pure virtual]`

virtual void MCCOMAPI IMFTabPart::SetTabAlignment | ( | ETabAlignment | inTabAlignment | ) | `[pure virtual]`

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

- IMFTabPart.h