Version History

0.2.4:

  • Added a yEncEncoder class.
  • Added a SaveFileDialog class.
  • Added a Stream abstract class.
  • Added a FileStream class (64 bit stream with huge file support).
  • Added a BinaryBuffer class.
  • Added a FileDialog abstract class.
  • Added a GetChild function to the FileSystemItem object.
  • Added a GetSibling function to the FileSystemItem object.
  • Added a SetType function to the FileSystemItem class.
  • Added a SetCreator function to the FileSystemItem class.
  • Added a GetType function to the DocumentType class.
  • Added a Encoding enumeration to the String class.
  • The ThemeColor enumeration is now a inner enum of the Color class instead of being in global scope.
  • The FontStyle enumeration is now inner enum of the Font class instead of being in global scope.
  • The CalendarControlSpecialDaysType enumeration is now inner enum of the CalendarControl class instead of being in global scope.
  • The FileDialogFlags enumeration is now inner enum of the FileDialog class instead of being in global scope.
  • Added Mouse Cursor support (Can be seen in the examples where it now changes cursor correctly when entering and leaving edit fields).
  • Added another variation of the MessageBox function to the Application class.
  • Added a SetResizable function to the Window class.
  • Added a SetCloseBox function to the Window class.
  • Added a SetZoomBox function to the Window class.
  • Added a SetCollapseBox function to the Window class.
  • Added a SetMetal function to the Window class.
  • Added a Grayscale class from PictureEffects.

    0.2.1:

  • Added a GetRawData function to the Bitmap class.
  • Added a GetRowPadding function to the Bitmap class.
  • Added 3 new constructors to the Bitmap class, to support conversation from a Image to a Bitmap, and to support 8bit GrayScale bitmaps and 24bit Color bitmaps without a alpha channel.
  • Added a LoadJPEG function to the Image class.
  • Added a to the Application class a GetJPGImage function that loads a JPEG images from the Application Bundle.
  • Added a Einhugur PictureEffects Contrast Effect class.
  • Added a Einhugur PictureEffects Brightness Effect class.
  • Added a PictureEffects Example projects.

    0.2.0:

  • Added a DocumentType class with support for file extensions and old style MacOS type codes.
  • Added a OpenFileDialog class with support for opening single files, multiple files, invisible files and bundles.
  • Added a FileDialogFlags Enumeration.
  • Added a GetItem function to the FileSystemItem class.
  • Added a GetItemCount function to the FileSystemItem class.
  • Added a GetExtension function to the FileSystemItem class.
  • Added a another variation of the IndexOf function in the String class.
  • Fixed a problem in 2 variations of the IndexOf function in the String class.
  • Changed the Compare function on the String class to take one fewer parameters.
  • Added a GetVisible function to the Control base class.
  • Added a IsVisibleOnTop function to the Control base class.
  • Fixed a problem where MouseMove events were not correctly routed to controls that live on layered container controls.
  • Changed the GetBounds function on the Control base class to take a HIRect* instead of a Rect*.
  • Changed the SetBounds function on the Control base class to take a HIRect* instead of a Rect*.
  • The Window class and SheetWindow classes now use HIRect in their constructors instead of a Rect*.
  • Added XCode project Templates to be installed into Xcode.
  • Added XCode Window Templates to be installed into XCode.
  • Added XCode SheetWindow Templates to be installed into XCode.
  • Added documentation for over 200 items. (The documentation generator now only reports 598 undocumented items)

    0.1.9:

  • Added a PopupMenu control.
  • Added a PopupGroupBox control.
  • Added a TextView control.
  • Added a GetCFURLRef function to the FileSystemItem class.
  • Added a new Constructor to the FileSystemItem class.
  • Added a new Constructor to the Image class.
  • Added a LoadPNG static function to the Image class.
  • Added a to the Application class a GetPNGImage function that loads a PNG images from the Application Bundle.
  • Changed the AppendNoRetain function on the ObjectArray class to a Append function that takes passOwnership as parameter to be consistent with other parts of the framework.
  • Changed all control constructors to take a HIRect instead of a Rect* to make the code cleaner for users of the framework and to better support MacOS X floating point unit system.
  • Fixed a problem with the GetHeight function on the Image class.
  • Fixed a problem with one of the variation of DrawPicture on the Graphics class.
  • Greatly improved the documentation generator to include inherited functions and events on every class.
  • The framework now comes with 2 example projects, one very small and clean and the other which tests more but different features.
  • 0.1.7:

  • Added a SheetWindow class.
  • Added right click support to decrease the Month of the CalendarControl.
  • Added a LocalToWindowCoordinate function to the Control base class.
  • Added a WindowToLocalCoordinate function to the Control base class.
  • Added a LocalToScreenCoordinate function to the Window class.
  • Added a LocalToScreenCoordinate function to the Control base class.
  • Added a ContextMenu class.
  • Added ContextMenuClickEvent to the Canvas class.
  • Added ContextMenuClickEvent to the Window class.
  • Added a FileSystemItem class (very much initial version).
  • Added a GetExecutable function to the Application class.
  • Added two variations of GetString to the Application class which are to get localized strings from the Application Bundle.
  • Added a Exception class. (Does not inherit from the Reference counted object)
  • Added a InvalidFileException class.
  • Added a FileSystemException class.
  • Further improved the C++ dialect of the documentation generator.
  • 0.1.5:

  • Added a TabPanel control.
  • Added a TabPanelTab class.
  • Added a String class. (Does not inherit from Object)
  • Added a StringArray class.
  • All functions that were using CFStringRef now use the new String class.
  • Added a Locale class (All functions in it are static, does not inherit from Object)
  • Added IsActive function to the Window class.
  • Added a OpenEvent on the Window class.
  • Added a OpenEvent on the Control base class which all controls inherit.
  • Added SetAntialias function to the Graphics class.
  • Did a lot of work on the CalendarControl, it now looks like our REALbasic CalendarControl plugin and has a lot of functionality.
  • Added a new constructor to the Font class.
  • Added a FontStyle Enumeration type.
  • Added a ControlAnchor Enumeration type.
  • Added a PasswordTextBox control.
  • Added Set/GetReadOnly functions to the TextBox control.
  • MouseMove events are now only sent to windows that are active.
  • Changed the SetLockFlags to SetAnchorFlags.
  • Improved the documentation generator to write better C++ dialect.
  • Fixed a severe bug in the Date class.
  • Fixed a problem where MouseMove messages were not correct in all cases.

    0.1.2

  • Added MouseTracking on all Controls, MouseEnter, MouseMove and MouseLeave events.
  • Added a Date class.
  • Added a Font class.
  • Added a ThemeFont class.
  • Added SetAlpha and GetAlpha functions to the Window class.
  • Added SetMinSize function to the Window class.
  • Added SetMaxSize function to the Window class.
  • Added a Bitmap class.
  • Added a Image class.
  • Added SetAlpha function to the Graphics class.
  • Added two variations of DrawImage functions to the Graphics class.
  • Added two variations of SetFillColor functions to the Graphics class.
  • Added a DrawString function to the Graphics class.
  • Added a StringWidth function to the Graphics class.
  • The GetAt function in ObjectArray now Retains the reference.
  • Added PeekAt function in the ObjectArray class that does the same as GetAt except not Retaining the object.
  • Added more functionality to the ObjectCollection class.
  • Added a GetEnabled function to the Control class.
  • Added first blocks of the Einhugur CalendarControl (very much uncompleted because the framework is not mature enough yet).

    0.1.0:

  • Added a RadioButton control.
  • Added a Invisible RadioButtonGroup control.
  • Added a Slider control.
  • Added a RangeControl base class that Slider and Scrollbar controls inherit from.
  • Added Set and GetText functions to the GroupBox.
  • Added a ShowModal method to the Window class.
  • Added a SetBounds method to the Window class.
  • Added a ObjectCollection class (Initial implementation)
  • Default PushButtons now actually work from the Keyboard.
  • Cancel PushButtons now actually work from the Keyboard.
  • Added a EinhugurFramework.h file which is a master include file so that nothing else needs to be included from the end users application which reduces the code that the user needs to write.

    0.0.8:

  • Added a ProgressBar control. (Completed)
  • Added a ScrollBar control (Completed)
  • Added a IContainerControl Interface
  • The Window class now implements the IContainerControl Interface.
  • Added a AppendNoRetain method to the ObjectArray
  • User Controls that live in a Window no longer need to be released.
  • Added a ContainerControl class to support embedding controls.
  • Added a GroupBox that supports embedding of any controls.
  • Added Get and SetText to the Label control.
  • Added auto-generated documentation. (A little rough as our documentation generator is still learning how to parse C++ files to generate documentation from them.

    0.0.5:

  • Event model that uses delegates similar to what is in C#.
  • Application class (Initial stage)
  • Window class (Initial stage)
  • PushButton class (Close to complete)
  • TextBox class (Initial)
  • CheckBox class (Close to complete)
  • Label class (Close to complete)
  • Menu support (Currently via NIB file, this may or may not change since Menus in NIB files are quite good).
  • Graphics class (Very much initial)
  • Color class (Initial stage)
  • ObjectArray (Complete)