//{{AFX_CODEJOCK_PRIVATE #if !defined(__XTPTABMANAGERDEFINES_H__) #define __XTPTABMANAGERDEFINES_H__ //}}AFX_CODEJOCK_PRIVATE #if _MSC_VER >= 1000 #pragma once #endif // _MSC_VER >= 1000 //----------------------------------------------------------------------- // Summary: // XTPTabNavigateButtonFlags is an enumeration used to indicate // when a navigate button will be displayed. This style is // applied to one button. Navigate buttons include the left, // right, and close buttons that appear in the tab header area. // // Remarks: // If automatic is selected, then the button will appear only // when needed. I.e. When the XTPTabLayoutStyle is set to // xtpTabLayoutAutoSize, all tab might not fit in the tab header // area. When there are more tabs than can fit in the header, the // button will automatically be displayed. // // Example: // This example code illustrates how to specify when the tab navigation // buttons are displayed. // // //Gets a reference to the tab manager // CXTPTabManager* pManager = GetManager(); // if (pManager) // { // //Finds the left navigation button and specifies that it is always displayed // pManager->FindNavigateButton(xtpTabNavigateButtonLeft)->SetFlags(xtpTabNavigateButtonAlways); // //Finds the right navigation button and specifies that it is never displayed // pManager->FindNavigateButton(xtpTabNavigateButtonRight)->SetFlags(xtpTabNavigateButtonNone); // //Finds the close navigation button and specifies that it is always displayed // pManager->FindNavigateButton(xtpTabNavigateButtonClose)->SetFlags(xtpTabNavigateButtonAlways); // } // //Called to recalculate tab area and reposition components // pManager->Reposition(); // // See Also: CXTPTabManagerNavigateButton, CXTPTabManagerNavigateButton::SetFlags, // CXTPTabManagerNavigateButton::GetFlags // // //----------------------------------------------------------------------- enum XTPTabNavigateButtonFlags { xtpTabNavigateButtonNone, // Never display the navigate button. xtpTabNavigateButtonAutomatic, // Automatically display the navigate button. xtpTabNavigateButtonAlways // Always display the navigate button. }; //----------------------------------------------------------------------- // Summary: // XTPTabAppearanceStyle is an enumeration used to set the appearance of tabs. // Example: // m_wndTabControl.SetAppearance(xtpTabAppearancePropertyPage2003); // See Also: CXTPTabManager::SetAppearance, CXTPTabPaintManager::SetAppearance //----------------------------------------------------------------------- enum XTPTabAppearanceStyle { xtpTabAppearancePropertyPage = 0, // Gives your tabs an Office 2000 appearance. xtpTabAppearancePropertyPageSelected = 1, // Gives your tabs an Office 2000 selected appearance. xtpTabAppearancePropertyPageFlat = 2, // Gives your tabs an Office 2000 Flat appearance. xtpTabAppearancePropertyPage2003 = 3, // Gives your tabs an Office 2003 appearance. xtpTabAppearanceStateButtons = 4, // Gives your tabs a State Button appearance. xtpTabAppearanceFlat = 6, // Gives your tabs Flat appearance. xtpTabThemeExcel2003 = 7, // Gives your tabs an Excel 2003 appearance. xtpTabAppearanceVisio = 8, // Gives your tabs a Visio appearance. xtpTabAppearancePropertyPage2007 = 10, // Gives your tabs an Office 2007 appearance. xtpTabAppearancePropertyPageAccess2007 = 11, // Gives your tabs an Office 2007 appearance. xtpTabThemeVisualStudio2003 = 5, // Gives your tabs a Visual Studio 2003 appearance. xtpTabThemeVisualStudio2005 = 9, // Gives your tabs a Visual Studio 2005 appearance. xtpTabThemeVisualStudio2010 = 12, // Gives your tabs a Visual Studio 2010 appearance. xtpTabThemeVisualStudio2012 = 13, // Gives your tabs a Visual Studio 2012 appearance. xtpTabThemeOffice2013 = 14, // Office 2013 appearance // Old names xtpTabAppearanceVisualStudio = xtpTabThemeVisualStudio2003, xtpTabAppearanceVisualStudio2003 = xtpTabThemeVisualStudio2003, xtpTabAppearanceVisualStudio2005 = xtpTabThemeVisualStudio2005, xtpTabAppearanceVisualStudio2010 = xtpTabThemeVisualStudio2010, xtpTabAppearanceVisualStudio2012 = xtpTabThemeVisualStudio2012, xtpTabAppearanceExcel = xtpTabThemeExcel2003, }; //----------------------------------------------------------------------- // Summary: // XTPTabColorStyle is an enumeration used to set the color style of tabs. // Example: // m_wndTabControl.SetColor(xtpTabColorVisualStudio2005); // See Also: // CXTPTabManager::SetColor, CXTPTabPaintManager::SetColor, // CXTPTabManager::GetColor, CXTPTabPaintManager::GetColor // // //----------------------------------------------------------------------- enum XTPTabColorStyle { xtpTabColorDefault = 0x0001, // Tabs will use the default color for the currently set Appearance. xtpTabColorOffice2003 = 0x0004, // Tabs will use the Office 2003 color style for the currently set Appearance. xtpTabColorWinNative = 0x0008, // Tabs will use the Windows XP color style for the currently set Appearance. xtpTabColorResource = 0x0020, // Tabs will use the Office 2007 color style for the currently set Appearance. xtpTabColorOffice2007Access = 0x0080, // Tabs will use the Office 2007 Access color style for the currently set Appearance. xtpTabColorVisualStudio2003 = 0x0002, // Tabs will use the Visual Studio 2003 color style for the currently set Appearance. xtpTabColorVisualStudio2005 = 0x0010, // Tabs will use the Visual Studio 2005 color style for the currently set Appearance. xtpTabColorVisualStudio2008 = 0x0040, // Tabs will use the Visual Studio 2008 color style for the currently set Appearance. xtpTabColorVisualStudio2010 = 0x0100, // Tabs will use the Visual Studio 2010 color style for the currently set Appearance. xtpTabColorVisualStudio2012 = 0x0200, // Tabs will use the Visual Studio 2012 color style for the currently set Appearance. xtpTabColorVisualStudio2012Dark = 0x0400, // Tabs will use the Visual Studio 2012 Dark color style for the currently set Appearance. xtpTabColorOffice2013 = 0x0800, // Tabs will use the Office 2013 style for the currently set Appearance. xtpTabColorAll = 0xFFFF, //{{AFX_CODEJOCK_PRIVATE // obsolete, for backward compatibility only. xtpTabColorVisualStudio = xtpTabColorVisualStudio2003, xtpTabColorWinXP = xtpTabColorWinNative, xtpTabColorWhidbey = xtpTabColorVisualStudio2005, xtpTabColorAccess2007 = xtpTabColorOffice2007Access, xtpTabColorOffice2007 = xtpTabColorResource, //}}AFX_CODEJOCK_PRIVATE }; //----------------------------------------------------------------------- // Summary: // XTPTabPosition is an enumeration used to set the position of tabs. // Example: // m_wndTabControl.SetPosition(xtpTabPositionBottom); // See Also: CXTPTabManager::SetPosition, CXTPTabManager::GetPosition // // //----------------------------------------------------------------------- enum XTPTabPosition { xtpTabPositionTop, // Tabs will be drawn on the Top. xtpTabPositionLeft, // Tabs will be drawn on the Left. xtpTabPositionBottom, // Tabs will be drawn on the Bottom. xtpTabPositionRight // Tabs will be drawn on the Right. }; //----------------------------------------------------------------------- // Summary: // XTPTabLayoutStyle is an enumeration used to set the layout of tabs. // Example: // m_wndTabControl.SetLayoutStyle(xtpTabLayoutCompressed); // See Also: CXTPTabManager::SetLayoutStyle, CXTPTabManager::GetLayout // // //----------------------------------------------------------------------- enum XTPTabLayoutStyle { xtpTabLayoutAutoSize, // Tabs will be automatically sized based on the caption and image size. With this flag set, tabs will appear in their normal size. xtpTabLayoutSizeToFit, // Tabs are sized to fit within the tab panel. All tabs will be compressed and forced to fit into the tab panel. xtpTabLayoutFixed, // All tabs will be set to a fixed size within the tab panel. xtpTabLayoutCompressed, // Tabs will be compressed within the tab panel. This will compress the size of the tabs, but all tabs will not be forced into the tab panel. xtpTabLayoutMultiRow, // Causes a tab control to display multiple rows of tabs xtpTabLayoutRotated // Rotated tab layout - all tabs rotated to 90 degree. }; //----------------------------------------------------------------------- // Summary: // XTPTabToolTipBehaviour is an enumeration used to set tooltip behaviour for tabs // Example: // m_wndTabControl.GetPaintManager()->EnableToolTips(xtpTabToolTipAlways); // See Also: CXTPTabPaintManager::EnableToolTips, XTPTabLayoutStyle // // //----------------------------------------------------------------------- enum XTPTabToolTipBehaviour { xtpTabToolTipNever, // Doesn't show tooltips for tabs xtpTabToolTipAlways, // Show tooltips for tabs always xtpTabToolTipShrinkedOnly // Show tooltips only if tab was shrinked (see xtpTabLayoutSizeToFit layout) }; //----------------------------------------------------------------------- // Summary: // XTPTabOneNoteColor is an enumeration used to indicate which OneNote // COLORREF value to retrieve. // Remarks: // This enumerator is used by CXTPTabPaintManager::GetOneNoteColor to // retrieve a specified OneNote RGB color value. // Example: // See WM_XTP_GETTABCOLOR for an example. // See Also: // CXTPTabPaintManager::GetOneNoteColor, CXTPTabManager::GetItemColor, // CXTPDockingPane::GetItemColor // // //----------------------------------------------------------------------- enum XTPTabOneNoteColor { xtpTabColorBlue = 0x1000000, // Blue tab color used when OneNote colors enabled. xtpTabColorYellow = 0x1000001, // Yellow tab color used when OneNote colors enabled. xtpTabColorGreen = 0x1000002, // Green tab color used when OneNote colors enabled. xtpTabColorRed = 0x1000003, // Red tab color used when OneNote colors enabled. xtpTabColorPurple = 0x1000004, // Purple tab color used when OneNote colors enabled. xtpTabColorCyan = 0x1000005, // Cyan tab color used when OneNote colors enabled. xtpTabColorOrange = 0x1000006, // Orange tab color used when OneNote colors enabled. xtpTabColorMagenta = 0x1000007 // Magenta tab color used when OneNote colors enabled. }; //----------------------------------------------------------------------- // Summary: // XTPTabWorkspacePart is an enumeration used to indicate which // part of the MDI TabWorkspace needs to be redrawn. // Remarks: // The enumerators are used by CXTPTabPaintManagerTheme::DrawWorkspacePart // when redrawing the MDITabClient TabWorkspace when grouping is enabled. // See Also: CXTPTabPaintManagerTheme::DrawWorkspacePart // // //----------------------------------------------------------------------- enum XTPTabWorkspacePart { xtpTabWorkspacePartBorder, // Indicates that the border of the MDITabClient TabWorkspace should be drawn. xtpTabWorkspacePartWidth, // Indicates that the border width of the MDITabClient TabWorkspace should be recalculated. I.e. When adding or removing a static frame. xtpTabWorkspacePartVSplitter, // Indicates that the vertical splitter of the MDITabClient TabWorkspace should be drawn. xtpTabWorkspacePartHSplitter // Indicates that the horizontal splitter of the MDITabClient TabWorkspace should be drawn. }; //----------------------------------------------------------------------- // Summary: // XTPTabClientFrame is an enumeration used to set the client frame style drawn around the client of tabs. // Example: // m_wndTabControl.GetPaintManager()->m_clientFrame = xtpTabFrameBorder; // See Also: CXTPTabManager, CXTPTabPaintManager // // //----------------------------------------------------------------------- enum XTPTabClientFrame { xtpTabFrameBorder, // With this flag set, a border will appear around the client area. xtpTabFrameSingleLine, // With this flag set, only a single line is used as a border around the client area. xtpTabFrameNone // With this flag set, no border will appear around the client area. }; //----------------------------------------------------------------------- // Summary: // XTPTabNavigateButton is an enumeration used to identify navigation // buttons within a tab control. // Remarks: // This enumerator is used by the CXTPTabManagerNavigateButton class to // identify navigation buttons. // Example: // See XTPTabNavigateButtonFlags for an example. // See Also: // XTPTabNavigateButtonFlags, CXTPTabManager, CXTPTabManagerNavigateButton // // //----------------------------------------------------------------------- enum XTPTabNavigateButton { xtpTabNavigateButtonLeft, // Left tab navigation button. xtpTabNavigateButtonRight, // Right tab navigation button. xtpTabNavigateButtonClose, // Close tab navigation button. xtpTabNavigateButtonActiveFiles // Active Files button (Used in XTPTabClientWnd only). }; //----------------------------------------------------------------------- // Summary: // Indicates that a transparent color should be used. // Remarks: // If an objects COLORREF value is XTP_TABMANAGER_COLOR_NONE it // is used to indicate that the object should not be drawn. This // is used in the tab appearance and color functions to indicate // when tab borders, highlighting, shadowing, etc should be drawn. // // Setting a member of CXTPTabPaintManagerColorSet to // XTP_TABMANAGER_COLOR_NONE will indicate that the member should // not be drawn. // See Also: CXTPTabPaintManagerColorSet //----------------------------------------------------------------------- const COLORREF XTP_TABMANAGER_COLOR_NONE = (COLORREF)(-1); //----------------------------------------------------------------------- // Summary: // Indicates a special "shaded" fill type. // Remarks: // To get the "shaded" effect, the object will be filled with // one pixel COLOR_3DFACE, one pixel COLOR_3DHIGHLIGHT, one // pixel COLOR_3DFACE.... // // Setting the clrLight parameter to XTP_TABMANAGER_COLOR_SHADED // in the used in CXTPTabPaintManagerColorSet::GradientFill // member will cause the object to be filled with the special shaded fill. // // NOTE: // This is used in xtpTabAppearanceStateButtons to colorize // the button face. The special fill was used to color of the currently // selected tab. The special fill can be applied to any // color member. // See Also: CXTPTabPaintManagerColorSet::GradientFill //----------------------------------------------------------------------- const COLORREF XTP_TABMANAGER_COLOR_SHADED = (COLORREF)(-2); #endif //#if !defined(__XTPTABMANAGERDEFINES_H__)