BCGControlBar Library Professional Edition MFC v30.1

Released: Jul 16, 2019

Updates in v30.1


  • Dialogs and Forms
    • New class CBCGPFindReplaceDialogThemed implements a themed find/replace dialog. The methods of this new class are very similar to CFindReplaceDialog methods, so you can easily replace the standard dialog with a new one. This dialog is used now by CBCGPEditView and CBCGPGridView classes. If for some reason you need to keep the old code, simply uncomment #define BCGP_USE_STD_FINDDLG in BCGCBProConfig.h and rebuild the library.
    • CBCGPPropertySheet::EnablePageHeader has a new, optional parameter bExtendHeaderToAeroBackButton (default is FALSE). When this parameter is TRUE, the property sheet header will cover aero "Back" button.
  • Chart Control
    • Implemented bar/column shapes: the series can be either Box (default), Full Pyramid or Partial Pyramid. SetBarShape/GetBarShape methods were added to CBCGPChartBarSeries class.
    • Implemented 3D chart rotation by the mouse cursor/gesture event - EnableRotationByMouse and IsRotationByMouseEnabled methods were added to CBCGPChartDiagram3D class.
  • Visual Manager and Themes
    • Improved appearance of the switch control: new image resources (both .SVG and .PNG) were added.
    • Grid control: improved group box appearance in the Windows Native theme.
    • CBCGPVisualManager2016: improved appearance of disabled edit box (Office 2016 colorful/dark themes).
  • Grid and Report Controls
    • CBCGPGridCtrl: added themed Find dialog support. Call a new method SetFindDialogThemed to specify whether the dialog is themed and IsFindDialogThemed to check if this dialog has a theme support.
    • CBCGPGridView: added OnEditFind command handler. To enable finding in your grid view, just add ON_COMMAND(ID_EDIT_FIND, CBCGPGridView:: OnEditFind) in the message map of your CBCGPGridView-derived class.
  • Controls
    • CBCGPGroup: improved group with check box appearance customization; the following new virtual methods were added to this class: GetGroupNameSize, OnDrawGroupCheckBox and OnDrawGroupName.
    • CBCGPListBox: implemented changing a pinned state by keyboard. "Right" key highlights a pin in the currently selected item and "Space" key toggles a highlighted pin state.
    • Implemented switch control transition effect: when user toggles the switch state, a thumb will be smoothly moved to a new position.
  • Edit control
    • Improved bookmarks/markers support. CBCGPEditCtrl has the following new methods: - GoToFirstMarker: moves caret to the 1-st editor's marker - BookmarkLine: adds bookmark to the specific editor's line - MarkAll: adds bookmarks to all editor's lines that contain a specified text.
    • CBCGPEditView: added new methods SetFindDialogThemed and IsFindDialogThemed.
    • Improved exporting text to HTML.
  • Miscellaneous
    • CBCGPRibbonCheckBox: implemented modes - CheckBox or Switch. New methods SetMode and GetMode were added to CBCGPRibbonCheckBox class.
    • CBCGPGraphicsManager: added new methods DrawPieEx, DrawDoughnutEx, Draw3DPieEx, DrawPyramidEx, Draw3DPyramidEx and Draw3DFunnelEx. These methods allow to draw shapes with extended outline attributes such as stroke style and line width.
    • Added Visual Studio 2019 support to Ribbon Designer and Toolbar Editor.
    • Ribbon Designer supports a Switch control now.
    • CBCGPSVGImageList::SaveToFile has a new, optional parameter bAddEmptyOnError. When this parameter is TRUE, a blank SVG image will be added to the list in case of incorrect SVG source image.
  • Examples and Samples
    • BCGPChartExample: added column/bar shapes and 3D chart rotation by the mouse demonstrations.
    • BCGPGridExample: added themed Find dialog demonstration.
    • CBCGPMSOfficeDemoView: demonstrates how to add a custom Find/Replace dialog to CRichEditView-derived class.
    • BCGPVisualStudioGUIDemo: illustrates a custom Find/Replace dialog.
    • PropSheetDemo: demonstrates a page header that covers Aero Wizard "Back" button.
    • RibbonGadgets: demonstrates Ribbon switch control.


  • CBCGPBaseTabWnd::SetImageList: loaded image list is automatically scaled now according to the current DPI value.
  • CBCGPEditCtrl: addressed issues with a text search.
  • CBCGPPopupMenu: addressed issue with a vertical scrolling of the last menu item.
  • CBCGPRibbonBar: addressed issue with preventing DPI scaling of Ribbon element's icon drawn on the menu's item.
  • CBCGPRibbonStatusBarPane: addressed issue with DoDrawText virtual method parameters list.
  • Addressed issue with incorrect color pickers layout in the color dialog in some Windows locales.
  • Schedule view: addressed issue with drawing appointment duration.
  • Chart: addressed issue with calculation of the value from/to pixels of the chart axis when labels are displayed between the tick marks.
  • Radial menu: addressed issue with incorrect drawing/hit-testing when a number of menu items is 1.
  • Addressed issue with closing an MDI document with active print preview in the Ribbon backstage mode.