Skip Navigation LinksBCGSoft > Release Notes > Version Release Notes

Release Notes

BCGSuite for MFC

Version: 36.1. Released: 02/17/2025

  1. Dialogs and Forms
    1. CBCGPPropertySheet class: a new helper method NextPage provides an easy way to navigate the property sheet pages.
    2. Implemented DDX (Dialog Data Exchange) support for the following controls:
      • CBCGPDateTimeCtrl: a new method DDX_BCGPDateTime has been added.
      • CBCGPDurationCtrl: a new method DDX_BCGPDuration has been added.
      • CBCGPColorButton: a new method DDX_BCGPColor has been added.
      These methods allow you to easily map our controls to the dialog/form class members. Please take a look at the BCGPControls example source code to learn how to work with this new mechanism.
  2. Gauge Controls
    1. CBCGPAnalogClock: if the gauge has a visual manager theme, the built-in date indicator is themed too now.
    2. Implemented the gauge shape visual effects (see screenshot). Please take a look at our BCGPGaugesDemo application to see this new feature in action.
    3. CBCGPRadialMenuObject: added support for the icon luminosity inversion (see screenshot). A method named SetImageList has a new optional parameter 'bInvertLuminosity'. Please take a look at our BCGPGaugesDemo application ("Radial Menu" view) to see this new feature in action.
  3. Visual container and Visual Designer
    1. Implemented visual effects per theme: for example, you can specify now a light glowing color for the light theme and a dark color for the dark theme (see screenshot). Our Visual Designer tool supports this new feature.
    2. CBCGPVisualContainer: The LoadFromXML method has a new optional parameter "hInstance". This addition allows loading the visual containers using external resources.
  4. Controls
    1. CBCGPRatingCtrl: The focused rectangle is drawn now around the stars area, not in the whole client area as it was in the previous version.
    2. Improved the controls focused rectangle appearance: from now, the focused rectangle is drawn only if the control has been activated by the keyboard (standard Windows behavior). The m_bDrawFocus member in the CBCGPSliderCtrl classes specifies this appearance:
      • FALSE: Never draw the focused rectangle.
      • TRUE: Always draw the focused rectangle when the control is focused.
      • BCGP_DEFAULT: Draw the focused rectangle only if the control has been activated by a keyboard.
    3. CBCGPButton: a new method EnableButton checks whether the button is focused and moves focus to the next parent dialog control before disabling it.
    4. CBCGPGroup has implemented BM_GETCHECK and BM_SETCHECK message processing for groups that have either a checkbox or a radio button.
    5. CBCGPDateTimeCtrl: a new method SetYearsRange specifies a valid range of the year values.
    6. CBCGPTreeCtrlEx: the following new methods simplify the tree item multiselection management:
      • GetSelectedItemsCount
      • GetSelectedItems
      • SetSelectedItems
    7. CBCGPWebView2Ctrl: added visual theme support for the control border.
  5. Graphics Manager
    1. The class CBCGPSVGImageList now includes the following color processing methods:
      • AdaptColors
      • ReplaceColors
      • InvertColors
      • InvertLuminosity
      • ConvertToGrayScale
      • MakeLighter
      • MakeDarker
      • Simplify
    2. CBCGPImage: added luminosity inverting support; a new optional parameter "bInvertLuminosity" (FALSE by default) was added to the class constructor and Load methods.
  6. MSAA and CodedUI Tests
    1. CBCGPColorButton: get_accValue returns a correct value when the color is not specified.
    2. Calendar and planner improvements and fixes:
      • Addressed issue with incorrect value and boundaries of the appointments with finish time at midnight.
      • Corrected the value returned by all-day appointments.
  7. Miscellaneous
    1. Evaluation version additions:
      • Starting this version, we decided to add x64 libraries and DLLs to the product evaluation. Therefore, if your application is X64-only, you can test a 30-day fully functional version of our product to see how easily you can improve your user interface as well as other functionalities!
      • The binary files are not included in the product setup anymore: you have to download the desired toolset(s) from the Integration Wizard.
    2. Integration Wizard: added support for ARM/ARM64 folders; if the ARM platform is selected, the product include and library directories will be added to VC++ platform directories.
  8. Examples and Samples
    1. The BCGPDigitalDashboard example now includes a demonstration of the gauge effects specific to each visual theme.
    2. BCGPGaugesDemo: added demonstrations of the gauge shape visual effects.
  9. Fixes
    1. CBCGPSVGImage: addressed the issue of incorrectly processing the negative value of H in the case of hsl or hsla colors.
    2. CBCGPSVGImage: the "visibility" attribute is processed correctly now in all cases. 
    3. CBCGPMenuButton: addressed issue with incorrect hit testing of the drop-down area in the high-DPI environment.
    4. CBCGPGraphicsManagerGdiPlus: addressed an issue with an incorrect size value returned by the GetTextSizeW method when the graphics are not initialized yet.
    5. Windows XP: fixed some bugs related to incorrect control rendering and non-optimal control layout, among other issues.
    6. CBCGPDBGridCtrl: fixed bug with incorrect sorting in the generated SQL statement.
    7. The issue with removing a currently highlighted item has been addressed in CBCGPTreeCtrlEx.
    8. The issue with removing a currently highlighted grid row has been addressed in CBCGPGridCtrl.
    9. CBCGPTreeCtrlEx: addressed issue with incorrect column widths upon DPI changing.
    10. CBCGPGridCtrl: addressed some issues with in-place edit controls.