|  | 
| Deadlock with nested docking pane managers | 
| Post Reply   | 
| Author | |
| gorski   Newbie     Joined: 06 July 2006 Location: Poland Status: Offline Points: 6 |  Post Options  Thanks(0)  Quote  Reply  Topic: Deadlock with nested docking pane managers Posted: 20 August 2008 at 4:30pm | 
| 
   I want to create docking pane manager in the dialog that is the docking pane of another docking pane manager.  If any pane of the interior pane manager is active (and has focus) and I try to switch panes of the exterior pane manager application becomes deadlocked (100% of CPU is used, application not responding). Why nested pane managers behave that way? Thanks for any suggestions. | |
|  | |
| Oleg   Senior Member   Joined: 21 May 2003 Location: United States Status: Offline Points: 11234 |  Post Options  Thanks(0)  Quote  Reply  Posted: 21 August 2008 at 1:52am | 
| Hi, Attach sample project. Problem can be in your code. | |
| 
     Oleg, Support Team CODEJOCK SOFTWARE SOLUTIONS | |
|  | |
| TonyI   Newbie   Joined: 17 March 2007 Location: Australia Status: Offline Points: 1 |  Post Options  Thanks(0)  Quote  Reply  Posted: 25 August 2008 at 10:11pm | 
| 
   I've run into this as well. In my situation, the dialog loop gets stuck 
 searching for the nested control.  This is observable by tracing messages for the dialog, where the dialog keeps looping through its children sending each WM_GETDLGCODE. See MSDN Article: PRB: Child CPropertySheet Hangs If Focus Is Switched Q149501 for additional information. In my situation, the solution was to ensure all 'ancestor' windows of the control up to the dialog have the WS_EX_CONTROLPARENT style set. I hope this helps... | |
|  | |
| rdhd   Senior Member     Joined: 13 August 2007 Location: United States Status: Offline Points: 951 |  Post Options  Thanks(0)  Quote  Reply  Posted: 12 September 2008 at 8:51am | 
| 
   Toni,
 Are you adding WS_EX_CONTROLPARENT to the task panel? Are you adding the style to the dialog to (up to and including the dialog). I have been adding it to the task panel and removing it from the task panel depending on whether I have any dialogs inserted (in groups) in the panel. That was working but now I have a case where I am removing one dialog and there is another in the panel and the CJ call to GetNextDlgTabItem in CXTPTaskPanel::GetNextControl still causes a lockup. So I remove the style before I call any method to remove a group and then add the style back when the group is removed depending on if there is anything left in the panel. From your reply it sounds like I should be adding the style to the dialogs I am inserting into the panel just in case I have a dialog that does not have that style. | |
|  | |
| Post Reply   | |
| Tweet | 
| Forum Jump | Forum Permissions  You cannot post new topics in this forum You cannot reply to topics in this forum You cannot delete your posts in this forum You cannot edit your posts in this forum You cannot create polls in this forum You cannot vote in polls in this forum |