![]() |
Disable stickers for undockable pane |
Post Reply
|
| Author | |
Louis
Newbie
Joined: 17 August 2005 Status: Offline Points: 19 |
Post Options
Thanks(0)
Quote Reply
Topic: Disable stickers for undockable panePosted: 25 August 2005 at 4:13pm |
|
Hi, I have an application that has docking panes and I want to be able to disallow docking for specific panes. I wass think of doing this when a pane is floated that pin button will act as a enable/disable docking. I think this is easy and found a sample that shows how. But, I also want stickers to NOT show when I start dragging a floated pane that has been pined (disallowed to dock). How can I do that ? Louis. |
|
![]() |
|
g_j_a_i_n
Groupie
Joined: 27 August 2005 Status: Offline Points: 94 |
Post Options
Thanks(0)
Quote Reply
Posted: 30 August 2005 at 10:43pm |
|
Sorry. I have come here not to provide a solution. But to ask you another question. How can I disable docking of certain panes? I want to keep it always floating. Regards, Gautam Jain |
|
![]() |
|
Hazelnut
Groupie
Joined: 22 July 2005 Location: United States Status: Offline Points: 18 |
Post Options
Thanks(0)
Quote Reply
Posted: 30 August 2005 at 11:24pm |
|
For the first question, Look in XTPDockingPaneDefines.h ... it seems to have some options. xtpPaneNoCloseable, xtpPaneNoHideable,xtpPaneNoFloatable,xtpPaneNoCaption, xtpPaneHasMenuButton For the second question and possibly the first too, search for XTP_DOCKINGPANE_ACTION in the same file. It seems you'll have to watch for these actions and act on accordingly during the XTPWM_DOCKINGPANE_NOTIFY notification. |
|
![]() |
|
Louis
Newbie
Joined: 17 August 2005 Status: Offline Points: 19 |
Post Options
Thanks(0)
Quote Reply
Posted: 12 September 2005 at 8:14am |
|
Here's what I am doing right now. This also answers g_j_a_i_n question. I still need a way to disable stickers, so that they don't show up for panes that cannot be docked. To prevent a pane to dock, you need the message handler: Then, in the handler itself you need to check for XTP_DPN_ACTION. LRESULT CMainFrame::OnDockingPaneNotify(WPARAM wParam, LPARAM lParam) { XTP_DOCKINGPANE_ACTION* pAction = (XTP_DOCKINGPANE_ACTION*)lParam; //Do not allow this pane to dock if( pAction->action == xtpPaneActionDocking || pAction->action == xtpPaneActionAttaching ) { int nPaneID = pAction->pPane->GetID(); if( nPaneID == MyPaneID ) { pAction->bCancel = TRUE; return TRUE; } } } } |
|
![]() |
|
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 |