*/
}
+ // update whether the pane is resizable or not
+ long style = p.frame->GetWindowStyleFlag();
+ if (p.IsFixed())
+ style &= ~wxRESIZE_BORDER;
+ else
+ style |= wxRESIZE_BORDER;
+ p.frame->SetWindowStyleFlag(style);
+
if (p.frame->IsShown() != p.IsShown())
p.frame->Show(p.IsShown());
}
HideHint();
}
-void wxAuiManager::OnFloatingPaneResized(wxWindow* wnd, const wxSize& size)
+void wxAuiManager::OnFloatingPaneResized(wxWindow* wnd, const wxRect& rect)
{
// try to find the pane
wxAuiPaneInfo& pane = GetPane(wnd);
wxASSERT_MSG(pane.IsOk(), wxT("Pane window not found"));
- pane.floating_size = size;
+ pane.FloatingSize(rect.GetWidth(), rect.GetHeight());
+
+ // the top-left position may change as well as the size
+ pane.FloatingPosition(rect.x, rect.y);
}