![]() |
Pane layout |
Post Reply
|
| Author | |
Unormal
Newbie
Joined: 12 November 2003 Location: United States Status: Offline Points: 8 |
Post Options
Thanks(0)
Quote Reply
Topic: Pane layoutPosted: 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!
|
|
![]() |
|
Unormal
Newbie
Joined: 12 November 2003 Location: United States Status: Offline Points: 8 |
Post Options
Thanks(0)
Quote Reply
Posted: 23 February 2004 at 10:45am |
|
Oh, c'mon, this has got to have a pretty basic answer. Any help? |
|
![]() |
|
Oleg
Senior Member
Joined: 21 May 2003 Location: United States Status: Offline Points: 11234 |
Post Options
Thanks(0)
Quote Reply
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 |
|
![]() |
|
SuperMario
Senior Member
Joined: 14 February 2004 Status: Offline Points: 18057 |
Post Options
Thanks(0)
Quote Reply
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. |
|
![]() |
|
Unormal
Newbie
Joined: 12 November 2003 Location: United States Status: Offline Points: 8 |
Post Options
Thanks(0)
Quote Reply
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.
|
|
![]() |
|
SuperMario
Senior Member
Joined: 14 February 2004 Status: Offline Points: 18057 |
Post Options
Thanks(0)
Quote Reply
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. |
|
![]() |
|
tmorris
Newbie
Joined: 14 April 2004 Status: Offline Points: 2 |
Post Options
Thanks(0)
Quote Reply
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.
|
|
![]() |
|
tmorris
Newbie
Joined: 14 April 2004 Status: Offline Points: 2 |
Post Options
Thanks(0)
Quote Reply
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!!! |
|
![]() |
|
Unormal
Newbie
Joined: 12 November 2003 Location: United States Status: Offline Points: 8 |
Post Options
Thanks(0)
Quote Reply
Posted: 19 April 2004 at 2:51pm |
|
Yes, this works great, thanks!
|
|
![]() |
|
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 |