Planner (Calendar)
control
(
see
screenshot
):
The calendar control has everything you need to include in your application a
sophisticated scheduling and appointment tool. It has the following base
features and each feature can be customized to suit your needs:
-
Five different views: daily, 5-days work
week, weekly, monthly
Appointment and scheduling
-
Appointment reminders
-
Recurring appointments
-
Concurrent appointments
-
Events
-
Integrations with the date picker control.
You can select a range of days and show them on the daily,
weekly or monthly view.
-
Copy/Paste operations
-
Full Drag&Drop support (you can drag
appointments within a day or drop them on the date picker
control).
-
Printing support
The following new classes were added:
-
CBCGPPlannerManagerCtrl:
implements calendar interface. Allows to add/update/remove
appointments and show them in the various views such as
daily view or weekly view.
-
CBCGPPlannerManagerView:
CView-derived class with embedded
CBCGPPlannerManagerCtrl. Simplifies calendar usage in MFC
document-view architecture.
-
CBCGPAppointment:
basic appointment class. This object stores start/finish
time, description and other base properties.
-
CBCGPAppointmentBaseStorage:
class is an abstract class,
which defines a set of generic operations that must be
implemented in order to store or load appointments to/from
any persistent storage, like binary file or database.
Currently the library provides you with CBCGPAppointmentStorage
class which implements memory
storage.
-
CBCGPRecurrenceBaseRule
is the base class that defines interface that should be
implemented by custom rules. The library provides some
recurrence rules such as CBCGPRecurrenceRuleDaily, CBCGPRecurrenceRuleWeekly
, CBCGPRecurrenceRuleMonthly,
CBCGPRecurrenceRuleYearly
Please take a look at the new example
BCGPCalendarDemo
to see this control in action.
Grid
Control
(
see
screenshot
):
The grid control provides you with the following features:
-
Unlimited number of columns and rows
suitable for visual representation of any two dimensional
table
-
Support for all standard data types
(VARIANT)
- Built-in data base support. The simple and
flexible API allows to show a table using few lines of code
and a developer is not required to have any special
knowledge in Data Base programming. The grid has the
following support for data-sources:
Also, a developer can easily add support for own data source.
- Support for custom data types. You can
derive a class from the base "grid item" and provide custom
editing and rendering of custom items.
- Ability to change the item type on the fly
- In-place editing
- Sorting by single column
- Sorting by multiple columns
- Ability to organize grid columns: you can
show, hide columns and change columns order. The simple MS
Office-like Fields Chooser is provided out of the box.
- Ability to change sorting type and sort
columns at runtime
- Auto grouping feature. When this option is
enabled, the grid control automatically creates collapsible
items by the "key" column.
- Single and multiple row selection.
- Copy/Paste operations
- Integration with MFC document/view
architecture.
- Support for Drag & Drop
- Support for printing and print preview
The following new classes were added:
- CBCGPGridCtrl: implements base grid interface
- CBCGPGridRow: grid control row
-
CBCGPGridItem: grid control item. Allows to display/edit several
types of data such as number, string memo and other.
-
CBCGPGridColorItem, CBCGPGridDateTimeItem, CBCGPGridCheckItem
, CBCGPGridURLItem: out of the box grid items,
that implement color picker, date/time picker, check item and hyperlink
controls.
-
CBCGPGridView: the CView-derived class with embedded CBCGPGridCtrl.
Simplifies grid usage in MFC document-view architecture.
-
CBCGPDBGridCtrl: the base abstract class that defines the interface
for easy integration of the grid control with different data sources. The
library implements three specific classes for working with ODBC, ADO and DAO
data providers - CBCGPODBCGridCtrl, CBCGPDAOGridCtrl
, CBCGPADOGridCtrl. If you need to integrate the
grid control with a custom data source, just derive your class from
CBCGPDBGridCtrl and implement the required methods.
Please take a look at the new examples GridCtrlDemo
and BCGPDBGridDemo to see this
control in action.
Report
Control
(
see
screenshot
):
The report control allows you to create complex reports in Microsoft Office
Outlook style. This control has the following features:
-
Unlimited number of columns
-
Single and multiple column sorting
-
Ability to "flag" a record.
-
Auto grouping (like grouping "by
conversation")
-
Nested grouping
-
Single and multiple row selection
-
Copy to Clipboard
-
Support for Drag&Drop
-
Printing suppor
The following new classes were added:
-
CBCGPReportCtrl: extends the functionality of the grid control and
provides you with the easy way to create reports in Microsoft Outlook
style. The report control uses custom row and item objects to achieve this
goal.
-
CBCGPReportView: CView-derived class with embedded CBCGPGridCtrl.
Simplifies grid usage in MFC document-view architecture.
Please take a look at the new example ReportDemo
to see this control in action.
Popup
(Desktop Alert) Control
(
see
screenshot
):
Microsoft Office-style popup control allows to display short-time messages. In
opposite to the standard message box, this window doesn't require from the user
to close it by clicking "Ok" button and it automatically disappears after short
time. The control is fully customizable and a developer can tune its look and
functionality by the easy way:
- Content can be created from an user-defined dialog
resources or it can be automatically generated from given
text and icon.
- Various looks: Office 200/XP/2003, MSN Messenger and
more.
- Various animation types: fade, slide and unfold.
- Semi-transparent background.
- Custom events.
The following new classes were added:
-
CBCGPPopupWindow: implements the functionality of a modeless dialog
which appears on the screen to inform the user about some event.
-
CBCGPPopupDlg: the base class for an user-defined dialog, that can
be placed on the popup window.
Please take a look at the new example PopupDemo
to see this control in action.
Calendar
(Date Picker) Control
(
see
screenshot
):
The date picker control was totally redesigned and now it has the same look as
Microsoft Office 2003 date picker. Also, the following New features: have been
added:
- Show multiple months
- Integration with the new Planner control (drag-n-drop
appointments, show days with appointments with the bold font,
synchronization between Planner and Date Picker)
- Month/year picker
The new class CBCGPCalendar
has been added. The class CBCGPCalendarBar
is kept for the backward compatibility, but we suggest to
use the new class instead.
CBCGPVisualManager has the new virtual method: GetCalendarColors.
Override this method to customize the calendar appearance.
Updated Visual Manager:
CBCGPVisualManager class now supports visualization of new controls. The
following new virtual methods have added:
-
Popup window:
- OnFillPopupWindowBackground
- OnDrawPopupWindowBorder
- OnDrawPopupWindowCaption
- OnErasePopupWindowButton
- OnDrawPopupWindowButtonBorder
-
Calendar control: GetCalendarColors
-
Day planner
- OnFillPlannerCaption
- OnFillPlanner
- GetPlannerHourLineColor
- OnDrawPlannerTimeLine
-
Grid control:
- OnDrawGridExpandingBox
- OnFillGridHeaderBackground
- OnDrawGridHeaderItemBorder
- GetReportCtrlGroupBackgoundColor
Updated
Property List:
- Added ability to mark the modified properties by the bold font: the
following new methods have been added: MarkModifiedProperties,
IsMarkModifiedProperties and ResetOriginalValues.
-
Added support for in-place tooltips. Now, if
there is no enough space to show the property name or value,
the tooltip is displayed in the same place as text, instead
of the position under the mouse cursor. The new method
'AlwaysShowUserToolTip' allows to display the custom tooltip
under the mouse cursor.
- Double click on CBCGPPropList's columns splitter adjusts the left/right
column widths in 50/50 proportion.
Miscellaneous:
- Added Microsoft Active Accessibility support for CBCGPTasksPane and
CBCGPPropList controls.
- The library is fully 64 bit-compatible now.
- The Resource Smart Update feature supports the context menus now: if the
context menu resource was changes, the library automatically restores the
changes and new items are correctly shown in context menus.
- CBCGPTabWnd has the new visual style: STYLE_3D_ROUNDED_SCROLL. This style
allows to use the new VS 2005-style tabs in MDI Tabs Window.
- DlgBars sample demonstrates now how to embed a CBCGPMenuBar object into a
dialog.
- CBCGPMDIChildWnd has the new virtual function: CanShowOnWindowsList.
Override this method in your CBCGPMDIChildWnd-derived class and return FALSE
if you don't want to see the MDI child window in the list of windows in the
"Windows..." dialog.
- CBCGPEditCtrl has the new virtual method: OnFillOutlineArea. You can
override this method to customize the edit control's appearance.
- CBCGPURLLinkButton has new attributes:
- m_bMultilineText: allows to display a multi-line text in the hyperlink
control
- m_bAlwaysUnderlineText: TRUE if always underline the hyperlink text, FALSE
- underline only when control is highlighted.
- m_bDefaultClickProcess: TRUE - open the default shell command, FALSE -
fire BN_CLICKED message to the parent window.