ObjCClass nbSessionChanged.
pool := (ObjCClass named: #NSAutoreleasePool) alloc init.
rect := ObjCNSRect fromRect: (0@0 corner: 800@600).��
window := (ObjCClass named: #NSWindow) alloc autorelease.
window
initWithContentRect: rect
styleMask: 15 "NSTitledWindowMask | NSClosableWindowMask | NSMiniaturizableWindowMask | NSResizableWindowMask"
backing: 2 "NSBackingStoreRetained"
defer: 0 "NO".
window setTitle: ((ObjCClass named: #NSString) stringWithCString: 'Hello' encoding: 1).
window makeKeyAndOrderFront: ObjCObject new. "nil"
graphicsPort := window graphicsContext graphicsPort.
surface := AthensQuartzSurface newContext: graphicsPort extent: 200@200.
paint := surface��
createRadialGradient: { 0->Color red . 1->Color green }��
center: 100@100
radius: 100.
surface drawDuring: [ :canvas |
surface clear.
canvas pathTransform loadIdentity.
canvas setPaint: paint.
canvas drawShape: (0@0 corner: 200@200) ].
So... pretty simple in fact :)