LMD VCL 2011 - What's New?

From LMD
Revision as of 17:32, 2 November 2010 by Fduch (talk | contribs) (LMD ShellPack)

Jump to: navigation, search

<< Back to Getting started page

[edit]

General

Support for IDEs and operating systems

Common new features

Shared Standalone Packs

LMD DockingPack

[*] Design-time behavior has been drammatically improved: designer hints has been disabled while splitter-moving to reduce flickers; default (useless in this case) designer mouse-moving of dock-panels has been disabled to reduce flickers; dragging dock-panels in the "Structure" Delphi's tree-view has been disabled to prevent panel's Parent change.

[+] New! Experimental feature. On the "LMD Docking" palette page "New dock-panel" item has been added. The item is not a simple component item. Dragging it over a docking site will initiate interactive (drag-dock-like) process of the new panel creation:

NewDockPanel.png

[+] New! "Drag panel content" mode has been added. In this mode the panel is immediatelly undocked and placed onto the floating site at the dragging start; then, the floating site form is dragged with the mouse instead of old semi-transparent blue rect. Don't worry, semi-transparent blue rect is still here, and used to highlight accepted positions :)

MovePanelContent.PNG

[+] New! Animation of hotspots and blue rect has been added. Alpha (fading) and bounds can be animated.

[+] TLMDDockZone.ResizeKind property, accessible at run-time, has been added. In addition to default proportional resizing defined by zrkProportional value, new zrkFixed value can be used to exclude some zones from proportional resizing algorithm.

[+] TLMDDockZone.Index property has been made read-write, so its now possible to set the index to specify the order of a child zone inside its parent zone. The Indexes of child zones determine they visual order in its horz-alignment or vert-alignment parent zone, or the visual order of the corresponding tabs in tabbed parent zone.  

[+] TLMDDockZone.Width and TLMDDockZone.Height properties has been made read-write, so its now possible to programmatically setup sizes of children zones inside a horz-alignment or vert-alignment parent zone. Due to proportional zones resizing it can be still hard to set required sizes of several child zones, because assigning at each iteration the size of a child zone will correct sizes of other child zones within the same parent; so sizes, set on previous iterations will be changed. To solve this problem TLMDDockZone.SetChildrenSizes method has been added, which allows to set sizes of all children at ones.

[-] Bug #775 has been fixed. Now OnClick is fired when you click dock-panel.

[-] Parentless mode for docking panels has been implemented. Now a panel can have window handle even if it has no parent (like Delphi's frames). This should prevent "Control has no parent" VCL exception in some advanced cases, thus, simplifying the work with LMD-DockingPack.

[-] The bug with unability to popup panel's HeaderMenu in a case when a single panel is docked into a floating site (thus, panel's header is not visible) has been fixed.  Now it is possible to popup the menu by right clicking on a window caption of a single-panel floating site.

[+] Docking pack has been made more consistent with VCL ActiveControl concept. Also, the issue, with several active panels (in case of floating panels) visible at a time, has been fixed. Now, a panel is painted as active, only, when its parent form is active and it contains form's ActiveControl.

[+] New! VS 2010 style has been implemented: antialiased rounded corners, antialiased panel header buton images, hot tab state, custom floating form border. Corresponding TLMDDockVS2010Painter class implements this style:

VS2010Style.png

[*] TLMDDockPersister component has been renamed to TLMDDockManager. SiteCount and Sites[i] properties has been added to allow to iterate all existing sites (including dynamically created floating sites). OnCreateFloatingSite/OnDestroyFloatingSite events has been added to allow to configure floating sites at run-time. 

[*] Style related properties has been moved from panel/site to TLMDDockManager. Also it is now possible to choose the style at design-time. Supporting this concept, new TLMDDockManagerPainter class has been introduced. This class implements a proxy painter that uses currently selected in the docking manager style (and customized style settings). Now, this class becomes a default painter class.

LMD ThemePack

Gradient theme renderer

[+] Explicit methods SaveColorSchemeTo(File/Stream/XML) added
[+] UseCache property added. This property allows to turn off using cache.
[+] Modified property added.
[+] Office2010-like theme added.

Gradient theme editor

Now you have a tool for quick editing of gradient themes:

Image:te_preview_small.png

See description and tutorial movies here: http://wiki.lmd.de/index.php/LMDThemes_Editor.

LMD-Tools

Main Controls

Grid Controls

LMD ElPack

[+] Added variables for TElDbLabel, TElDbHTMLView

LMD IDE-Tools

LMD ShellPack

[+] TLMDShellList. Added theme support for header
Tlmdshelllist.png

Changes/Enhancements since initial LMD VCL 2010 release

Archive