! Copyright (C) 2017 Doug Coleman.
! See http://factorcode.org/license.txt for BSD license.
-USING: accessors alien.c-types alien.enums alien.syntax cocoa
-cocoa.classes cocoa.messages cocoa.runtime combinators
-core-foundation.strings kernel locals namespaces sequences words ;
+USING: alien.c-types cocoa cocoa.classes cocoa.messages
+cocoa.runtime combinators core-foundation.strings kernel locals
+;
IN: cocoa.touchbar
-! ui.backend.cocoa.views creates buttons for each of these actions
-ENUM: default-touchbar refresh-all-action auto-use-action ;
-
-: enum>CFStringArray ( seq -- alien )
- enum>keys
- NSArray -> alloc
- swap <CFStringArray> -> initWithArray: ;
-
-: make-touchbar ( enum self -- touchbar )
+: make-touchbar ( seq self -- touchbar )
[ NSTouchBar -> alloc -> init dup ] dip -> setDelegate: {
- [ swap enum>CFStringArray { void { id SEL id } } ?-> setDefaultItemIdentifiers: ]
- [ swap enum>CFStringArray { void { id SEL id } } ?-> setCustomizationAllowedItemIdentifiers: ]
+ [ swap <CFStringArray> { void { id SEL id } } ?-> setDefaultItemIdentifiers: ]
+ [ swap <CFStringArray> { void { id SEL id } } ?-> setCustomizationAllowedItemIdentifiers: ]
[ nip ]
} 2cleave ;