View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0001847 | JEDI VCL | 00 JVCL Components | public | 2004-06-09 21:50 | 2004-10-04 11:50 |
Reporter | Tasler | Assigned To | remkobonte | ||
Priority | normal | Severity | feature | Reproducibility | always |
Status | resolved | Resolution | fixed | ||
Product Version | |||||
Target Version | Fixed in Version | 3.00 BETA 2 | |||
Summary | 0001847: DotNet Docking - DoAutohideControl, DoUnAutohideControl | ||||
Description | Hi coders In DotNetDocking is function DoAutoHideControl, sample code is here TJvDockVSNETPanel(lbDockServer1.LeftDockPanel).DoAutoHideControl(IndexForm); but there is missing opposite function. Please add function like DoUNAutohideControl to the DotNetDocking, or modify DoAutohideControl as something like this DoAutohideControl(Control : TControl; Visible : Boolean); It is serious problem work with autohided forms, because several function doesn't work when form is in Autohide mode. It is almost impossible to return from Autohide mode and stay normally docked programatically (without description of many DotNet docking functions). Cheers | ||||
Tags | No tags attached. | ||||
duplicate of | 0001844 | resolved | Dot Net Docking |
|
To resolve this issue as fast as possible, please provide an example implementation of a DoUnAutohideControl method. Without it, it might be a long time before anyone has time to handle this. |
|
I found it! To unhide it I have to call TJvDockVSPopupPanel(SomeForm.HostDockSite).DoAutoHideControl(SomeForm); |
|
Is this to say that the functionality is already there? Can we close this report? |
|
hi, some my tips and facts about this issue Source code of the original function DoAutoHideControl, where is the problem procedure TJvDockVSNETPanel.DoAutoHideControl(Control: TWinControl); begin if Align = alNone then DoShowControl(Control) else DoHideControl(Control); end; Example of use (This code can be used in MSDN2002 example) (please dock contents form to the right, autohide = off) when you call DoAutoHideControl like this TJvDockVSNETPanel(lbDockServer1.RightDockPanel).DoAutoHideControl(ContentsForm); form is autohided programatically correctly, but only when you call this function at first time. Next time, it will only add new VSPane, and not to unhide this form. As you can see in DoAutohideControl implementation there is condition. if Align = alNone then DoShowControl(Control) else DoHideControl(Control); This function should toggle between DoShowControl and DoHideControl based upon current form state, but it doesn't. In our example will be executed DoHideControl at first and what is bad also in next time of calling DoAutoHideControl... Problem is in DoShowControl, it has condition which cause problems. code snippet: if Self is TJvDockVSPopupPanel then begin do some form unhide code... end; so if you want to run "form unhide code" you have to use: TJvDockVSPopupPanel(SomeForm.HostDockSite).DoAutoHideControl(SomeForm) and NOT TJvDockVSNETPanel(lbDockServer1.RightDockPanel).DoAutoHideControl(ContentsForm) I think it isn't clear and correct, because "hiding" works when you call TJvDockVSNETPanel(lbDockServer1.RightDockPanel).DoAutoHideControl(ContentsForm) and doesn't when you call it again. So I showed you some way, what do you think peter? Maybe you have to change DoAutoHideControl, or just simple add DoUnAutoHideControl like this procedure DoUnAutoHideControl(Control : TControl); begin if (Control.HostDockSite is TJvDockVSPopupPanel) then TJvDockVSPopupPanel(Control.HostDockSite).DoAutoHideControl(Control) end; |
|
Reminder sent to peter3 If you have time to look at this one, I would appreciate it. Cheers Olivier |
|
I'm not sure what to do with this. Some testing seems to indicate that the proposed fixes doesn't work 100% either. For example, I often get a window without content when I use the code provided. I am no expert in the docking components and I'm not able to determine how to resolve this issue. Unless someone provides a working fix, I don't see how I am going to fix it. Sorry I can't be of more help. |
|
Duplicate, see 0001844. |
Date Modified | Username | Field | Change |
---|---|---|---|
2004-06-09 21:50 | Tasler | New Issue | |
2004-06-10 00:38 |
|
Note Added: 0004520 | |
2004-06-10 01:12 | Tasler | Note Added: 0004522 | |
2004-06-10 01:34 |
|
Note Added: 0004523 | |
2004-06-10 01:47 | Tasler | Note Added: 0004525 | |
2004-06-10 01:53 |
|
Status | new => feedback |
2004-08-03 07:34 | obones | Note Added: 0004894 | |
2004-08-04 00:24 |
|
Note Added: 0004919 | |
2004-10-04 11:49 | remkobonte | Relationship added | duplicate of 0001844 |
2004-10-04 11:50 | remkobonte | Duplicate ID | 0 => 1844 |
2004-10-04 11:50 | remkobonte | Status | feedback => resolved |
2004-10-04 11:50 | remkobonte | Fixed in Version | => 3.00 BETA 2 |
2004-10-04 11:50 | remkobonte | Resolution | open => fixed |
2004-10-04 11:50 | remkobonte | Assigned To | => remkobonte |
2004-10-04 11:50 | remkobonte | Note Added: 0005296 |