BCGControlBar Professional Edition Version: 25.2. Released: 1/30/2017 Added Visual Studio 2017 RC support (retail product version only). Planner control Added Outlook-style Schedule View (see screenshot). Improved control rendering in Office 2013/2016 and Visual Studio 2012/2013/2015 themes. Please take a look at BCGPCalendarDemo example to see these new features. Ribbon Bar QAT customization dialog: tooltips were added to the source and destination list boxes (see screenshot). New parameter of CBCGPRibbonBar::EnableStartPage method 'strPageName' allows to specify a Ribbon start page name. New method 'CBCGPRibbonPanel::EnableItemsCompacting' allows to keep panel controls in the initial (with maximal width) state and never "compact" them when Ribbon bar width is being reduced. Tab control Implemented new "Underline" style (see screenshot). STYLE_UNDERLINE was added to CBCGPTabWnd::Style enumeration. Tab "Documents" menu can be created with following styles: drop-down arrow (default), ellipsis or hamburger (see screenshot). You can specify this style by new parameter of CBCGPTabWnd::EnableTabDocumentsMenu method - 'TabsDocumentsMenuStyle style'. CBCGPMDITabParams has 2 new members: m_DocumentMenuStyle - document menu style: drop-down arrow (default), ellipsis or hamburger m_bFullSizeButtons - specifies whether to display tab buttons (such as documents menu button). You can set it to TRUE to make your tab control touch-friendly. In addition, m_style can be set to STYLE_UNDERLINE (new style). Please launch MDITabsDemo sample to see these new styles. Dialogs Progress dialog: added custom progress bar support (see screenshot). CBCGPProgressDlgParams has 2 new parameters: m_nProgressHeight: progress bar control height. m_pProgressCtrlRTI: progress control runtime class. ProgressDialogDemo sample demonstrates this new feature. CBCGPPropertySheet has a new look: PropSheetLook_Underline (see screenshot). Grid control New methods InsertFirstSubItem, InsertLastSubItem allow to insert sub-row at the specific position in a grid. The wait cursor can be enabled/disabled now - new methods EnableWaitCursor, IsWaitCursorEnabled were added. Added horizontal auto-scrolling while dragging the grid header items. Controls Shell controls: implemented ability to insert new items and rename existing ones. The following new methods were added: CBCGPShellBreadcrumb::RenameShellItem CBCGPShellBreadcrumb::AddExistingFolder CBCGPShellList::CreateFolder CBCGPShellList::RenameItem CBCGPShellTree::AddExistingFolder CBCGPShellTree::CreateFolder CBCGPShellTree::RenameItem CBCGPButton: added tooltip description (see screenshot). CBCGPButton::SetTooltip has a new optional parameter 'LPCTSTR lpszToolTipDescription' and new method CBCGPButton::GetTooltipDescription was added. CBCGPCalendar: added shadow to drop-down calendar window (see screenshot). CBCGPListBox: a color bar width can be specified by calling a new method 'SetColorBarWidth'. Miscellaneous CBCGPToolBar::SetNonPermittedCommands has a new optional parameter 'BOOL bUpdateExistingToolBars'. Set this parameter to TRUE if you wish to update all existing toolbars (for example, hide buttons with "non-permitted" commands). New method CBCGPToolBar::SetUseToolBarImagesInDropDownMenus specifies whether toolbar images should be used in drop-down menus. By default, toolbar's drop-down menus are using "small" (16 x 16 in DPI = 100%) icons. If you wish to display menus with toolbar icons, call this method with bSet = TRUE. Visual containers and controls: scrollbar buttons have highlighted state now. CBCGPVisualScrollBarColorTheme has a new 'm_brButtonHighlighted' member. CBCGPProp::IsModified has a new optional parameter 'BOOL bIncludeSubItems' - set it to TRUE to check if property is modified recursively. min and max macros are no longer used in the product header files. DB Grids: the column widths are DPI-scaled now. Improved MSAA support in CBCGPColorBar, CBCGPColorPickerCtrl and chart controls. CBCGPExplorerToolBar: improved simplified navigation buttons rendering. CBCGPMDIFrameWnd::EnableTearOffMDIChildren has a new optional parameter 'CRuntimeClass* pMDITearOffFrameRTI' - you can specify now tear-off ("detached") frame runtime class. New global flag CBCGPVisualManager::m_bMDIAreaFullRedrawOnActivate allows to optimize MDI child frames redrawing: set it to FALSE if you wish to disable full redrawing upon MDI child frame activation. Examples and samples: BCGPCalendarDemo: demonstrates new Schedule View. MDITabsDemo: demonstrates new MDI tab styles and attributes. ProgressDialogDemo: shows how to create a progress dialog with custom progress bar control. PropSheetDemo: demonstrates new property sheet styles. Fixes: CBCGPCalendar: fixed day labels width problem when control has a custom font. CBCGPChartLegendVisualObject: fixed some layout problems. CBCGPDateTimeCtrl: fixed bug with a border redrawing when control's auto-size is off. CBCGPButton: fixed bug with moving focus when user presses control acceleration key. Gantt chart: fixed bug with synchronization of the vertical scrolling between left-side grid and chart. CBCGPMDIFrameWnd: position of the tear-off frame is correctly normalized now inside the target monitor. Outlook bar: corrected location of auto-hide window when the Outlook bar is located on the right side. Ribbon bar: fixed bug with multiple appearance of separator in "Windows" popup menu. Ribbon bar: fixed bug with incorrect edit box value if edit box with spin buttons was added to QAT. Ribbon QAT customization: the control is added after the currently selected item now. Ribbon dialog bar: edit and combo box controls are correctly displayed on the first row. CBCGPEditCtrl: fixed bug with line markers. Now offset related data is updated correctly on inserting or removing the text. CBCGPEditCtrl: control border size is calculated correctly now upon window style changing. Grid control: fixed some issues with multiline rows that created by SetLinesNumber or CreateMultiLineRow methods. Planner control: fixed some problems with calendar print/print preview.