Hi!
I am just getting acquainted with the Metro-style controls. Several enhancements come into mind almost immediately:
- Publish common VCL properties, e.g. Align, DragCursor, DragKind, DragMode, and events, e.g. OnContextPopup, OnDragDrop, OnDragOver, OnEndDrag, OnStartDrag, OnEndDock, OnStartDock.
- I was about to suggest to make TAdvMetroTile a descendant of TWinControl, but I notice that it already is. But it would be nice to convince the Delphi IDE to accept TAdvMetroTile as a parent for other controls, especially TLabel and TAdvMetroButton. (In Delphi XE2, even if I place a TButton inside the TAdvMetroTile, the IDE still makes TForm or TPanel the parent, not TAdvMetroTile.)
- If that is not feasible (e.g. Delphi IDE won't allow it, because it has the parentable controls hard-coded), perhaps adding a set of four published properties TopLeftLabel, TopRightLabel, BottomLeftLabel, BottomRightLabel: TCustomLabel would to the trick? If there were properties for icons, even better. I would like to have a tile "E-mail" which
would show the number of unread e-mails in the top-right corner and the
sender, subject and date of the newest unread e-mail in the bottom-left
corner.
- An updated documentation would be nice. My version (something like a month old) completely omits TAdvMetroTile and a number of events from the other Metro components.
- Properties you refer to will be added in the next update2) In next update, you'll be able to use the tile as a container for other controls
Thats good news!