X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/449c567346a1b3937e532cd87aac007faad76b04..fb8d7eb7a880f1f2e32d8830f9c5e12b2536e05f:/src/cocoa/statbmp.mm diff --git a/src/cocoa/statbmp.mm b/src/cocoa/statbmp.mm index f3de0e6478..538c999181 100644 --- a/src/cocoa/statbmp.mm +++ b/src/cocoa/statbmp.mm @@ -1,23 +1,26 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: cocoa/statbmp.mm +// Name: src/cocoa/statbmp.mm // Purpose: wxStaticBitmap // Author: David Elliott // Modified by: // Created: 2003/02/15 -// RCS-ID: $Id: +// RCS-ID: $Id$ // Copyright: (c) 2003 David Elliott -// Licence: wxWindows license +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// #include "wx/wxprec.h" + +#include "wx/statbmp.h" + #ifndef WX_PRECOMP #include "wx/app.h" - #include "wx/statbmp.h" #endif //WX_PRECOMP -#import +#include "wx/cocoa/autorelease.h" + +#import -IMPLEMENT_DYNAMIC_CLASS(wxStaticBitmap, wxControl) BEGIN_EVENT_TABLE(wxStaticBitmap, wxControl) END_EVENT_TABLE() // WX_IMPLEMENT_COCOA_OWNER(wxStaticBitmap,NSTextField,NSControl,NSView) @@ -29,11 +32,15 @@ bool wxStaticBitmap::Create(wxWindow *parent, wxWindowID winid, long style, const wxString& name) { + wxAutoNSAutoreleasePool pool; if(!CreateControl(parent,winid,pos,size,style,wxDefaultValidator,name)) return false; - m_cocoaNSView = NULL; - SetNSView([[NSView alloc] initWithFrame: MakeDefaultNSRect(size)]); + SetNSView([[NSImageView alloc] initWithFrame: MakeDefaultNSRect(size)]); [m_cocoaNSView release]; + + [GetNSImageView() setImage:bitmap.GetNSImage(true)]; + m_bitmap = bitmap; + if(m_parent) m_parent->CocoaAddChild(this); SetInitialFrameRect(pos,size); @@ -51,10 +58,11 @@ void wxStaticBitmap::SetIcon(const wxIcon& icon) void wxStaticBitmap::SetBitmap(const wxBitmap& bitmap) { + [GetNSImageView() setImage:bitmap.GetNSImage(true)]; + m_bitmap = bitmap; } wxBitmap wxStaticBitmap::GetBitmap() const { - return wxNullBitmap; + return m_bitmap; } -