aboutsummaryrefslogtreecommitdiffstats
path: root/Framework/MASKeyCodes.h
diff options
context:
space:
mode:
Diffstat (limited to 'Framework/MASKeyCodes.h')
-rw-r--r--Framework/MASKeyCodes.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/Framework/MASKeyCodes.h b/Framework/MASKeyCodes.h
index 69b2a97..9fb5b02 100644
--- a/Framework/MASKeyCodes.h
+++ b/Framework/MASKeyCodes.h
@@ -21,3 +21,22 @@ enum {
kMASShortcutGlyphNorthwestArrow = 0x2196,
kMASShortcutGlyphSoutheastArrow = 0x2198,
} MASShortcutGlyph;
+
+NS_INLINE NSString* NSStringFromMASKeyCode(unsigned short ch)
+{
+ return [NSString stringWithFormat:@"%C", ch];
+}
+
+NS_INLINE NSUInteger MASPickCocoaModifiers(NSUInteger flags)
+{
+ return (flags & (NSControlKeyMask | NSShiftKeyMask | NSAlternateKeyMask | NSCommandKeyMask));
+}
+
+NS_INLINE UInt32 MASCarbonModifiersFromCocoaModifiers(NSUInteger cocoaFlags)
+{
+ return
+ (cocoaFlags & NSCommandKeyMask ? cmdKey : 0)
+ | (cocoaFlags & NSAlternateKeyMask ? optionKey : 0)
+ | (cocoaFlags & NSControlKeyMask ? controlKey : 0)
+ | (cocoaFlags & NSShiftKeyMask ? shiftKey : 0);
+}