BCGControlBar Library Professional Edition MFC v32.1

BCGControlBar Library Professional Edition MFC v32.1
Adds Visual Studio 2022 support and improves frame and popup window appearance in Windows 11.


Feature Release

November 18, 2021 - 15:25
BCGControlBar Library Professional Edition MFC v32.1
Windows 11 rounded corners
  • Added Microsoft Visual Studio 2022 support:
    • The source files are fully compliant with Visual 2022 C++ compiler.
    • All examples and samples have been thoroughly tested with Visual Studio 2022.
    • Evaluation version contains DLLs and libraries required for Visual Studio 2022.
  • Improved frames and popup windows appearance in Microsoft Windows 11: Added rounded corners in all popup windows such as menus, floating docking panes and others.
    • You can specify whether frame (dialog, popup menu and so on) has the rounded corners under Windows 11 (for all visual themes).
    • Frames and dialogs border color is specified by application accent color.
    • By default, the rounded corners are available in visual themes with a standard Windows caption (like Windows Native or Scenic), but you can customize this appearance by setting the following new globalData members:
      • m_FrameCornerType.
      • m_DlgCornerType.
      • m_MiniFrameCornerType.
      • m_PopupMenuCornerType.
    • You may handle a new registered message BCGM_GETWINDOWCORNERTYPE and return an appropriate corner type for specific window.
  • Ribbon Bar
    • Reduced quick access toolbar height when Ribbon simplified mode is activated.
    • CBCGPRibbonButton: Added support for medium-size (20x20) icons (used in the Ribbon simplified mode). CBCGPRibbonButton constructor has a new, optional parameter "HICON hIconMedium" and GetMediumIcon / SetMediumIcon methods which have been added to this class.
    • CBCGPRibbonBar: Added the ability to customize minimize button appearance and behavior. You may override a new virtual method CreateMinimizeButton and return your custom, CBCGPRibbonMinimizeButton-derived minimize button. To demonstrate this new feature, a custom minimize button to RibbonSimplifiedMode sample has been added and you can see how to implement a Microsoft Outlook 365-like simplified mode toggling using the minimize button.
    • CBCGPRibbonBar: Added a new method GetMinimizeButton which returns a pointer to the minimize button.
  • Visual Manager and Themes
    • Edit box and toolbar edit control: Improved controls appearance in Window native theme.
    • Toolbox: Improved groups appearance in Window native theme.
    • CBCGPVisualManager: Added a new method GetWindowCornerType which specifies whether a top-level frame/dialog or popup window has rounded corners (Windows 11 only). By default, only visual themes with default (DWM) captions have the rounded corners. Override this method in your custom visual manager if you wish to customize specific windows appearance when application is running under Windows 11.
  • Grid and Report Controls
    • Added Microsoft Excel-like text overflowing.
    • Added grid cell selection animation effect: When you are clicking a single cell, selection border will be smoothly moved from a previous location.
  • Controls
    • Added a new class CBCGPCheckComboBox which implements a combo box with checked drop-down list.
    • CBCGPEdit: Added the ability to display prompt (cue banner) when control is focused.
    • CBCGPTreeCtrlEx: Added standard tree view notifications such as NM_CLICK, NM_DBLCLK, NM_RCLICK, NM_RDBLCLK and NM_SETFOCUS.
  • Miscellaneous
    • CBCGPToolBarImages: Added a new method PrepareSVGImages converts SVG icons to the internal image wheel (bitmap).
    • CBCGPPropList: Added a new method SetButtonsAppearance which allows to specify property buttons appearance.
    • Smart docking markers:
      • Old raster bitmap resources have been replaced with SVG.
      • CBCGPSmartDockingParams has 2 new members: m_clrToneSrcHot and m_clrToneDestHot. Specifying these options allows to colorize custom highlighted markers.
    • CBCGPTabWnd: Added a new method SetActiveTabExtraHeight which allows you to additionally highlight an active tab by adding some extra height. CBCGPMDITabParams has a new member m_nActiveTabExtraHeight, so you can also use this feature in MDI tabs.
  • Examples and Samples
    • BCGPControls: Demonstrates a new CBCGPCheckComboBox control and edit box cue banner improvements.
    • BCGPGridExample: Added text overflowing and cell selection animation demonstrations.
    • BCGPMSOfficeDemo and BCGPVisualStudioGUIDemo: Added demonstration how to customize frame / popup corners appearance in Windows 11.
    • RibbonSimplifiedMode: Added demonstration of custom minimize button and using icons in the simplified mode.
    • SmartDockingDemo: Added demonstration how to use custom SVG-based docking markers.
    • TabControl and MDITabsDemo: Added active tab extra height demonstration.