#endif
#include "wx/cocoa/autorelease.h"
+#include "wx/cocoa/string.h"
#include "wx/cocoa/trackingrectmanager.h"
#include "wx/cocoa/objc/objc_uniquifying.h"
wxASSERT(GetNSControl());
/* We can ask single-celled controls for their cell and get its size */
NSCell *cell = nil;
-NS_DURING
- cell = [GetNSControl() cell];
-NS_HANDLER
- // TODO: if anything other than method not implemented, re-raise
-NS_ENDHANDLER
+ if([GetNSControl() respondsToSelector:@selector(cell)])
+ cell = [GetNSControl() cell];
if(cell)
{
NSSize cellSize = [cell cellSize];
}
/* multi-celled control? size to fit, get the size, then set it back */
- NSRect storedRect = [m_cocoaNSView frame];
- bool didFit = false;
-NS_DURING
- [GetNSControl() sizeToFit];
- didFit = true;
-NS_HANDLER
- // TODO: if anything other than method not implemented, re-raise
-NS_ENDHANDLER
- if(didFit)
+ if([GetNSControl() respondsToSelector:@selector(sizeToFit)])
{
+ NSRect storedRect = [m_cocoaNSView frame];
+ [GetNSControl() sizeToFit];
NSRect cocoaRect = [m_cocoaNSView frame];
wxSize size((int)ceil(cocoaRect.size.width),(int)ceil(cocoaRect.size.height));
[m_cocoaNSView setFrame: storedRect];
{
[GetNSControl() setEnabled: enable];
}
+
+/*static*/ void wxControl::CocoaSetLabelForObject(const wxString& label, struct objc_object *aView)
+{
+ [aView setTitle:wxNSStringWithWxString(GetLabelText(label))];
+}
+