Pane layout
Printed From: Codejock Forums
Category: Codejock Products
Forum Name: Toolkit Pro
Forum Description: Topics Related to Codejock Toolkit Pro
URL: http://forum.codejock.com/forum_posts.asp?TID=338
Printed Date: 23 December 2024 at 8:14pm Software Version: Web Wiz Forums 12.04 - http://www.webwizforums.com
Topic: Pane layout
Posted By: Unormal
Subject: Pane layout
Date Posted: 06 January 2004 at 10:55am
What calls would be made to arrange three panes in three vertical columns that always fill the client area?
Or more generally X panes in X vertical columns, filling the client area.
Thanks!
|
Replies:
Posted By: Unormal
Date Posted: 23 February 2004 at 10:45am
Oh, c'mon, this has got to have a pretty basic answer. Any help?
|
Posted By: Oleg
Date Posted: 23 February 2004 at 11:05am
Ability to hide client area will appear in Docking Panes 8.62 is planned to be released in the beggining of March.
------------- Oleg, Support Team CODEJOCK SOFTWARE SOLUTIONS
|
Posted By: SuperMario
Date Posted: 23 February 2004 at 11:14am
OK, I will try to help. I have only used the ActiveX version but
the concept should be the same. There are a few ways to do this
based on whether the application is a SDI or MDI application. I
will assume you are creating a SDI application. Here is the code
for AxtiveX version:
Dim A As IPane, B As IPane, C As IPane
Set A = DockingPaneManager.CreatePane(1, 200, 120, DockLeftOf, Nothing)
Set B = DockingPaneManager.CreatePane(2, 200, 120, DockRightOf, A)
Set C = DockingPaneManager.CreatePane(3, 200, 120, DockRightOf, B)
Refer to the SDI docking panes sample. First 3 IPane objects at
declared, which are the docing panes you will attach something to. Then
you create the first docking pane, assign it an index, width, height,
docking direction, and neighboring pane to doc to. The first pane
is docked to the left of Nothing,
when docking to nothing the pane is docked to the frame of the
application. When creating the pane a pointer is set so this pane
can be refrenced. The next line of code created pane B which is
docked to the right of pane A. Now you have your client area
filled with two vertical panes. Now add pane C docking it to the
right of Pane B. This will fill the entire client area with three
vertical frames. All you need to do is figure out what values to
pass in for the width and height. All this functionality
should be included in the MFC version.
I hope this helped, let me know if you need be to explain anything else.
|
Posted By: Unormal
Date Posted: 23 February 2004 at 1:13pm
Thank you for your help oleg & Mario! I will try Mario's solution, and await 8.62 with baited breath.
|
Posted By: SuperMario
Date Posted: 23 February 2004 at 1:41pm
I believe this is the code in MFC, hopefully this code along with the
ActiveX version I posted before will help.
GetDockingPaneManager()->InstallDockingPanes(this);
GetDockingPaneManager()->SetTheme(xtpPaneThemeOffic e);
// Create docking panes.
CXTPDockingPane* pwndPaneA = GetDockingPaneManager()->CreatePane(
IDR_PANEA, CRect(0, 0,200, 120), dockLeftOf );
CXTPDockingPane* pwndPaneB = GetDockingPaneManager()->CreatePane(
IDR_PANEB, CRect(0, 0,200, 120), dockRightOf, pwndPaneA);
CXTPDockingPane* pwndPaneC = GetDockingPaneManager()->CreatePane(
IDR_PANEC, CRect(0, 0,200, 120), dockRightOf, pwndPaneB);
You can use the pointers to do things like set the title of the pane
and attach them to each other. I hope this helps you out with the
MFC, I though I should post this because I didn't realize how different
this is from the AxtiveX version.
|
Posted By: tmorris
Date Posted: 14 April 2004 at 10:09pm
Has the ability to hide the client area been implemented in 8.70? I'd like my docking panes to always fill the window.
|
Posted By: tmorris
Date Posted: 14 April 2004 at 10:32pm
Okay, I see hiding the client area has been implemented by calling CXTPDockingPaneManager::HideClient(TRUE). Thanks for the fix!!!
|
Posted By: Unormal
Date Posted: 19 April 2004 at 2:51pm
Yes, this works great, thanks!
|
|