Codejock Forums Homepage
Forum Home Forum Home > Codejock Products > Visual C++ MFC > Toolkit Pro
  New Posts New Posts RSS Feed - Docking pane positioning
  FAQ FAQ  Forum Search   Events   Register Register  Login Login

Docking pane positioning

 Post Reply Post Reply
Author
Message
sunilwarke View Drop Down
Newbie
Newbie


Joined: 28 September 2006
Status: Offline
Points: 6
Post Options Post Options   Thanks (0) Thanks(0)   Quote sunilwarke Quote  Post ReplyReply Direct Link To This Post Topic: Docking pane positioning
    Posted: 02 October 2006 at 2:14am
Hi,
 
I am using Docking Pane (Xtreme ToolkitPro 10.3)
 
I have created 6 dialog boxes in the MDI application. The dialog boxes does not have any border. These dialogs are added on the docking pane manager creating a docking pane for each of them.
 
Would like to know
1. How to maximize each pane on some button click? I can not access the SetWindowRect as it is protected.
 
2. When my docking pane is floting, I can change it's size however the trending activex control added on that pane/dialog flickers much. Also when the pane is double clicked it attached to some window but the size of the control does not change. Is there any way to control the size of activex control or any list control added on the dialog automatically as the pane size may change.
 
3. The pane can be rearrahged/position can be changed by user, is there any way to autoarrange or set all pane position to some default position on some button click?
 
4. How to put all panes in the tabbed format by some button click?
 
Thanks and regards,

Sunil
Back to Top
asparagusx View Drop Down
Groupie
Groupie


Joined: 06 February 2007
Status: Offline
Points: 57
Post Options Post Options   Thanks (0) Thanks(0)   Quote asparagusx Quote  Post ReplyReply Direct Link To This Post Posted: 13 February 2007 at 7:59am
Sunil
 
I have written a function (outline code here only) that might help you. This function 'resets' all the docking windows to a know state. I close all the panes first (to get it to a known state) and then show/hide/dock as appliable. Also use SetMinTrackSize and SetMaxTrackSize to 'resize' panes as required :
 

CXTPDockingPaneInfoList& lstPanes = m_paneManager.GetPaneList();

POSITION pos = lstPanes.GetHeadPosition();

m_paneManager.HideClient(TRUE);

while (pos)

{

CXTPDockingPane* pPane = lstPanes.GetNext(pos);

if (!pPane->IsClosed())

pPane->Close();

}

m_paneManager.RecalcFramesLayout();

pos = lstPanes.GetHeadPosition();

while (pos)

{

CXTPDockingPane* pPane = lstPanes.GetNext(pos);

switch (pPane->GetID())

{

case ID_DATATREE_DOCK :

m_paneManager.ShowPane(pPane,FALSE);

m_paneManager.DockPane(pPane,xtpPaneDockLeft);

break;

case ID_ZOOMWIN_DOCK :

m_paneManager.ShowPane(pPane,FALSE);

m_paneManager.DockPane(pPane,xtpPaneDockBottom,m_paneManager.FindPane(ID_DATATREE_DOCK));

break;

:
:
:
do any other panes here
}
}
 
Hope this might be of some assistance.
 
Anton Heymann
 
Back to Top
 Post Reply Post Reply
  Share Topic   

Forum Jump Forum Permissions View Drop Down

Forum Software by Web Wiz Forums® version 12.04
Copyright ©2001-2021 Web Wiz Ltd.

This page was generated in 0.063 seconds.