In UpdateFrameNSView size the toolbar to its best size.

When creating or setting a frame's toolbar, SetOwningFrame on it.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@24885 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
David Elliott
2003-12-16 17:26:37 +00:00
parent 715c1da4a7
commit 6613dc3fd6

View File

@@ -138,6 +138,8 @@ void wxFrame::UpdateFrameNSView()
NSView *tbarNSView = m_frameToolBar->GetNSViewForSuperview();
if(![tbarNSView superview])
[m_frameNSView addSubview: tbarNSView];
// Do this after addSubView so that SetSize can work
m_frameToolBar->SetSize(m_frameToolBar->DoGetBestSize());
NSRect tbarRect = [tbarNSView frame];
tbarRect.size.width = frameRect.size.width;
tbarRect.origin.x = 0.0;
@@ -212,6 +214,7 @@ void wxFrame::SetToolBar(wxToolBar *toolbar)
{
if(m_frameToolBar)
{
m_frameToolBar->SetOwningFrame(NULL);
[m_frameToolBar->GetNSViewForSuperview() removeFromSuperview];
[m_frameToolBar->GetNSViewForSuperview() setAutoresizingMask: NSViewMinYMargin];
if(m_frameToolBar->GetParent())
@@ -221,6 +224,7 @@ void wxFrame::SetToolBar(wxToolBar *toolbar)
if(m_frameToolBar)
{
m_frameToolBar->CocoaRemoveFromParent();
m_frameToolBar->SetOwningFrame(this);
}
UpdateFrameNSView();
}
@@ -233,6 +237,7 @@ wxToolBar* wxFrame::CreateToolBar(long style,
if(m_frameToolBar)
{
m_frameToolBar->CocoaRemoveFromParent();
m_frameToolBar->SetOwningFrame(this);
}
UpdateFrameNSView();
return m_frameToolBar;