BCGControlBar Professional Edition Version: 30.6. Released: 9/28/2020 Implemented WinAppDriver (Windows Application Driver) support. All accessibility methods were adapted for this new technology and starting this version you may use WinAppDriver for your applications automation and testing. Dialogs and Forms CBCGPPropertySheet: added support of the page swipe gesture. Now you can easily go to the next or previous page when your application is running in tablet or other touch-enabled system. Call new method CBCGPPropertySheet::EnablePageSwipeGesture to enable this feature. Please take a look at PropSheetDemo sample application to see this new feature in action. CBCGPPropertySheet: SetActivePageWithEffects method is a virtual now. MDI Windows and Tabs CBCGPMDIFrameWnd::EnableWindowsNavigator has a new, optional parameter 'pOptions'. This is a pointer to new CBCGPWindowsNavigatorOptions which allows to customize the Windows Navigator appearance. CBCGPMDITabParams and CBCGPRibbonCaptionMDITabsOptions classes have a new member 'm_InsertedTabPosition' - specifying where new MDI tab is inserted. Please take a look at MDITabsDemo sample application to see this feature in action. Tasks Pane and Toolbox CBCGPTasksPane: added 2 new virtual methods OnBeforeDrawTask and OnAfterDrawTask. Override these methods if you wish to customize specific task(s) appearance or prevent drawing some task(s). CBCGPTasksPane::RemoveAllTasks has a new, optional parameter 'bRedraw'. Chart Control CBCGPChartAdvancedFormula: added new moving average type MA_CUMULATIVE. CBCGPChartAdvancedFormula: added new methods SetOutputSeriesType and SetOutputSeriesCategory. By calling these methods you may specify a result series type and category. Added new class CBCGPChartMAENVFormula: implements "Moving Average Envelopes" for the Stock charts. CBCGPChartMACDFormula: added 2 result calculation types - VA_MACD - Moving Average Convergence/Divergence Oscillator (current calculation type) and VA_PPO - Percentage Price Oscillator (new). Added 2 new methods: SetValueType and GetValueType. CBCGPBaseChartStockSeries::StockSeriesType enumerator has a new member "SST_BAR_HLC": set it if you wish to display "High-Low-Close" values, but don't display "Open" values. CBCGPChartStockSeries: added Heikin-Ashi Candlesticks data calculation type. Please use a new enumerator StockChartType to specify the type (should be specified in the class constructor). CBCGPChartVisualObject: a new method SetOptimizedDiagramArea allows to optimize diagram's layout after one of axes moves inside/outside the diagram's area. Grid and Report Controls CBCGPGridColumnChooser: this class is exportable now and can be customized according to customer's needs. CBCGPGridCtrl: implemented ability to enable/disable Grid zooming by the mouse wheel (when Ctrl is pressed) or gesture zoom. EnableZoom and IsZoomEnabled methods were added. New method CBCGPGridCtrl::SetFilterBarText allows programmatically specifying a filter bar content. Controls CBCGPComboBox doesn't redraw itself anymore when control receives CB_SETCURSEL message and WPARAM contains an index of already selected item. If for some reason this improvement affects your application, just set a new global flag CBCGPComboBox::m_bOptimizedSelection to FALSE. CBCGPGroup: implemented ability to hide/show all controls located inside the group. Optionally, you may specify a text label which appears in the middle of group box when controls are hidden. Call new method CBCGPGroup::SetGroupControlsVisible to hide/show the controls. CBCGPEditListBox: a new method RemoveAllButtons removes all edit list buttons. CBCGPTabWnd: implemented new tab default position. In the previous product version, a new tab was automatically inserted to the right side (after all tabs). Starting this version, you can specify position by calling new CBCGPTabWnd method SetInsertedTabPosition. A new enumerator InsertedTabPosition describes where a new tab should be inserted: InsertedTabOnTheRight (default), InsertedTabOnTheLeft, InsertedTabAfterActiveTab or InsertedTabBeforeActiveTab. CBCGPDateTimeCtrl: implemented touch mode. Upon click/touch control, a popup date/time list will appear. Call new method SetTouchMode to enable/disable this mode. Please take a look at BCGPControls example to see this mode in action. CBCGPDateTimeCtrl: implemented ability to display a new date/time list popup window when user clicks drop-down button. DTM_DROPLIST flag was added to this control. A new class CBCGPDateTimeList implements touch-friendly date-time picker (see screenshot). This control can be created either as dialog/form child window or popup window. Please take a look at BCGPControls example to see this new control in action. MSAA and CodedUI Tests CBCGPButton: if description (text below label) is specified, get_accDescription method returns this text now. CBCGPCalendar: get_accValue returns a range of selected dates now (if multiple days selection is specified). CBCGPCalendar: added accessibility support to popup month picker window. CBCGPPropList: added accessibility support to commands area (optional list of command links located at control bottom). CBCGPScrollBar: improved accessibility support. CBCGPTasksPane: improved accessibility support. CBCGPRibbonPanelMenuBar: improved accessibility support. CBCGPDateTimeCtrl: improved accessibility support. Edit control Implemented ability to draw text with a syntax highlighting on the selected or marked areas (see screenshot). The following new methods were added to CBCGPEditCtrl class: EnableSyntaxHilightingOnSelection IsSyntaxHilightingOnSelection EnableSyntaxHilightingOnColorLine IsSyntaxHilightingOnColorLine EnableSyntaxHilightingOnHiliteMarkers IsSyntaxHilightingOnHiliteMarkers. Please take a look at EditorMarkers sample application to see this new feature in action. CBCGPEditCtrl: new virtual method OnGoToNextMarker allows to customize markers navigation behavior. Miscellaneous A new class CBCGPTextGaugeCtrl provides an easy way to add text gauge (CBCGPTextGaugeImpl) to the dialog or form view. All calls to lstrcpy were replaced with StringCchCopy (for Visual C++ 2008 or later). CBCGPTagCloud: implemented visual manager support. New methods SetVisualManagerTheme and IsVisualManagerTheme were added to this class. CBCGPPlannerManagerCtrl: implemented vertical scrolling during appointment dragging and time range selection. New methods EnableDragScroll and IsDragScrollEnabled were added to this class. Examples and Samples BCGPChartExample: added demonstration of new stock chart features (SST_BAR_HLC series type and "Heikin-Ashi Candlesticks"). BCGPCalendarDemo: added week number type demonstration. BCGPGanttDemo: demonstrates usage of new date/time list (see screenshot). BCGPGridExample: demonstrates usage of new date/time list (see screenshot). BCGPVisualStudioGUIDemo: added demonstration of syntax highlighting inside selected areas and colored lines (see screenshot). EditorMarkers: added demonstration of syntax highlighting inside colored areas (see screenshot). BCGPControls: this example has been fully redesigned (see screenshot). This example was unified with many samples and now it demonstrates functionality of most library controls. The following samples are not included in the product installation anymore: BreadcrumbDemo ComboBoxDemo EditBoxDemo GroupBoxDemo InfoBoxDemo ListBoxDemo ListCtrlDemo TreeCtrlDemo FrameCaptionDemo and MDITabsDemo: added demonstration how to specify a new MDI tab position. PropSheetDemo: demonstrates new "Page Swipe Gesture" feature. Fixes CBCGPBreadcrumb: keyboard focus is returning back to breadcrumb control when user clicks Esc in the place-editing mode. CBCGPCalculator: addressed issue with drawing icons in right-to-left mode. CBCGPCalendar and CBCGPPlannerManagerCtrl: fixed incorrect week number values at the end/start of the year in some specific cases. CBCGPColorDialog: addressed issue with losing color when user double-clicks the hexagon cell (located on the first page). CBCGPExplorerToolBar: addressed issue with layout when the pane was created below of the Ribbon bar. CBCGPDropDownList: fixed bug with incorrect row height when a custom (large-size) font was specified. CBCGPComboBox: addressed issue with incorrect drawing of drop-down list when combo box doesn't have items (is empty). CBCGPTreeCtrlEx: addressed issue with a row height calculation when control has large-size icons. CBCGPRibbonPaletteButton: addressed issue with drawing SVG icons. CBCGPDialog: the dialog is correctly processing SC_CONTEXTHELP system command now. CBCGPEditCtrl: addressed issue with using italic fonts. CBCGPGanttControl: addressed some issues with insertion of the new Gantt items. CBCGPEditCtrl: addressed some issues with displayed colored areas. CBCGPGridCtrl: addressed issue with non-contrast alternate colors in some visual themes. CBCGPMDIFrameWnd: addressed issue with incorrect enabling MDI tear-off frame when some modal dialog was launched from the Ribbon backstage view.