
Adds new polar bar chart.
Features
- Chart Control
- Simplified chart text label customization process: new methods OnFormatDataPointLabelText and OnFormatDataPointTableText were added to CBCGPChartVisualObject class.
- Chart data table: improved table cells horizontal scrolling (zoom/pan modes).
- Added new flags specifying thumbnail drawing options:
- BCGP_CHART_THUMBNAIL_DRAW_SERIES_NAME
- BCGP_CHART_THUMBNAIL_DRAW_OBJECTS
- BCGP_CHART_THUMBNAIL_NO_DRAW_AXIS_LABELS
- Added a new type of polar chart - polar bar chart. The range (width) of a bar is set in degrees using Y1 component. The type of polar chart can be specified using CBCGPChartPolarSeries:SetPolarType(PolarSeriesType type, BOOL bRedraw = TRUE) method where type can be either PST_NORMAL or PST_BAR.
- Polar and radar charts: improved diagram layout - the chart diagram space is used more optimal now.
- Pyramid and funnel charts: improved hit-testing of the chart elements, such as data points.
- Gauge Controls
- CBCGPTextGaugeImpl: implemented a "trailing sign" support. Usually, "Trailing sign" is a small-size character located right of text and it's used for some indication such as percentage or temperature. New method CBCGPTextGaugeImpl::SetTrailingSign allows to specify the trailing sign text and appearance.
- CBCGPStaticGaugeImpl::StartFlashing has a new optional parameter nCount which specifies a number of the flashings. If this parameter is 0 (default), the gauge flashing will be infinite.
- CBCGPImageGaugeImpl: added DPI support. The class constructor and SetImage method have a new, optional parameter bScaleByDPI. Set it to TRUE if you wish to make gauge DPI-aware.
- CBCGPColorIndicatorImpl: added DPI support for the default-size color indicators. The class constructor has a new, optional parameter bScaleByDPI.
- CBCGPCircularProgressIndicatorImpl: added "pinned percentage sign" support. To enable this feature, you have to specify new member of CBCGPCircularProgressIndicatorOptions structure m_strProgressLabelTrailingSign.
- CBCGPCircularProgressIndicatorImpl: new methods FlashProgressLabel and FlashLabel allow to make the text labels flashing.
- Grid and Report Controls
- Added ability to include groups to the filtering results: CBCGPGridCtrl:EnableFilterBar has a new optional parameter bIncludeGroups.
- Improved grid row height API: new methods SetCustomRowHeight and SetCustomLargeRowHeight were added to CBCGPGridCtrl class.
- Controls
- CBCGPSliderCtrl: added new virtual method OnPosChanged. This method is called after thumb position changing.
- CBCGPListCtrl: added LVM_SORTITEMSEX message support. By default, the control is using LVM_SORTITEM sorting message, but if you wish to use LVM_SORTITEMSEX instead, you've to call a new method CBCGPListCtrl::EnableSortEx with parameter bEnable = TRUE.
- CBCGPGroup: added new virtual method GetCheckBoxSize. Override this method if you wish to create a group checkbox with a custom size.
- Graphics Manager
- CBCGPEllipse: new method PtInEllipse tells whether a specified point is located inside the ellipse.
- CBCGPImage: added DPI support. The class constructor has a new, optional parameter bScaleByDPI. Set it to TRUE if you wish to make an image DPI-aware.
- CBCGPGraphicsManager: improved drawing of 3D Funnel slice.
- Edit control
- CBCGPEditCtrl::SetCaret method has a new, optional parameter bCleanUpSelection. If you set this parameter to TRUE, the current selection will be cleaned-up.
- CBCGPEditCtrl::ReplaceAll implementation has been significantly improved: replacing mechanism is much more fast and efficient now.
- Gantt Chart
- CBCGPGanttView: added a new, virtual method OnChartItemResizing. This method is called by the framework when a Gantt chart item is being resized.
- Added new registered message BCGM_GANTT_CHART_ITEM_RESIZING. This message is sent to owner of Gantt control when the chart item is being resized.
- CBCGPGanttChart: improved high-DPI support. All Gantt chart elements are correctly scaled now.
- New method CBCGPGanttChart::SelectAllItems selects all Gantt chart items.
- CBCGPGanttControl::SetProgressColumnIndex has a new, optional parameter bDisplayProgressBar. If this parameter is TRUE, a progress cell will be displayed with background progress bar.
- CBCGPGanttControl: a group is rendered with a progress indication now.
- Miscellaneous
- CBCGPAnimationManager: new method GetFlashAnimationStep returns a current flash animation step.
- CBCGPCalculator: '=' button is located now in the bottom-right corner and has a special look.
- Examples and Samples
- BCGPGanttDemo: added demonstration of the grid cell with background progress indicator.
- BCGPGaugesDemo: added demonstration of pinned percentage sign in circular progress gauge and DPI-scaling in static gauges (image and color indicators).
- ListCtrlDemo: demonstrates a new, extended sorting.
- TreeCtrlDemo: added demonstration of the filter bar with group support.
- BCGPChartExample: implemented group thumbnail views and added 3 new views: "Polar Bar", "Pyramid with Grouped Smaller Slices" and "Funnel with Grouped Smaller Slices".
Fixes
- Fixes
- CBCGPButton: addressed issue with incorrect rendering when button has a description but doesn't have a text label.
- CBCGPCalendar: addressed issue with calling SetMinDate and SetMaxDate before control creation.
- CBCGPBreadcrumbImpl: addressed some issues with control and item menus appearance in the right-to-left mode.
- CBCGPStatic: addressed issue with drawing control with SS_ETCHEDFRAME style.
- CBCGPLightBoxDialog: addressed issue with activation by the mouse click when a top-level frame is inactive.
- CBCGPGroup: addressed issue with displaying a group name when a text contains the ampersand character.
- CBCGPMessageBox: addressed issue with calculating size of the custom button with long text.
- CBCGPPropertySheet: when SetIconsList method is called for the 2-nd time, the previously created icons list is destroyed now.
- CBCGPSVGImage: addressed some issues with reading and applying linear/radial gradients.
- CBCGPNumericIndicatorImpl: addressed issue with incorrect clipping during a digit transition effect when gauge is placed inside the visual container or created as sub-gauge.
- CBCGPLinearGaugeImpl: a default size of gauge pointer is DPI-aware now.
- CBCGPEditCtrl: addressed some issues with selection in GoToLine and GoToMarker methods.
- CBCGPGridCtrl: addressed issue with frozen columns created along with merged cells.
- CBCGPEditCtrl: addressed issue with vertical scrolling by the mouse wheel in case when the whole text fits the editor page.
- CBCGPInfoBoxRenderer: addressed issue with a custom icon with non-standard (different from 32x32) size drawing.