![]() |
Panes locks up and does not let user click on it |
Post Reply ![]() |
Author | |
DevDon ![]() Newbie ![]() Joined: 12 June 2007 Status: Offline Points: 18 |
![]() ![]() ![]() ![]() ![]() Posted: 02 June 2008 at 2:07pm |
Hi
I have a Vc++ application . It has 6 panes in main window .
All these panes are attached to each other . covers entire window area .
If I click on caption bar of docked panes ,It undocks them , starts showing close button on right top corner .All 6 of them still connected .
after this if i try clicking inside pane , It does not accept those clicks .
also It does not let me switch between 6 panes . when they are undocked
why ?
![]() I was able to do this before with older version .
One thing I observed is ,After undocking panes , if I detach and move them to different location it let me click inside pane and accepts clicks.
What can be the reason Please advise.
How can I switch between 6 panes when they r connected and undocked.
Please help.
|
|
Developer~
|
|
![]() |
|
Oleg ![]() Admin Group ![]() Joined: 21 May 2003 Location: United States Status: Offline Points: 11234 |
![]() ![]() ![]() ![]() ![]() |
Hi,
Please attach small sample to show problem. I can't reproduce it.
|
|
Oleg, Support Team
CODEJOCK SOFTWARE SOLUTIONS |
|
![]() |
|
DevDon ![]() Newbie ![]() Joined: 12 June 2007 Status: Offline Points: 18 |
![]() ![]() ![]() ![]() ![]() |
|
|
Developer~
|
|
![]() |
|
mgampi ![]() Senior Member ![]() ![]() Joined: 14 July 2003 Status: Offline Points: 1201 |
![]() ![]() ![]() ![]() ![]() |
Hi;
Perhaps the mouse messages are "eaten" by another window (e.g. PreTranslateMessage). Try using Spy++ or set a breakpoint into the docking pane tab mouse message handlers. Sometimes deleting the registry entries for the docking panes help...
|
|
Martin Product: Xtreme Toolkit v 22.1.0, new Projects v 24.0.0 Platform: Windows 10 v 22H2 (64bit) Language: VC++ 2022 |
|
![]() |
|
Oleg ![]() Admin Group ![]() Joined: 21 May 2003 Location: United States Status: Offline Points: 11234 |
![]() ![]() ![]() ![]() ![]() |
Hi,
Also please attach code of OnDockingPaneNotify handler.
|
|
Oleg, Support Team
CODEJOCK SOFTWARE SOLUTIONS |
|
![]() |
|
DevDon ![]() Newbie ![]() Joined: 12 June 2007 Status: Offline Points: 18 |
![]() ![]() ![]() ![]() ![]() |
Oleg ,
I don't have handler for ondockingPanenotify
I just do following things
Step 1---------------------------------------------------------------------------
m_pDockingPaneManager = new CMDockingPaneManager();
-----------------------------------------------------------------------------------
Step 2---------------------------------------------------------------------------
m_pDockingPaneManager->InstallDockingPanes((CFrameWnd*)m_pParent); ----------------------------------------------------------------------------------- Step 3---------------------------------------------------------------------------
CString strTemp; strTemp.Format("%sRunControlLayout%s",m_strTestPath.GetDataPtr(), FILEEXT_WINDOWDIM); if(""==m_pDockingPaneManager->LoadLayoutFromFile(strTemp)) { //RunControlLayout file does not found m_bNewLayout = true; //Message("\nNot Loaded from Layout file !!!\n"); } else { //RunControlLayout file found int iPanCt = m_pDockingPaneManager->GetDockedPaneCount(); //Total no of Panes count stored in file does not match to 6 if(iPanCt != PANECOUNT) { //Delete currupted file if (CMFile::IsFileExists (strTemp)) { //Delete file with wrong data DeleteFile(strTemp); } delete m_pDockingPaneManager; //Create temp object m_pDockingPaneManager = new CMDockingPaneManager(); //Install panes m_pDockingPaneManager->InstallDockingPanes((CFrameWnd*)m_pParent); m_bNewLayout = true;
} } -----------------------------------------------------------------------------------
Step 4
bool bRet;
if(m_bNewLayout) { bRet =m_pDockingPaneManager->ConnectPanes(IDD_TRIG_CONTROL_STATUS,IDD_AutoRunStatusDlg); if(!bRet) { Message("CMWinRunManager :1ConnectPanes Failed\n", CMStatusMessage::MSG_INFORMATION,true); } bRet =m_pDockingPaneManager->ConnectPanes(IDD_DeviceCommControl, IDD_TRIG_CONTROL_STATUS); if(!bRet) { Message("CMWinRunManager :2ConnectPanes Failed\n", CMStatusMessage::MSG_INFORMATION,true); } bRet =m_pDockingPaneManager->ConnectPanes(IDD_ManualChannelsControl, IDD_DeviceCommControl); if(!bRet) { Message("CMWinRunManager :3ConnectPanes Failed\n", CMStatusMessage::MSG_INFORMATION,true); } bRet =m_pDockingPaneManager->ConnectPanes(IDD_HeaderAndData,IDD_ManualChannelsControl); if(!bRet) { Message("CMWinRunManager :4ConnectPanes Failed\n", CMStatusMessage::MSG_INFORMATION,true); } bRet =m_pDockingPaneManager->ConnectPanes(IDD_DisplayControlDlg,IDD_HeaderAndData); if(!bRet) { Message("CMWinRunManager :5ConnectPanes Failed\n", CMStatusMessage::MSG_INFORMATION,true); } } -----------------------------------------------------------------------------------
and Pass docking pane manager pointer to all tab classes .
CMDockingPaneManager(); class is wrapper on actual api's provided by code jock .
Do i need to have handler for ondockingPanenotify ?
Please advise
|
|
Developer~
|
|
![]() |
|
Oleg ![]() Admin Group ![]() Joined: 21 May 2003 Location: United States Status: Offline Points: 11234 |
![]() ![]() ![]() ![]() ![]() |
Hello,
Sorry, Quite difficult to answer without debugging of code you have :-(
It have to work. Something wrong with your code.
|
|
Oleg, Support Team
CODEJOCK SOFTWARE SOLUTIONS |
|
![]() |
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 |