From fa708272bcfb2f3c5ee108e78a66eb9d7c68d7ff Mon Sep 17 00:00:00 2001 From: Antoine Mercadal Date: Wed, 23 Jan 2013 16:38:16 -0800 Subject: [PATCH] fix nib2cib to correctly place normal, small and mini labels --- Tools/nib2cib/NSTextField.j | 22 ++++++++++++++++++++-- 1 file changed, 20 insertions(+), 2 deletions(-) diff --git a/Tools/nib2cib/NSTextField.j b/Tools/nib2cib/NSTextField.j index a7b196494..bd0c689ad 100644 --- a/Tools/nib2cib/NSTextField.j +++ b/Tools/nib2cib/NSTextField.j @@ -70,11 +70,29 @@ } else { - // Adjust frame for difference between layout->bounds rect in IB + // // Adjust frame for difference between layout->bounds rect in IB [self setFrame:CGRectInset(frame, 3.0, 0.0)]; // Hack to get baselines to align - [self setFrameOrigin:CGPointMake(frame.origin.x, frame.origin.y - 1.0)]; + var fontSize = [[self font] size]; + + switch (fontSize) + { + // normal + case 13.0: + [self setFrameOrigin:CGPointMake(frame.origin.x, frame.origin.y - 1.0)]; + break; + + // small + case 11.0: + [self setFrameOrigin:CGPointMake(frame.origin.x, frame.origin.y + 2.0)]; + break; + + // mini + case 9.0: + [self setFrameOrigin:CGPointMake(frame.origin.x, frame.origin.y + 1.0)]; + break; + } } CPLog.debug("NSTextField: title=\"" + [self stringValue] + "\", placeholder=" + ([cell placeholderString] == null ? "" : '"' + [cell placeholderString] + '"') + ", isBordered=" + [self isBordered] + ", isBezeled=" + [self isBezeled] + ", bezelStyle=" + [self bezelStyle]);