Print Page | Close Window

Limiting where panes can dock

Printed From: Codejock Forums
Category: Codejock Products
Forum Name: Docking Pane
Forum Description: Topics Related to Codejock Docking Pane
URL: http://forum.codejock.com/forum_posts.asp?TID=15183
Printed Date: 28 April 2024 at 7:11pm
Software Version: Web Wiz Forums 12.04 - http://www.webwizforums.com


Topic: Limiting where panes can dock
Posted By: Robin Imrie
Subject: Limiting where panes can dock
Date Posted: 16 September 2009 at 5:35am
Hi,

My SDi application has one dockable pane. I only it to be possible to dock this pane on the left or the right hand side of the window.

How would I do this?

Thanks

Robin


-------------
Product: xtreme Toolkit Pro V13.1.0
Platform: Windows XP SP3
Language: VC++ 2008



Replies:
Posted By: mgampi
Date Posted: 16 September 2009 at 1:25pm
Try this:

LRESULT CMainFrame::OnDockingPaneNotify(WPARAM wp, LPARAM lp)
{
    if (wp==XTP_DPN_ACTION)
    {
        XTP_DOCKINGPANE_ACTION* pAction = (XTP_DOCKINGPANE_ACTION*)lp;
        if (pAction->pPane->GetID()==IDR_TIMESCALE && pAction->action==xtpPaneActionDocking)
        {
            if (!pAction->pPane->IsHidden() && pAction->dockDirection!=xtpPaneDockTop && pAction->dockDirection!=xtpPaneDockBottom)
               pAction->bCancel=TRUE;
            else
               pAction->bCancel=FALSE;
            return 1;
        }
    }
    return 0;
}

This restricts docking to top or bottom of frame.


-------------
Martin

Product: Xtreme Toolkit v 19.0.0, new Projects v 19.1.0
Platform: Windows 10 v 1909 (64bit)
Language: VC++ 2017


Posted By: Robin Imrie
Date Posted: 18 September 2009 at 7:06am
Tried that and found that I could only dock to top or bottom, changed code to...

LRESULT CMainFrame::OnDockingPaneNotify(WPARAM wp, LPARAM lp)
{
    if (wp==XTP_DPN_ACTION)
    {
        XTP_DOCKINGPANE_ACTION* pAction = (XTP_DOCKINGPANE_ACTION*)lp;
        if (pAction->pPane->GetID()==IDR_TIMESCALE && pAction->action==xtpPaneActionDocking)
        {
            if (!pAction->pPane->IsHidden() && pAction->dockDirection!=xtpPaneDockTop && pAction->dockDirection!=xtpPaneDockBottom)
               pAction->bCancel=FALSE;
            else
               pAction->bCancel=TRUE;
            return 1;
        }
    }
    return 0;
}





-------------
Product: xtreme Toolkit Pro V13.1.0
Platform: Windows XP SP3
Language: VC++ 2008



Print Page | Close Window

Forum Software by Web Wiz Forums® version 12.04 - http://www.webwizforums.com
Copyright ©2001-2021 Web Wiz Ltd. - https://www.webwiz.net