I would like to offer the suggestion that the report control items be
unified with the property grid items of a similar nature (i.e. the
controls that are in-place-activated - CXTPReportInplaceControl and
CXTPPropertyGridItem).
The property grid offers a whole assortment of fully-functional and
very useful built-in items that are really needed in, but missing from,
the Report Control (e.g. date pickers, masked edits, color pickers,
font picker, file pickers) because the chain of derivation is
different, the functionality has to be duplicated by hand.
For example, the existing hierarchy is:
class CXTPReportInplaceEdit : public CEdit, public CXTPReportInplaceControl;
class CXTPPropertyGridInplaceEdit : public CXTMaskEditT<CEdit>;
Is there a way to factor out all of the common functionality into a
common masked editing class? (in the final analysis, they really are
very similar - just custom drawing/validating controls in a rectangular
section of a the "parent" control)
I will freely admit I haven't looked very deeply at the reasons for the
way the classes hierarchies are setup (and I'm sure there is a good
reason for the way it is), but it would be very nice to be able to
write a single custom-control, and then be able to multiply derive from
something else (e.g. CXTPReportInplaceControl, or a
"CXTPPropertyGridInPlaceControl" type class) to add it to the report
control, property grid, or on to a toolbar.
If you think I'm out to lunch with the above suggestion, I'd really
appreciate having these items (i.e. date pickers, masked edits, color
pickers, font picker, file pickers - especially date pickers) added to the list of built-in report control items.
Just my two cents worth...
Warren
|