aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJason Perkins2014-11-24 08:07:41 -0500
committerJason Perkins2014-11-24 08:07:41 -0500
commit5c7dd533804812732d2e75606f19522578420990 (patch)
treee69dd765db427a77eb4b127a8a833600790fdd34
parent7308a0927d0958e244f70c69fe87cb37c1b147a9 (diff)
downloadMASShortcut-5c7dd533804812732d2e75606f19522578420990.tar.bz2
Add new "flat" button style
Hides the button border and background; good for placing several shortcut buttons into a table view.
-rw-r--r--MASShortcutView.h3
-rw-r--r--MASShortcutView.m15
2 files changed, 15 insertions, 3 deletions
diff --git a/MASShortcutView.h b/MASShortcutView.h
index d6a4313..d798878 100644
--- a/MASShortcutView.h
+++ b/MASShortcutView.h
@@ -5,7 +5,8 @@
typedef enum {
MASShortcutViewAppearanceDefault = 0, // Height = 19 px
MASShortcutViewAppearanceTexturedRect, // Height = 25 px
- MASShortcutViewAppearanceRounded // Height = 43 px
+ MASShortcutViewAppearanceRounded, // Height = 43 px
+ MASShortcutViewAppearanceFlat
} MASShortcutViewAppearance;
@interface MASShortcutView : NSView
diff --git a/MASShortcutView.m b/MASShortcutView.m
index b2d2531..bd18003 100644
--- a/MASShortcutView.m
+++ b/MASShortcutView.m
@@ -107,6 +107,12 @@
_shortcutCell.bezelStyle = NSRoundedBezelStyle;
break;
}
+ case MASShortcutViewAppearanceFlat: {
+ self.wantsLayer = YES;
+ _shortcutCell.backgroundColor = [NSColor clearColor];
+ _shortcutCell.bordered = NO;
+ break;
+ }
}
}
@@ -176,12 +182,16 @@
[_shortcutCell drawWithFrame:CGRectOffset(frame, 0.0, 1.0) inView:self];
break;
}
+ case MASShortcutViewAppearanceFlat: {
+ [_shortcutCell drawWithFrame:frame inView:self];
+ break;
+ }
}
}
- (void)drawRect:(CGRect)dirtyRect
{
- if (self.shortcutValue) {
+ if (self.shortcutValue) {
[self drawInRect:self.bounds withTitle:MASShortcutChar(self.recording ? kMASShortcutGlyphEscape : kMASShortcutGlyphDeleteLeft)
alignment:NSRightTextAlignment state:NSOffState];
@@ -227,7 +237,8 @@
switch (self.appearance) {
case MASShortcutViewAppearanceTexturedRect: hintButtonWidth += 2.0; break;
case MASShortcutViewAppearanceRounded: hintButtonWidth += 3.0; break;
- default: break;
+ case MASShortcutViewAppearanceFlat: hintButtonWidth -= 8.0 - (_shortcutCell.font.pointSize - BUTTON_FONT_SIZE); break;
+ default: break;
}
CGRectDivide(self.bounds, &hintRect, &shortcutRect, hintButtonWidth, CGRectMaxXEdge);
if (shortcutRectRef) *shortcutRectRef = shortcutRect;