summaryrefslogtreecommitdiff
path: root/new/darwin/label.m
diff options
context:
space:
mode:
authorPietro Gagliardi <[email protected]>2015-04-16 14:41:24 -0400
committerPietro Gagliardi <[email protected]>2015-04-16 14:41:24 -0400
commit0660104659c17852035233617ce9885339c93d7c (patch)
treeb52848e71704207ffc62a9a9a5488383b9b913a2 /new/darwin/label.m
parent89931668a56b0b12edcf4e77423313f5917e6bb0 (diff)
Migrated darwin/label.m; fixed up some of the other files.
Diffstat (limited to 'new/darwin/label.m')
-rw-r--r--new/darwin/label.m48
1 files changed, 27 insertions, 21 deletions
diff --git a/new/darwin/label.m b/new/darwin/label.m
index e3fb351..4f20e98 100644
--- a/new/darwin/label.m
+++ b/new/darwin/label.m
@@ -2,52 +2,58 @@
#import "uipriv_darwin.h"
@interface uiLabelNSTextField : NSTextField
-@property uiControl *uiC;
+@property uiLabel *uiL;
@end
@implementation uiLabelNSTextField
- (void)viewDidMoveToSuperview
{
- if (uiDarwinControlFreeWhenAppropriate(self.uiC, [self superview])) {
+ if (uiDarwinControlFreeWhenAppropriate(uiControl(self.uiL), [self superview])) {
[self setTarget:nil];
- self.uiC = NULL;
+ self.uiL = NULL;
}
[super viewDidMoveToSuperview];
}
@end
-uiControl *uiNewLabel(const char *text)
+static char *labelText(uiLabel *l)
{
- uiControl *c;
- uiLabelNSTextField *l;
-
- c = uiDarwinNewControl([uiLabelNSTextField class], NO, NO);
- l = (uiLabelNSTextField *) uiControlHandle(c);
- l.uiC = c;
-
- [l setStringValue:toNSString(text)];
- [l setEditable:NO];
- [l setSelectable:NO];
- [l setDrawsBackground:NO];
- finishNewTextField((NSTextField *) l, NO);
+ uiLabelNSTextField *t;
- return l.uiC;
+ t = (uiLabelNSTextField *) uiControlHandle(uiControl(l));
+ return uiDarwinNSStringToText([t stringValue]);
}
-char *uiLabelText(uiControl *c)
+static void labelSetText(uiLabel *l, const char *text)
{
uiLabelNSTextField *t;
- t = (uiLabelNSTextField *) uiControlHandle(c);
- return uiDarwinNSStringToText([t stringValue]);
+ t = (uiLabelNSTextField *) uiControlHandle(uiControl(l));
+ [t setStringValue:toNSString(text)];
}
-void uiLabelSetText(uiControl *c, const char *text)
+uiControl *uiNewLabel(const char *text)
{
+ uiLabel *l;
uiLabelNSTextField *t;
+ l = uiNew(uiLabel);
+
+ uiDarwinNewControl(uiControl(l), [uiLabelNSTextField class], NO, NO);
t = (uiLabelNSTextField *) uiControlHandle(c);
+
[t setStringValue:toNSString(text)];
+ [t setEditable:NO];
+ [t setSelectable:NO];
+ [t setDrawsBackground:NO];
+ finishNewTextField((NSTextField *) t, NO);
+
+ uiLabel(l)->Text = labelText;
+ uiLabel(l)->SetText = labelSetText;
+
+ t.uiC = l;
+
+ return t.uiC;
}