X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/8d656ea93c0f3d53f97a1c67244baa39d72b7334..9d5507f7a2701395e1d5c121bd877bb9066ee6ea:/src/cocoa/statbmp.mm diff --git a/src/cocoa/statbmp.mm b/src/cocoa/statbmp.mm index f288054134..3a050757c9 100644 --- a/src/cocoa/statbmp.mm +++ b/src/cocoa/statbmp.mm @@ -1,20 +1,28 @@ ///////////////////////////////////////////////////////////////////////////// -// 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: wxWidgets licence ///////////////////////////////////////////////////////////////////////////// -#include "wx/app.h" +#include "wx/wxprec.h" + #include "wx/statbmp.h" -#import +#ifndef WX_PRECOMP + #include "wx/app.h" +#endif //WX_PRECOMP + +#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) @@ -26,11 +34,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); @@ -48,10 +60,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; } -