X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/2ace5cf632140dcaea31a60debfc998343410c7a..4c7020e9f5df00af0c0fe51e669cfffd5a2c3b3e:/src/cocoa/statbox.mm diff --git a/src/cocoa/statbox.mm b/src/cocoa/statbox.mm index 23dd3261d6..0a8ecab190 100644 --- a/src/cocoa/statbox.mm +++ b/src/cocoa/statbox.mm @@ -12,6 +12,8 @@ #include "wx/app.h" #include "wx/statbox.h" +#include "wx/cocoa/autorelease.h" + #import #import @@ -27,6 +29,7 @@ bool wxStaticBox::Create(wxWindow *parent, wxWindowID winid, long style, const wxValidator& validator, const wxString& name) { + wxAutoNSAutoreleasePool pool; if(!CreateControl(parent,winid,pos,size,style,validator,name)) return false; m_cocoaNSView = NULL; @@ -39,20 +42,19 @@ bool wxStaticBox::Create(wxWindow *parent, wxWindowID winid, wxStaticBox::~wxStaticBox() { - CocoaRemoveFromParent(); - SetNSBox(NULL); + DisassociateNSBox(m_cocoaNSView); } void wxStaticBox::GetBordersForSizer(int *borderTop, int *borderOther) const { NSRect contentRect = [[GetNSBox() contentView] frame]; NSRect thisRect = [m_cocoaNSView frame]; - *borderTop = thisRect.size.height - (contentRect.origin.y+contentRect.size.height); - *borderOther = thisRect.size.width - (contentRect.origin.x+contentRect.size.width); - int nextBorder = contentRect.origin.y; + *borderTop = (int)(thisRect.size.height - (contentRect.origin.y+contentRect.size.height)); + *borderOther = (int)(thisRect.size.width - (contentRect.origin.x+contentRect.size.width)); + int nextBorder = (int)contentRect.origin.y; if(nextBorder > *borderOther) *borderOther = nextBorder; - nextBorder = contentRect.origin.x; + nextBorder = (int)contentRect.origin.x; if(nextBorder > *borderOther) *borderOther = nextBorder; }