diff --git a/demos/webkit-demo/webkit-demo.factor b/demos/webkit-demo/webkit-demo.factor index f9b52f6f15..c7ab617b89 100644 --- a/demos/webkit-demo/webkit-demo.factor +++ b/demos/webkit-demo/webkit-demo.factor @@ -10,8 +10,8 @@ import: WebView : rect ( -- rect ) 0 0 700 500 ; : ( -- id ) - WebView -> alloc - rect f f -> initWithFrame:frameName:groupName: ; + WebView send\ alloc + rect f f send\ initWithFrame:frameName:groupName: ; CONSTANT: window-style flags{ @@ -25,12 +25,12 @@ CONSTANT: window-style rect window-style ; : load-url ( window url -- ) - [ -> contentView ] [ ] bi* -> setMainFrameURL: ; + [ send\ contentView ] [ ] bi* send\ setMainFrameURL: ; : webkit-demo ( -- ) - [ -> center ] - [ f -> makeKeyAndOrderFront: ] + [ send\ center ] + [ f send\ makeKeyAndOrderFront: ] [ "http://factorcode.org" load-url ] tri ; : run-webkit-demo ( -- ) diff --git a/ffi/cocoa/apple-script/apple-script.factor b/ffi/cocoa/apple-script/apple-script.factor index a4014ac736..d634ecfca1 100644 --- a/ffi/cocoa/apple-script/apple-script.factor +++ b/ffi/cocoa/apple-script/apple-script.factor @@ -7,9 +7,9 @@ multiline words ; in: cocoa.apple-script : run-apple-script ( str -- ) - [ NSAppleScript -> alloc ] dip - -> initWithSource: -> autorelease - f -> executeAndReturnError: drop ; + [ NSAppleScript send\ alloc ] dip + send\ initWithSource: send\ autorelease + f send\ executeAndReturnError: drop ; SYNTAX: APPLESCRIPT: scan-new-word ";APPLESCRIPT" parse-multiline-string diff --git a/ffi/cocoa/application/application.factor b/ffi/cocoa/application/application.factor index dedbfe2b6e..bea06f5837 100644 --- a/ffi/cocoa/application/application.factor +++ b/ffi/cocoa/application/application.factor @@ -4,16 +4,16 @@ USING: alien.c-types alien.syntax cocoa cocoa.classes cocoa.runtime core-foundation.strings kernel sequences ; in: cocoa.application -: ( str -- alien ) -> autorelease ; +: ( str -- alien ) send\ autorelease ; CONSTANT: NSApplicationDelegateReplySuccess 0 ; CONSTANT: NSApplicationDelegateReplyCancel 1 ; CONSTANT: NSApplicationDelegateReplyFailure 2 ; : with-autorelease-pool ( quot -- ) - NSAutoreleasePool -> new [ call ] [ -> release ] bi* ; inline + NSAutoreleasePool send\ new [ call ] [ send\ release ] bi* ; inline -: NSApp ( -- app ) NSApplication -> sharedApplication ; +: NSApp ( -- app ) NSApplication send\ sharedApplication ; CONSTANT: NSAnyEventMask 0xffffffff ; @@ -24,24 +24,24 @@ FUNCTION: void NSBeep ( ) ; : add-observer ( observer selector name object -- ) [ - [ NSNotificationCenter -> defaultCenter ] 2dip + [ NSNotificationCenter send\ defaultCenter ] 2dip sel_registerName - ] 2dip -> addObserver:selector:name:object: ; + ] 2dip send\ addObserver:selector:name:object: ; : remove-observer ( observer -- ) - [ NSNotificationCenter -> defaultCenter ] dip - -> removeObserver: ; + [ NSNotificationCenter send\ defaultCenter ] dip + send\ removeObserver: ; : cocoa-app ( quot -- ) - [ call NSApp -> run ] with-cocoa ; inline + [ call NSApp send\ run ] with-cocoa ; inline : install-delegate ( receiver delegate -- ) - -> alloc -> init -> setDelegate: ; + send\ alloc send\ init send\ setDelegate: ; : running.app? ( -- ? ) ! Test if we're running a .app. ".app" - NSBundle -> mainBundle -> bundlePath CF>string + NSBundle send\ mainBundle send\ bundlePath CF>string subseq? ; : assert.app ( message -- ) diff --git a/ffi/cocoa/cocoa-docs.factor b/ffi/cocoa/cocoa-docs.factor index 9fb964c567..6f11c1a69b 100644 --- a/ffi/cocoa/cocoa-docs.factor +++ b/ffi/cocoa/cocoa-docs.factor @@ -8,13 +8,25 @@ HELP: -> { $description "A sugared form of the following:" } { $code "\"selector\" send" } ; +HELP: send\ +{ $syntax "send\ selector" } +{ $values { "selector" "an Objective C method name" } } +{ $description "A sugared form of the following:" } +{ $code "\"selector\" send" } ; + HELP: SUPER-> { $syntax "-> selector" } { $values { "selector" "an Objective C method name" } } { $description "A sugared form of the following:" } { $code "\"selector\" send-super" } ; -{ send super-send postpone\ -> postpone\ SUPER-> } related-words +HELP: super-send\ +{ $syntax "-> selector" } +{ $values { "selector" "an Objective C method name" } } +{ $description "A sugared form of the following:" } +{ $code "\"selector\" send-super" } ; + +{ send super-send postpone\ -> postpone\ send\ postpone\ SUPER-> postpone\ super-send\ } related-words HELP: import: { $syntax "import: name" } @@ -31,7 +43,9 @@ $nl "Messages can be sent to classes and instances using a pair of parsing words:" { $subsections postpone\ -> + postpone\ send\ postpone\ SUPER-> + postpone\ super-send\ } "These parsing words are actually syntax sugar for a pair of ordinary words; they can be used instead of the parsing words if the selector name is dynamically computed:" { $subsections diff --git a/ffi/cocoa/cocoa-tests.factor b/ffi/cocoa/cocoa-tests.factor index 83b5667bbc..b4ac0eb94a 100644 --- a/ffi/cocoa/cocoa-tests.factor +++ b/ffi/cocoa/cocoa-tests.factor @@ -10,9 +10,9 @@ CLASS: Foo < NSObject ; : test-foo ( -- ) - Foo -> alloc -> init - dup 1.0 2.0 101.0 102.0 -> foo: - -> release ; + Foo send\ alloc send\ init + dup 1.0 2.0 101.0 102.0 send\ foo: + send\ release ; { } [ test-foo ] unit-test @@ -27,9 +27,9 @@ CLASS: Bar < NSObject { } [ Bar [ - -> alloc -> init - dup -> bar "x" set - -> release + send\ alloc send\ init + dup send\ bar "x" set + send\ release ] compile-call ] unit-test @@ -47,8 +47,8 @@ CLASS: Bar < NSObject { 144 } [ Bar [ - -> alloc -> init - dup 12 -> babb: - swap -> release + send\ alloc send\ init + dup 12 send\ babb: + swap send\ release ] compile-call ] unit-test diff --git a/ffi/cocoa/cocoa.factor b/ffi/cocoa/cocoa.factor index e123c802f4..89fbfa7c8c 100644 --- a/ffi/cocoa/cocoa.factor +++ b/ffi/cocoa/cocoa.factor @@ -13,11 +13,16 @@ symbol: sent-messages sent-messages (remember-send) ; SYNTAX: -> scan-token dup remember-send suffix! \ send suffix! ; +SYNTAX: send\ scan-token dup remember-send suffix! \ send suffix! ; SYNTAX: SEL: scan-token [ remember-send ] [ suffix! \ cocoa.messages:selector suffix! ] bi ; +SYNTAX: sel\ + scan-token + [ remember-send ] + [ suffix! \ cocoa.messages:selector suffix! ] bi ; symbol: super-sent-messages @@ -25,6 +30,7 @@ symbol: super-sent-messages super-sent-messages (remember-send) ; SYNTAX: SUPER-> scan-token dup remember-super-send suffix! \ super-send suffix! ; +SYNTAX: super-send\ scan-token dup remember-super-send suffix! \ super-send suffix! ; symbol: frameworks diff --git a/ffi/cocoa/dialogs/dialogs.factor b/ffi/cocoa/dialogs/dialogs.factor index 61e4286a85..693197ae71 100644 --- a/ffi/cocoa/dialogs/dialogs.factor +++ b/ffi/cocoa/dialogs/dialogs.factor @@ -5,27 +5,27 @@ core-foundation.strings kernel splitting ; in: cocoa.dialogs : ( -- panel ) - NSOpenPanel -> openPanel - dup 1 -> setCanChooseFiles: - dup 0 -> setCanChooseDirectories: - dup 1 -> setResolvesAliases: - dup 1 -> setAllowsMultipleSelection: ; + NSOpenPanel send\ openPanel + dup 1 send\ setCanChooseFiles: + dup 0 send\ setCanChooseDirectories: + dup 1 send\ setResolvesAliases: + dup 1 send\ setAllowsMultipleSelection: ; : ( -- panel ) - dup 1 -> setCanChooseDirectories: ; + dup 1 send\ setCanChooseDirectories: ; : ( -- panel ) - NSSavePanel -> savePanel - dup 1 -> setCanChooseFiles: - dup 0 -> setCanChooseDirectories: - dup 0 -> setAllowsMultipleSelection: ; + NSSavePanel send\ savePanel + dup 1 send\ setCanChooseFiles: + dup 0 send\ setCanChooseDirectories: + dup 0 send\ setAllowsMultipleSelection: ; CONSTANT: NSOKButton 1 ; CONSTANT: NSCancelButton 0 ; : (open-panel) ( panel -- paths ) - dup -> runModal NSOKButton = - [ -> filenames CF>string-array ] [ drop f ] if ; + dup send\ runModal NSOKButton = + [ send\ filenames CF>string-array ] [ drop f ] if ; : open-panel ( -- paths ) (open-panel) ; @@ -36,5 +36,5 @@ CONSTANT: NSCancelButton 0 ; : save-panel ( path -- path/f ) [ dup ] dip - split-path -> runModalForDirectory:file: NSOKButton = - [ -> filename CF>string ] [ drop f ] if ; + split-path send\ runModalForDirectory:file: NSOKButton = + [ send\ filename CF>string ] [ drop f ] if ; diff --git a/ffi/cocoa/enumeration/enumeration.factor b/ffi/cocoa/enumeration/enumeration.factor index 411764a077..2a81ba1ec2 100644 --- a/ffi/cocoa/enumeration/enumeration.factor +++ b/ffi/cocoa/enumeration/enumeration.factor @@ -17,7 +17,7 @@ CONSTANT: NS-EACH-BUFFER-SIZE 16 ; ] with-destructors ; inline :: (NSFastEnumeration-each) ( ... object quot: ( ... elt -- ) state stackbuf count -- ... ) - object state stackbuf count -> countByEnumeratingWithState:objects:count: :> items-count + object state stackbuf count send\ countByEnumeratingWithState:objects:count: :> items-count items-count 0 = [ state itemsPtr>> [ items-count id ] [ stackbuf ] if* :> items items-count iota [ items nth quot call ] each diff --git a/ffi/cocoa/messages/messages-docs.factor b/ffi/cocoa/messages/messages-docs.factor index 264e1aa388..bd48de65d9 100644 --- a/ffi/cocoa/messages/messages-docs.factor +++ b/ffi/cocoa/messages/messages-docs.factor @@ -14,7 +14,7 @@ HELP: super-send HELP: objc-class { $values { "string" string } { "class" alien } } { $description "Outputs the Objective C class named by " { $snippet "string" } ". This class can then be used as the receiver in message sends calling class methods, for example:" -{ $code "NSMutableArray -> alloc" } } +{ $code "NSMutableArray send\ alloc" } } { $errors "Throws an error if there is no class named by " { $snippet "string" } "." } ; HELP: objc-meta-class diff --git a/ffi/cocoa/nibs/nibs.factor b/ffi/cocoa/nibs/nibs.factor index 7b81581087..021b93bab0 100644 --- a/ffi/cocoa/nibs/nibs.factor +++ b/ffi/cocoa/nibs/nibs.factor @@ -6,15 +6,15 @@ in: cocoa.nibs : load-nib ( name -- ) NSBundle - swap NSApp -> loadNibNamed:owner: + swap NSApp send\ loadNibNamed:owner: drop ; : nib-named ( nib-name -- anNSNib ) - NSNib -> alloc swap f -> initWithNibNamed:bundle: - dup [ -> autorelease ] when ; + NSNib send\ alloc swap f send\ initWithNibNamed:bundle: + dup [ send\ autorelease ] when ; : nib-objects ( anNSNib -- objects/f ) f - { void* } [ -> instantiateNibWithOwner:topLevelObjects: ] + { void* } [ send\ instantiateNibWithOwner:topLevelObjects: ] with-out-parameters swap [ CF>array ] [ drop f ] if ; diff --git a/ffi/cocoa/pasteboard/pasteboard.factor b/ffi/cocoa/pasteboard/pasteboard.factor index 1e4ca48000..51feedbc2e 100644 --- a/ffi/cocoa/pasteboard/pasteboard.factor +++ b/ffi/cocoa/pasteboard/pasteboard.factor @@ -8,19 +8,19 @@ in: cocoa.pasteboard CONSTANT: NSStringPboardType "NSStringPboardType" ; : pasteboard-string? ( pasteboard -- ? ) - NSStringPboardType swap -> types CF>string-array member? ; + NSStringPboardType swap send\ types CF>string-array member? ; : pasteboard-string ( pasteboard -- str ) - NSStringPboardType -> stringForType: + NSStringPboardType send\ stringForType: dup [ CF>string ] when ; : set-pasteboard-types ( seq pasteboard -- ) - swap -> autorelease f -> declareTypes:owner: drop ; + swap send\ autorelease f send\ declareTypes:owner: drop ; : set-pasteboard-string ( str pasteboard -- ) NSStringPboardType dup 1array pick set-pasteboard-types - [ swap ] dip -> setString:forType: drop ; + [ swap ] dip send\ setString:forType: drop ; : pasteboard-error ( error -- f ) "Pasteboard does not hold a string" diff --git a/ffi/cocoa/plists/plists.factor b/ffi/cocoa/plists/plists.factor index 57210deafc..2a370f0dae 100644 --- a/ffi/cocoa/plists/plists.factor +++ b/ffi/cocoa/plists/plists.factor @@ -8,10 +8,10 @@ core-foundation.utilities fry io.backend kernel macros math quotations sequences ; in: cocoa.plists -: >plist ( value -- plist ) >cf -> autorelease ; +: >plist ( value -- plist ) >cf send\ autorelease ; : write-plist ( assoc path -- ) - [ >plist ] [ normalize-path ] bi* 0 -> writeToFile:atomically: + [ >plist ] [ normalize-path ] bi* 0 send\ writeToFile:atomically: [ "write-plist failed" throw ] unless ; defer: plist> @@ -19,30 +19,30 @@ defer: plist> ) ( NSNumber -- number ) - dup -> doubleValue dup >integer = - [ -> longLongValue ] [ -> doubleValue ] if ; + dup send\ doubleValue dup >integer = + [ send\ longLongValue ] [ send\ doubleValue ] if ; : (plist-NSData>) ( NSData -- byte-array ) - dup -> length [ -> getBytes: ] keep ; + dup send\ length [ send\ getBytes: ] keep ; : (plist-NSArray>) ( NSArray -- vector ) [ plist> ] NSFastEnumeration-map ; : (plist-NSDictionary>) ( NSDictionary -- hashtable ) - dup [ [ nip ] [ -> valueForKey: ] 2bi [ plist> ] bi@ ] with + dup [ [ nip ] [ send\ valueForKey: ] 2bi [ plist> ] bi@ ] with NSFastEnumeration>hashtable ; : (read-plist) ( NSData -- id ) NSPropertyListSerialization swap kCFPropertyListImmutable f { void* } - [ -> propertyListFromData:mutabilityOption:format:errorDescription: ] + [ send\ propertyListFromData:mutabilityOption:format:errorDescription: ] with-out-parameters - [ -> release "read-plist failed" throw ] when* ; + [ send\ release "read-plist failed" throw ] when* ; MACRO: objc-class-case ( alist -- quot ) [ dup callable? - [ first2 [ '[ dup _ execute -> isKindOfClass: c-bool> ] ] dip 2array ] + [ first2 [ '[ dup _ execute send\ isKindOfClass: c-bool> ] ] dip 2array ] unless ] map '[ _ cond ] ; @@ -63,5 +63,5 @@ ERROR: invalid-plist-object object ; : read-plist ( path -- assoc ) normalize-path - NSData swap -> dataWithContentsOfFile: + NSData swap send\ dataWithContentsOfFile: [ (read-plist) plist> ] [ "read-plist failed" throw ] if* ; diff --git a/frameworks/ui/backend/cocoa/cocoa.factor b/frameworks/ui/backend/cocoa/cocoa.factor index 1921d37c60..f145d0bd89 100644 --- a/frameworks/ui/backend/cocoa/cocoa.factor +++ b/frameworks/ui/backend/cocoa/cocoa.factor @@ -44,17 +44,17 @@ PIXEL-FORMAT-ATTRIBUTE-TABLE: NSOpenGLPFA { } H{ M: cocoa-ui-backend (make-pixel-format) nip >NSOpenGLPFA-int-array - NSOpenGLPixelFormat -> alloc swap -> initWithAttributes: ; + NSOpenGLPixelFormat send\ alloc swap send\ initWithAttributes: ; M: cocoa-ui-backend (free-pixel-format) - handle>> -> release ; + handle>> send\ release ; M: cocoa-ui-backend (pixel-format-attribute) [ handle>> ] [ >NSOpenGLPFA ] bi* [ drop f ] [ first - { int } [ swap 0 -> getValues:forAttribute:forVirtualScreen: ] + { int } [ swap 0 send\ getValues:forAttribute:forVirtualScreen: ] with-out-parameters ] if-empty ; @@ -69,7 +69,7 @@ M: pasteboard set-clipboard-contents handle>> set-pasteboard-string ; : init-clipboard ( -- ) - NSPasteboard -> generalPasteboard + NSPasteboard send\ generalPasteboard clipboard set-global selection set-global ; @@ -82,32 +82,32 @@ M: pasteboard set-clipboard-contents ! after register-window. dup { 0 0 } = [ drop - ui-windows get-global length 1 <= [ -> center ] [ + ui-windows get-global length 1 <= [ send\ center ] [ ui-windows get-global last second window-loc>> - dupd first2 -> cascadeTopLeftFromPoint: - -> setFrameTopLeftPoint: + dupd first2 send\ cascadeTopLeftFromPoint: + send\ setFrameTopLeftPoint: ] if - ] [ first2 -> setFrameTopLeftPoint: ] if ; + ] [ first2 send\ setFrameTopLeftPoint: ] if ; M: cocoa-ui-backend set-title ( string world -- ) - handle>> window>> swap -> setTitle: ; + handle>> window>> swap send\ setTitle: ; : enter-fullscreen ( world -- ) handle>> view>> - NSScreen -> mainScreen - f -> enterFullScreenMode:withOptions: + NSScreen send\ mainScreen + f send\ enterFullScreenMode:withOptions: drop ; : exit-fullscreen ( world -- ) handle>> - [ view>> f -> exitFullScreenModeWithOptions: ] - [ [ window>> ] [ view>> ] bi -> makeFirstResponder: drop ] bi ; + [ view>> f send\ exitFullScreenModeWithOptions: ] + [ [ window>> ] [ view>> ] bi send\ makeFirstResponder: drop ] bi ; M: cocoa-ui-backend (set-fullscreen) ( world ? -- ) [ enter-fullscreen ] [ exit-fullscreen ] if ; M: cocoa-ui-backend (fullscreen?) ( world -- ? ) - handle>> view>> -> isInFullScreenMode zero? not ; + handle>> view>> send\ isInFullScreenMode zero? not ; ! XXX: Until someone tests OSX with a tiling window manager, ! dialog-window is the same as normal-title-window @@ -127,8 +127,8 @@ CONSTANT: window-control>styleMask window-controls>> window-control>styleMask symbols>flags ; : make-context-transparent ( view -- ) - -> openGLContext - 0 int NSOpenGLCPSurfaceOpacity -> setValues:forParameter: ; + send\ openGLContext + 0 int NSOpenGLCPSurfaceOpacity send\ setValues:forParameter: ; M:: cocoa-ui-backend (open-window) ( world -- ) world [ [ dim>> ] dip ] @@ -136,27 +136,27 @@ M:: cocoa-ui-backend (open-window) ( world -- ) world window-controls>> textured-background swap member-eq? [ view make-context-transparent ] when view world [ world>NSRect ] [ world>styleMask ] bi :> window - view -> release + view send\ release world view register-window window world window-loc>> auto-position world window save-position window install-window-delegate view window world handle<< - window f -> makeKeyAndOrderFront: + window f send\ makeKeyAndOrderFront: t world active?<< ; M: cocoa-ui-backend (close-window) ( handle -- ) [ - view>> dup -> isInFullScreenMode zero? + view>> dup send\ isInFullScreenMode zero? [ drop ] - [ f -> exitFullScreenModeWithOptions: ] if - ] [ window>> -> release ] bi ; + [ f send\ exitFullScreenModeWithOptions: ] if + ] [ window>> send\ release ] bi ; M: cocoa-ui-backend (grab-input) ( handle -- ) 0 CGAssociateMouseAndMouseCursorPosition drop CGMainDisplayID CGDisplayHideCursor drop - window>> -> frame CGRect>rect rect-center - NSScreen -> screens 0 -> objectAtIndex: -> frame CGRect-h + window>> send\ frame CGRect>rect rect-center + NSScreen send\ screens 0 send\ objectAtIndex: send\ frame CGRect-h [ drop first ] [ swap second - ] 2bi [ GetCurrentButtonState zero? not ] [ yield ] while CGWarpMouseCursorPosition drop ; @@ -169,35 +169,35 @@ M: cocoa-ui-backend (ungrab-input) ( handle -- ) M: cocoa-ui-backend close-window ( gadget -- ) find-world [ handle>> [ - window>> -> close + window>> send\ close ] when* ] when* ; M: cocoa-ui-backend raise-window* ( world -- ) handle>> [ - window>> dup f -> orderFront: -> makeKeyWindow - NSApp 1 -> activateIgnoringOtherApps: + window>> dup f send\ orderFront: send\ makeKeyWindow + NSApp 1 send\ activateIgnoringOtherApps: ] when* ; M: window-handle select-gl-context ( handle -- ) - view>> -> openGLContext -> makeCurrentContext ; + view>> send\ openGLContext send\ makeCurrentContext ; M: window-handle flush-gl-context ( handle -- ) - view>> -> openGLContext -> flushBuffer ; + view>> send\ openGLContext send\ flushBuffer ; M: cocoa-ui-backend beep ( -- ) NSBeep ; M: cocoa-ui-backend resize-window - [ handle>> window>> ] [ first2 ] bi* -> setContentSize: ; + [ handle>> window>> ] [ first2 ] bi* send\ setContentSize: ; M: cocoa-ui-backend system-alert - NSAlert -> alloc -> init -> autorelease [ + NSAlert send\ alloc send\ init send\ autorelease [ { - [ swap -> setInformativeText: ] - [ swap -> setMessageText: ] - [ "OK" -> addButtonWithTitle: drop ] - [ -> runModal drop ] + [ swap send\ setInformativeText: ] + [ swap send\ setMessageText: ] + [ "OK" send\ addButtonWithTitle: drop ] + [ send\ runModal drop ] } cleave ] [ 2drop ] if* ; @@ -223,7 +223,7 @@ M: cocoa-ui-backend (with-ui) stop-io-thread init-thread-timer reset-thread-timer - NSApp -> run + NSApp send\ run ] ui-running ] with-cocoa ; diff --git a/frameworks/ui/backend/cocoa/tools/tools.factor b/frameworks/ui/backend/cocoa/tools/tools.factor index 0a4dcd5901..696515ca06 100644 --- a/frameworks/ui/backend/cocoa/tools/tools.factor +++ b/frameworks/ui/backend/cocoa/tools/tools.factor @@ -12,7 +12,7 @@ in: ui.backend.cocoa.tools : finder-run-files ( alien -- ) CF>string-array listener-run-files NSApp NSApplicationDelegateReplySuccess - -> replyToOpenOrPrint: ; + send\ replyToOpenOrPrint: ; : menu-run-files ( -- ) open-panel [ listener-run-files ] when* ; @@ -71,8 +71,8 @@ CLASS: FactorServiceProvider < NSObject : register-services ( -- ) NSApp - FactorServiceProvider -> alloc -> init - -> setServicesProvider: ; + FactorServiceProvider send\ alloc send\ init + send\ setServicesProvider: ; FUNCTION: void NSUpdateDynamicServices ( ) ; diff --git a/frameworks/ui/backend/cocoa/views/views.factor b/frameworks/ui/backend/cocoa/views/views.factor index 3eec627b98..be392fc2c6 100644 --- a/frameworks/ui/backend/cocoa/views/views.factor +++ b/frameworks/ui/backend/cocoa/views/views.factor @@ -16,8 +16,8 @@ in: ui.backend.cocoa.views ! Issue #1453 : button ( event -- n ) - ! Cocoa -> Factor UI button mapping - -> buttonNumber { + ! Cocoa send\ Factor UI button mapping + send\ buttonNumber { { 0 [ 1 ] } { 1 [ 3 ] } { 2 [ 2 ] } @@ -68,11 +68,11 @@ CONSTANT: key-codes } ; : key-code ( event -- string ? ) - dup -> keyCode key-codes at - [ t ] [ -> charactersIgnoringModifiers CF>string f ] ?if ; + dup send\ keyCode key-codes at + [ t ] [ send\ charactersIgnoringModifiers CF>string f ] ?if ; : event-modifiers ( event -- modifiers ) - -> modifierFlags modifiers modifier ; + send\ modifierFlags modifiers modifier ; : key-event>gesture ( event -- modifiers keycode action? ) [ event-modifiers ] [ key-code ] bi ; @@ -81,7 +81,7 @@ CONSTANT: key-codes swap window [ propagate-key-gesture ] [ drop ] if* ; : interpret-key-event ( view event -- ) - NSArray swap -> arrayWithObject: -> interpretKeyEvents: ; + NSArray swap send\ arrayWithObject: send\ interpretKeyEvents: ; : send-key-down-event ( view event -- ) [ key-event>gesture send-key-event ] @@ -109,7 +109,7 @@ CONSTANT: key-codes [ send-button-up ] [ 2drop ] if* ; : send-scroll$ ( view event -- ) - [ nip [ -> deltaX ] [ -> deltaY ] bi [ neg ] bi@ 2array ] + [ nip [ send\ deltaX ] [ send\ deltaY ] bi [ neg ] bi@ 2array ] [ mouse-location ] [ drop window ] 2tri @@ -164,15 +164,15 @@ CLASS: FactorView < NSOpenGLView COCOA-PROTOCOL: NSTextInput METHOD: void prepareOpenGL [ - self SUPER-> prepareOpenGL + self super-send\ prepareOpenGL - self SEL: setWantsBestResolutionOpenGLSurface: - -> respondsToSelector: c-bool> [ + self sel\ setWantsBestResolutionOpenGLSurface: + send\ respondsToSelector: c-bool> [ - self SEL: setWantsBestResolutionOpenGLSurface: 1 + self sel\ setWantsBestResolutionOpenGLSurface: 1 void f "objc_msgSend" { id SEL char } alien-invoke - self SEL: backingScaleFactor + self sel\ backingScaleFactor double f "objc_msgSend" { id SEL } alien-invoke dup 1.0 > [ @@ -222,8 +222,8 @@ CLASS: FactorView < NSOpenGLView METHOD: char validateUserInterfaceItem: id event [ self window [ - event -> action utf8 alien>string validate-action - [ >c-bool ] [ drop self event SUPER-> validateUserInterfaceItem: ] if + event send\ action utf8 alien>string validate-action + [ >c-bool ] [ drop self event super-send\ validateUserInterfaceItem: ] if ] [ 0 ] if* ] ; @@ -255,7 +255,7 @@ CLASS: FactorView < NSOpenGLView METHOD: void magnifyWithEvent: id event [ self event - dup -> deltaZ sgn { + dup send\ deltaZ sgn { { 1 [ zoom-in-action send-action$ ] } { -1 [ zoom-out-action send-action$ ] } { 0 [ 2drop ] } @@ -265,12 +265,12 @@ CLASS: FactorView < NSOpenGLView METHOD: void swipeWithEvent: id event [ self event - dup -> deltaX sgn { + dup send\ deltaX sgn { { 1 [ left-action send-action$ ] } { -1 [ right-action send-action$ ] } { 0 [ - dup -> deltaY sgn { + dup send\ deltaY sgn { { 1 [ up-action send-action$ ] } { -1 [ down-action send-action$ ] } { 0 [ 2drop ] } @@ -330,7 +330,7 @@ CLASS: FactorView < NSOpenGLView METHOD: void unmarkText [ ] ; - METHOD: id validAttributesForMarkedText [ NSArray -> array ] ; + METHOD: id validAttributesForMarkedText [ NSArray send\ array ] ; METHOD: id attributedSubstringFromRange: NSRange range [ f ] ; @@ -353,7 +353,7 @@ CLASS: FactorView < NSOpenGLView METHOD: id initWithFrame: NSRect frame pixelFormat: id pixelFormat [ - self frame pixelFormat SUPER-> initWithFrame:pixelFormat: + self frame pixelFormat super-send\ initWithFrame:pixelFormat: dup dup add-resize-observer ] ; @@ -362,41 +362,41 @@ CLASS: FactorView < NSOpenGLView METHOD: void dealloc [ self remove-observer - self SUPER-> dealloc + self super-send\ dealloc ] ; ; : sync-refresh-to-screen ( GLView -- ) - -> openGLContext -> CGLContextObj NSOpenGLCPSwapInterval 1 int + send\ openGLContext send\ CGLContextObj NSOpenGLCPSwapInterval 1 int CGLSetParameter drop ; : ( dim pixel-format -- view ) [ FactorView ] 2dip [ sync-refresh-to-screen ] keep ; : save-position ( world window -- ) - -> frame CGRect-top-left 2array >>window-loc drop ; + send\ frame CGRect-top-left 2array >>window-loc drop ; CLASS: FactorWindowDelegate < NSObject METHOD: void windowDidMove: id notification [ - notification -> object -> contentView window - [ notification -> object save-position ] when* + notification send\ object send\ contentView window + [ notification send\ object save-position ] when* ] ; METHOD: void windowDidBecomeKey: id notification [ - notification -> object -> contentView window + notification send\ object send\ contentView window [ focus-world ] when* ] ; METHOD: void windowDidResignKey: id notification [ forget-rollover - notification -> object -> contentView :> view + notification send\ object send\ contentView :> view view window :> window window [ - view -> isInFullScreenMode 0 = + view send\ isInFullScreenMode 0 = [ window unfocus-world ] when ] when ] ; @@ -405,17 +405,17 @@ CLASS: FactorWindowDelegate < NSObject METHOD: void windowWillClose: id notification [ - notification -> object -> contentView + notification send\ object send\ contentView [ window ungraft ] [ unregister-window ] bi ] ; METHOD: void windowDidChangeBackingProperties: id notification [ - notification -> object dup SEL: backingScaleFactor - -> respondsToSelector: c-bool> [ + notification send\ object dup sel\ backingScaleFactor + send\ respondsToSelector: c-bool> [ - SEL: backingScaleFactor + sel\ backingScaleFactor double f "objc_msgSend" { id SEL } alien-invoke [ [ 1.0 > ] keep f ? gl-scale-factor set-global ] diff --git a/libs/images/loader/cocoa/cocoa.factor b/libs/images/loader/cocoa/cocoa.factor index fb1c1526da..4d83b80e92 100644 --- a/libs/images/loader/cocoa/cocoa.factor +++ b/libs/images/loader/cocoa/cocoa.factor @@ -15,9 +15,9 @@ os macosx? [ : ( byte-array -- image-rep ) [ NSBitmapImageRep ] dip - -> autorelease - -> imageRepWithData: - -> CGImage ; + send\ autorelease + send\ imageRepWithData: + send\ CGImage ; :: CGImage>image ( image -- image ) image CGImageGetWidth :> w @@ -29,7 +29,7 @@ os macosx? [ : image>CGImage ( image -- image ) [ bitmap>> ] [ dim>> first2 ] bi 8 pick 4 * bitmap-color-space bitmap-flags - CGBitmapContextCreate -> autorelease + CGBitmapContextCreate send\ autorelease CGBitmapContextCreateImage ; M: ns-image stream>image* diff --git a/tools/tools/deploy/macosx/macosx.factor b/tools/tools/deploy/macosx/macosx.factor index fb533d7176..9df7b2d137 100644 --- a/tools/tools/deploy/macosx/macosx.factor +++ b/tools/tools/deploy/macosx/macosx.factor @@ -71,9 +71,9 @@ in: tools.deploy.macosx deploy-name get ".app" append ; : show-in-finder ( path -- ) - [ NSWorkspace -> sharedWorkspace ] + [ NSWorkspace send\ sharedWorkspace ] [ normalize-path [ ] [ parent-directory ] bi ] bi* - -> selectFile:inFileViewerRootedAtPath: drop ; + send\ selectFile:inFileViewerRootedAtPath: drop ; : ?show-in-finder ( path -- ) open-directory-after-deploy? get [ show-in-finder ] [ drop ] if ; diff --git a/tools/tools/deploy/test/14/14.factor b/tools/tools/deploy/test/14/14.factor index 20ba8a9d5b..22b444026c 100644 --- a/tools/tools/deploy/test/14/14.factor +++ b/tools/tools/deploy/test/14/14.factor @@ -15,8 +15,8 @@ CLASS: Bar < NSObject ; : main ( -- ) - Bar -> alloc -> init - S{ CGRect f S{ CGPoint f 1.0 2.0 } S{ CGSize f 3.0 4.0 } } -> bar: + Bar send\ alloc send\ init + S{ CGRect f S{ CGPoint f 1.0 2.0 } S{ CGSize f 3.0 4.0 } } send\ bar: 10.0 assert= ; main: main