List of changes that impact user-code (since 1.53 release)

The PlatformUtilities class was a mess, and has been zapped out of existence. The collection of random functions that had accumulated in there have been moved to better homes.

So:

  • the win32 registry functions have moved into a new class called “WindowsRegistry”
  • The OSX CFString conversion methods have moved directly into the String class.
  • The OSX file type, bundle, etc functions have moved into the File class.
  • The DLL loading functions have moved into a new, much improved “DynamicLibrary” class, and are now available on OSX too.
  • The win32 module handle and command-line param functions have moved into the Process class.
  • The FSRef and fpuReset functions are defunct and have been removed. If you were using these in legacy code, just grab your own copy of them from the old codebase, they’re only tiny functions and can be easily pasted-in.
  • getOSXMinorVersionNumber has moved into SystemStats
  • beep() has been removed - LookAndFeel::playAlertSound already did the same job, so you should use that directly instead.
  • openDocument and launchEmailWithAttachments have moved into the Process class.

Having added some code to handle complex script layout using CoreText and DirectWrite, I’ve refactored the TextLayout class. It still does a fairly similar job, but has some different methods, and works alongside the AttributedString class now to build up multi-font strings.

(I doubt if many people were using TextLayout anyway, but just letting you know…)