View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0001509 | JEDI VCL | 00 JVCL Components | public | 2004-03-21 01:56 | 2004-03-27 04:59 |
Reporter | anonymous | Assigned To | user72 | ||
Priority | normal | Severity | minor | Reproducibility | always |
Status | resolved | Resolution | fixed | ||
Product Version | |||||
Target Version | Fixed in Version | ||||
Summary | 0001509: JVDocking + VSNETStyle fails to load layout correctly | ||||
Description | Somewhere between current CVS and JVCL Beta1 something has gone awry with the loading of layout under this situation. It appears to correctly save the information to an Inifile or the XMLStorage I'm using, however when running the app again, the loading just results in one of the toolwindows appearing, at a rediculous size (about 1024x768, but not exactly) without fail, and none of the other windows appearing. I can still show the toolwindows and dock them correctly. Up to JVCL Beta1 this worked fine. I have even downloaded the official JVCL Beta1 release and installed that in place of my CVS copy, and the issue disappeared again. I'm unsure where the issue is introduced, I have tried regressing the JvDocking code files (at least the ones I'm aware of) back to their beta1 forms, and recompiling/installing JVCL but the issue remains. | ||||
Tags | No tags attached. | ||||
|
I should note I have tried this on Two different WinXP boxes. |
|
How current is current CVS? |
|
Anonymous CVS of about an hour ago? But it's been going on for several days. By the way this is my report, Decided I'd better register. edited on: 03-21-04 02:35 |
2004-03-21 02:43
|
TestJVDocking.zip (402,605 bytes) |
|
I have added a file containing source + .exe file that exhibits the same issue. Docking works, the ini file is saved with layout info but it fails to load correctly. To spawn the dockable toolwindow form hit the last button (One on the extreme right) of the tool bar. |
|
THis is caused by the recent change from using TIniFile to using TMemIniFile. You (we) need to explicitly flush and reload the file. Fix this issue by doing the following: In JvDockControlForm.pas, SaveDockTreeToFile add: ... JvAppStorage.Reload; SaveDockTreeToAppStorage(JvAppStorage); finally JvAppStorage.Flush; ... and in LoadDockTreeFromFile add: ... JvAppStorage.Location := flCustom; JvAppStorage.FileName := FileName; JvAppStorage.Reload; ... That should fix it. I will do the same changes in CVS |
|
Hrm, I believe I've made the relevant changes however the same issue continues. This issue also occurs if you (for example) put an XMLStorage component on your form then in the formshow and formclose events put FormShow: LoadDockTreeFromAppStorage(XMLStorage); FormClose: SaveDockTreeToAppStorage(XMLStorage); edited on: 03-21-04 03:35 |
|
The problem with XMLStorage is a separate issue. It seems it is caused by the fact that FCurrentNode is used to find the path when writing data. This results in the FormNames node containing a single item. To fix, modify in JvAppXMLStorage.pas: TJvCustomAppXMLStorage.GetNodeFromPath ... begin NodeList := TStringList.Create; if StartNode <> nil then Node := StartNode else Node := FXML.Root; There might be other issues with the XML storage, I haven't checked but this modification fixes this issue at least. You probably need to regenerate the xml file to make it work. Regarding the changes to the SaveDockTreeToFile it works fine for me. edited on: 03-21-04 09:22 |
|
Apologies for the delay, work has been keeping me away from this. I tried making the modifications to the inifile storage to no avail, however the XMLStorage does now work. Alas the program now takes anything from 20 to 90 seconds to display. This seems to be coming from the Loading of the dock tree, rather than the XMLStorage loading. I'm updating the CVS code as we speak and will add another note if the issue remains. |
|
Having updated to the latest CVS and regenerated the XML file again it now correctly saves and loads without taking an excessive amount of time. |
|
So can we close this issue now? |
|
Yeah. It seems to be all solved now, thanks :) |
Date Modified | Username | Field | Change |
---|---|---|---|
2004-03-21 01:56 | anonymous | New Issue | |
2004-03-21 02:00 | anonymous | Note Added: 0003408 | |
2004-03-21 02:11 |
|
Note Added: 0003409 | |
2004-03-21 02:34 | marajin | Note Added: 0003411 | |
2004-03-21 02:35 | marajin | Note Edited: 0003411 | |
2004-03-21 02:43 | marajin | File Added: TestJVDocking.zip | |
2004-03-21 02:44 | marajin | Note Added: 0003412 | |
2004-03-21 03:01 |
|
Note Added: 0003413 | |
2004-03-21 03:01 |
|
Status | new => assigned |
2004-03-21 03:01 |
|
Assigned To | => user72 |
2004-03-21 03:05 |
|
Status | assigned => feedback |
2004-03-21 03:31 | marajin | Note Added: 0003414 | |
2004-03-21 03:35 | marajin | Note Edited: 0003414 | |
2004-03-21 08:50 |
|
Note Added: 0003420 | |
2004-03-21 09:22 |
|
Note Edited: 0003420 | |
2004-03-26 08:19 | marajin | Note Added: 0003479 | |
2004-03-26 08:27 | marajin | Note Added: 0003480 | |
2004-03-26 10:44 |
|
Note Added: 0003481 | |
2004-03-26 10:49 | marajin | Note Added: 0003485 | |
2004-03-27 04:59 |
|
Status | feedback => resolved |
2004-03-27 04:59 |
|
Resolution | open => fixed |