/////////////////////////////////////////////////////////////////////////////
-// 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/app.h"
+#include "wx/wxprec.h"
+
#include "wx/statbmp.h"
-#import <AppKit/NSView.h>
+#ifndef WX_PRECOMP
+ #include "wx/app.h"
+#endif //WX_PRECOMP
+
+#include "wx/cocoa/autorelease.h"
+
+#import <AppKit/NSImageView.h>
IMPLEMENT_DYNAMIC_CLASS(wxStaticBitmap, wxControl)
+
BEGIN_EVENT_TABLE(wxStaticBitmap, wxControl)
END_EVENT_TABLE()
// WX_IMPLEMENT_COCOA_OWNER(wxStaticBitmap,NSTextField,NSControl,NSView)
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: NSMakeRect(10,10,20,20)]);
+ 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);
+
return true;
}
wxStaticBitmap::~wxStaticBitmap()
{
- CocoaRemoveFromParent();
- SetNSView(NULL);
}
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;
}
-