Skip Navigation LinksBCGSoft > Release Notes > Version Release Notes

Release Notes

BCGControlBar Professional Edition

Version: 28.0. Released: 8/1/2018

  1. Ribbon Bar
    1. Implemented Office 2013/2016-like Ribbon Bar Auto-hide mode (see screenshot). The following new methods were added to CBCGPRibbonBar class:
      • SetAutoHideMode - activates/deactivates auto-hide mode
      • IsAutoHideModeAvailable - tells whether auto-hide mode is active.
      Please note that auto-hide mode is not compatible with a Ribbon DWM ("aero") caption, therefore auto-hide mode will be automatically closed when user activates an "aero" visual theme (e.g. Office 2007 or 2010). Please take a look at BCGPMSOfficeDemo example to see this feature in action.
    2. Added ability to specify whether the Ribbon custom caption button should be displayed: new parameter nFlags was added to CBCGPRibbonCaptionCustomButton constructor. The flag is a combination of the following values: BCGP_RIBBON_CAPTION_CUSTOM_BUTTON_DISPLAY_IN_NORMAL_MODE, BCGP_RIBBON_CAPTION_CUSTOM_BUTTON_DISPLAY_IN_BACKSTAGE_MODE and BCGP_RIBBON_CAPTION_CUSTOM_BUTTON_DISPLAY_IN_HIDDEN_MODE.
    3. CBCGPRibbonBar:: ReplaceRibbonElementByID has a new optional parameter bIncludeHidden. Set it to TRUE if you wish to replace the Ribbon control in the hidden elements too.
  2. Toolbars and Menus
    1. CBCGPColorMenuButton class has a new virtual method "CreateTearOffColorBar". Override this method if you need to create your custom, CBCGPColorBar-derived tear-off color bar.
    2. CBCGPColorBar: added owner-draw color boxes support (see screenshot). A new virtual method "OnDrawPaletteColorBox" was added to CBCGPColorBar, CBCGPColorButton, CBCGPColorMenuButton, CBCGPGridColorItem, CBCGPGridCtrl and CBCGPColorProp. BCGPControls and BCGPGridExample sample applications demonstrate this new feature.
    3. Implemented ability to hide toolbar/menu bar items with an empty items list: HideEmptyMenus and IsHideEmptyMenus methods were added to CBCGPToolBar class.
  3. Dialogs and Forms
    1. Added new registered message BCGM_ONERASECHILDCONTROLBACKGROUND: add this message handler in your dialog/form with a custom background.
    2. BCGPControlInfoTipStyle: added new info tip styles - BCGPINFOTIP_Warning, BCGPINFOTIP_InfoBlue, BCGPINFOTIP_Question and BCGPINFOTIP_Bulb.
    3. CBCGPPropertySheet: improved page redrawing performance upon changing active page and window resizing. A new m_bFlickerLess member was added to CBCGPPropertySheet class. If for some reason you need to keep a previous behavior, set this member to FALSE in the property sheet constructor.
  4. Chart Control
    1. Implemented new color themes: CBCGPChartTheme::CT_SPB (see screenshot), CBCGPChartTheme:: CT_PALACE (see screenshot) and CBCGPChartTheme:: CT_ICE (see screenshot).
    2. Implemented hit-testing and data-point tooltip for the 3D Surface chart.
  5. Gauge Controls
    1. Added a new class CBCGPNumericIndicatorCtrl: implements a Windows control with underlined numeric indicator (CBCGPNumericIndicatorImpl).
    2. Implemented smoothly transitioning numbers (see screenshot) in CBCGPNumericIndicatorImpl: uiAnimationTime and animationType parameters where added to CBCGPNumericIndicatorImpl::SetValue method.
    3. New method "CBCGPNumericIndicatorImpl::SetTextFormatAutoSize" specifies whether a control text size should be changed upon control resizing.
  6. Grid and Report Controls
    1. New virtual method CBCGPGridItem::GetDataColorScale allows to customize a data color scale.
    2. Filter bar keyboard support has been improved: added support for the standard keyboard shortcuts such as Ctrl+X, Ctrl+C, Ctrl+V and Ctrl+A.
  7. Property Grid Control
    1. Added "switch" (toggle)-style Boolean property (see screenshot). CBCGPPropList:: BooleanPropertiesStyle enumerator has a new value BOOL_PROPS_SWITCH. A new method CBCGPProp::SetSwitchLabels specifies the switch labels (like "On" / "Off").
    2. CBCGPPropList::SetBooleanPropertiesStyle has a new optional parameter 'nHorzAlign': specifies a horizontal align of the check box/switch. By default, this parameter is TA_LEFT.
  8. Controls
    1. Added standard Windows keyboard accelerators (such as "Ctrl+C") processing to all edit controls.
    2. CBCGPListBox: improved hit testing performance for control with a large number of items.
    3. CBCGPTreeCtrl: added support for themed (visual manager-style) check boxes.
    4. CBCGPListCtrl: added support for themed (visual manager-style) check boxes.
  9. Graphics Manager
    1. Implemented D2D validation in CBCGPGraphicsManagerD2D: CBCGPGraphicsManagerD2D::InitD2D: if D2D is not properly installed on the machine, all future renderings will be performed by CBCGPGraphicsManagerGDIPlus or CBCGPGraphicsManagerGDI.
    2. CBCGPGraphicsManagerD2D::CreateImage and CBCGPGraphicsManagerGdiPlus::CreateImage: implemented loading of external SVG files.
  10. Miscellaneous
    1. BCGCBProConfig.h: added new build flag "BCGP_EXCLUDE_SVG". Uncomment this definition and rebuild the library if you wish to exclude SVG support.
    2. CBCGPContextMenuManager: added a new method "CancelTracking". Call this method if you need to close the menu during CBCGPContextMenuManager::TrackPopupMenu call.
    3. CBCGPKeyHelper: added new public static member 'm_pKeyFormatCallback'. Specify this member if you wish to implement your custom key format.
    4. CBCGPRegistry: added a new static flag 'm_bAutoCloseKey'. Set this flag to TRUE if you wish to close a previous registry key in CBCGPRegistry::CreateKey and CBCGPRegistry::Open methods.
  11. Examples and Samples
    1. BCGPControls: added demonstration of custom color buttons, custom color property and Boolean property switch.
    2. BCGPChartExample: added new chart color themes and interactive 3D surface chart demonstration.
    3. BCGPGaugesDemo: added demonstration of numeric indicator animation.
    4. BCGPGridExample: added custom grid color item.
    5. BCGPMSOfficeDemo: added Ribbon auto-hide mode demonstration.
    6. ResizableForm: demonstrates page transition effect in the resizable property sheet.
    7. RibbonGadgets: added Ribbon auto-hide mode demonstration.
  12. Fixes
    1. CBCGPAnimCtrl: addresses an issue with control appearance in preview mode.
    2. CBCGPCalendar: addresses an issue with control layout when max. date is specified.
    3. CBCGPLightBoxDialog: addresses an issue with caption button mouse highlighting.
    4. Control info tips: addresses an issue with control appearance in preview mode.
    5. CBCGPToolBarImages::CopyTemp: addresses an issue with copying SVG images.
    6. CBCGPMDIChildWnd: addresses an issue with updating Ribbon bar caption when MDI child is maximized.
    7. CBCGPMessageBox: addresses an issue with message box displayed from the popup menu.
    8. CBCGPScrollBar: addresses an issue with control appearance in RTL mode.
    9. CBCGPScrollBar: addresses an issue with incorrect hit-testing on control edges.
    10. CBCGPPageTransitionManager: addresses an issue with incorrect fade animation.
    11. CBCGPRibbonBar: addresses an issue with incorrect location of dropped-down category window (in the Ribbon bar minimized mode). In the previous product versions, the popup category rectangle was normalized in the current screen.
    12. CBCGPPropertySheet: addresses an issue with page transitions in the resizable property sheet.
    13. CBCGPTabbedControlBar: addresses an issue with restoring tab names. The old docking pane names are not assigned to the tab labels anymore.
    14. CBCGPStatic: addresses an issue with drawing separator in the preview mode.
    15. CBCGPSliderCtrl: addresses an issue with incorrect redrawing of zoom buttons in some cases.
    16. CBCGPPropertySheet: addresses an issue with Windows task bar icon flickering during page transition when the property sheet is a main application window.
    17. CBCGPPropertySheet: a navigation pane (located at the left side) has a correct tab order now.
    18. CBCGPFrameImpl: addresses an issue with incorrect frame shadow when user moves application's frame between monitors with different resolutions.
    19. CBCGPMaskEdit: addresses an issue with wrong Ctrl+navigation key processing when edit control mask is disabled.