mGSTEP
 
F A Q    |    Graphics    |    Notes    |    LLVM    |    Demos    |    Home   
 
2.00 - 2.07
  • NSSound implemented using OpenAL with plug-ins for wav, snd/au and ogg-vorbis formats.
  • Graphics rasterization implemented in mini CoreGraphics.
  • Enhanced implementations of NSURL and the URL loading classes.
  • Basic implementations of NSLocale and NSFormatter classes.
  • Image, compression and TLS library dependencies moved into optional plug-ins.
  • Simple font glyph substitution for CJK text.
1.57 - 1.94
  • NSInvocation rewrite based on libffi (replaces ffcall and gcc built-ins).
  • Elastic scrolling in the Appkit.
  • NSPointerArray implementation.
  • Elimination of AppKit backend libraries.
  • NSButton animation and CG Context improvements.
  • Optional TrueType font support via integrated FreeType derivative.
  • Optional Cairo graphics in the X11 AppKit.
  • Overlay scrollers and improvements to the CG Layer implementation.
  • CGPath implementation and a rewrite of NSBezierPath around it.
  • Internal C frameworks extracted into discrete components: CoreFoundation, CoreGraphics, Security.
  • Initial support for building with LLVM and Libobjc2 (see LLVM notes).
  • Color management improvements.
  • OpenSSL support added to the URL loading classes (mini Security Framework API implementation).
  • UTF-8 decoding added to string rendering primitive functions.
  • NSData Base64 encoding fixes and a unit test.
  • Obj-C to C bridge improvements allow C framework objects to be stored in Obj-C collection classes.
  • AppKit support for contextual menus and a horizontal main menu.
  • Support for the new GCC Objective-C runtime API nomenclature.
  • Implementations of NSUndoManager and NSJSONSerialization.
  • NIB archive support back-ported from mySTEP.
  • Foundation classes updated to comply with Apple's 64-bit definitions.
  • NSRunLoop extension methods replaced with CoreFoundation functions.
  • Gradient and shading support added to CoreGraphics implementation.
Errata
  • Detection of AppKit's inLiveResize requires Luz Window Manager.
  • Cursor busy state (spinning color wheel) requires Luz Window Manager.
  • No GUI builder so NIB archives must be created and edited with Apple's Xcode on OS X.
  • Integrated FreeType does not allow applications to share glyphs.
  • CG shader rendering code requires 24 or 32 bit screen depths.