View Issue Details
|ID||Project||Category||View Status||Date Submitted||Last Update|
|0003447||JEDI VCL||00 JVCL Components||public||2006-01-18 01:25||2006-01-24 01:41|
|Target Version||Fixed in Version||3.20|
|Summary||0003447: JVCL Docking: wrong dynamic frame when dragging over a Custom dock site with alClient + FIX|
|Description||When one is dragging a control to dock it into a custom dock area a frame indicating where the control will be docked is absolutely wrong.|
The problem is in a unit JvDockControlForm in a method
TJvDockPanel.CustomPositionDockRect. It ignores a possibility of alClient aligning of the custom site. As a result ARect variable remains uninitialized and contains garbage.
In this method in the main CASE statement after a clRight branch add:
ARect.TopLeft := ClientToScreen(Point(0, 0));
ARect.BottomRight := ClientToScreen(Point(Width, Height));
As of version 1.73 2005/09/15 it's line no 3940.
|Additional Information||There are many other places in the code where such CASEs with only alLeft|Right|Top|Bottom are mentioned. It can be a possibility of many bugs when Aligh is alClient because there is not code to process it.|
Bud finding advice:
A primary test would be to guard all this places with Assert that checks for the Align in [alTop..alRight].
|Tags||No tags attached.|