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

Pane layout

 Post Reply Post Reply
Author
Message
Unormal View Drop Down
Newbie
Newbie
Avatar

Joined: 12 November 2003
Location: United States
Status: Offline
Points: 8
Post Options Post Options   Thanks (0) Thanks(0)   Quote Unormal Quote  Post ReplyReply Direct Link To This Post Topic: Pane layout
    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!

 

Back to Top
Unormal View Drop Down
Newbie
Newbie
Avatar

Joined: 12 November 2003
Location: United States
Status: Offline
Points: 8
Post Options Post Options   Thanks (0) Thanks(0)   Quote Unormal Quote  Post ReplyReply Direct Link To This Post Posted: 23 February 2004 at 10:45am

Oh, c'mon, this has got to have a pretty basic answer. Any help?

Back to Top
Oleg View Drop Down
Admin Group
Admin Group


Joined: 21 May 2003
Location: United States
Status: Offline
Points: 11234
Post Options Post Options   Thanks (0) Thanks(0)   Quote Oleg Quote  Post ReplyReply Direct Link To This Post 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
Back to Top
SuperMario View Drop Down
Admin Group
Admin Group
Avatar

Joined: 14 February 2004
Status: Offline
Points: 18057
Post Options Post Options   Thanks (0) Thanks(0)   Quote SuperMario Quote  Post ReplyReply Direct Link To This Post 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.

Back to Top
Unormal View Drop Down
Newbie
Newbie
Avatar

Joined: 12 November 2003
Location: United States
Status: Offline
Points: 8
Post Options Post Options   Thanks (0) Thanks(0)   Quote Unormal Quote  Post ReplyReply Direct Link To This Post 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.
Back to Top
SuperMario View Drop Down
Admin Group
Admin Group
Avatar

Joined: 14 February 2004
Status: Offline
Points: 18057
Post Options Post Options   Thanks (0) Thanks(0)   Quote SuperMario Quote  Post ReplyReply Direct Link To This Post 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.
Back to Top
tmorris View Drop Down
Newbie
Newbie


Joined: 14 April 2004
Status: Offline
Points: 2
Post Options Post Options   Thanks (0) Thanks(0)   Quote tmorris Quote  Post ReplyReply Direct Link To This Post 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.
Back to Top
tmorris View Drop Down
Newbie
Newbie


Joined: 14 April 2004
Status: Offline
Points: 2
Post Options Post Options   Thanks (0) Thanks(0)   Quote tmorris Quote  Post ReplyReply Direct Link To This Post 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!!!

Back to Top
Unormal View Drop Down
Newbie
Newbie
Avatar

Joined: 12 November 2003
Location: United States
Status: Offline
Points: 8
Post Options Post Options   Thanks (0) Thanks(0)   Quote Unormal Quote  Post ReplyReply Direct Link To This Post Posted: 19 April 2004 at 2:51pm
Yes, this works great, thanks!
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.203 seconds.