changelog.txt 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213
  1. libRocket changelog
  2. v1.2.1
  3. 1 December 2010
  4. Features:
  5. * Added SFML sample (Thanks to Nuno Silva)
  6. * Added CMake files for Mac, Linux and Windows (not fully tested on Windows, Thanks to Hilton Medeiro)
  7. * Added Xcode project for iOS and OSX
  8. * Upgraded to Freetype 2.4.3
  9. * Upgraded Ogre sample for Ogre 1.7.2
  10. API Changes:
  11. * All handle types have been changed for void*'s to uintptr_t's for better 64bit support
  12. Fixes:
  13. * Fixed stack overflow in treeview
  14. * Fixed Rocket::Core::Variant trample in 64bit version, due to Rocket::Core::String being bigger than 16 bytes (Thanks to Hilton Medeiro)
  15. * Fixed 64bit pointer to string conversion used in the Font system
  16. v1.2.0
  17. 8th September 2010
  18. ==========================================
  19. Features:
  20. * Licensing requirements removed, entire library switched to MIT license
  21. * Upgraded to Freetype 2.4.1
  22. API Changes:
  23. * All of EMP::Core moved into Rocket::Core, except EMP::Data* which has moved into Rocket::Controls
  24. * License key removed.
  25. v1.1.3008
  26. 29th September 2009
  27. ==========================================
  28. Features:
  29. * Added the 'focus' property, which can be set to 'auto' (the default) or 'none'. Elements which are set to 'none' can never have focus.
  30. * Added the 'text-transform' property, which can be set to 'auto' (the default), 'uppercase' or 'lowercase'. It currently only supports transformations on ASCII characters.
  31. * Added the ClearStyleSheetCache() function to Rocket::Core::Factory.
  32. * Upgraded to Freetype 2.3.9.
  33. * Upgraded to Python 2.6.2.
  34. * Upgraded to Boost 1.40.0.
  35. Fixes:
  36. * Fixed a rounding error when offsetting an element with a relative position.
  37. * Fixed the Ogre3D sample to render properly with the Ogre's compositing system.
  38. * When an element is unparented, it is now also removed from its context's focus and hover chains if appropriate.
  39. v1.1.2979
  40. 29th October 2008
  41. ==========================================
  42. API changes:
  43. * The 'source_path' parameter has been removed from the Rocket::Core::RenderInterface::LoadTexture() function. Custom path concatenation is now achieved through the new JoinPath() function on Rocket::Core::SystemInterface (see below).
  44. Features:
  45. * Added the JoinPath() function to Rocket::Core::SystemInterface. This allows an application to customise the way a resource path is concatenated onto the path of the RML / RCSS document that specified it. It is an optional override, the default implementation simply adds the paths together and normalises the paths.
  46. * Installing a render interface into libRocket before initialisation through Rocket::Core::SetRenderInterface() is now optional. If one isn't specified, all contexts must have a custom render interface provided in Rocket::Core::CreateContext().
  47. * If a context has a custom render interface, textures used by that context will now be loaded and release through that context instead of the default context.
  48. * Changed the Ogre3D sample to more correctly support resource locations.
  49. * Upgraded libRocket Python to boost 1.36.
  50. * Text controls (text input fields and multi-line text areas) now support selection with the mouse or keyboard, and content can be copied and pasted from a clipboard.
  51. * The 'change' event dispatched by a scrollbar has been changed to 'scrollchange' to distinguish it from events sent by input elements.
  52. * Added the 'button' input type (ie, '<input type="button" ...'). Buttons can be disabled to prevent click and double-click events from being dispatched.
  53. Fixes:
  54. * Image elements now properly regenerate their geometry under DirectX.
  55. * Fixed a reference counting issue when unloading documents multiple times.
  56. * Added to-python by-value converters for Context, Element and ElementDocument.
  57. v1.1.2964
  58. 12th September 2008
  59. ==========================================
  60. Features:
  61. * Elements are now no longer hovered over if they're in a document that isn't modal while a modal document is open.
  62. * Contexts can now have a unique RenderInterface; pass the RenderInterface into the Rocket::Core::CreateContext() function.
  63. * The interface classes now have a virtual Release() function which is called when they are no longer required by any libRocket resources.
  64. * Added the treeview sample.
  65. * Ogre3D sample has been updated to work with Shoggoth (1.6).
  66. Fixes:
  67. * The behaviour of em-relative dimensions is now consistent across all scenarios.
  68. * Changing an element from relative to static position now removes the relative offset.
  69. * Clipping behaves more correctly.
  70. v1.1.2948
  71. 8th July 2008
  72. ==========================================
  73. Features:
  74. * ProcessKeyDown(), ProcessKeyUp(), ProcessTextInput() and ProcessMouseWheel() on Rocket::Core::Context now return the final propagation state of the event they generate (ie, true if the event was not consumed by an element, false if it was).
  75. Fixes:
  76. * Fixed Ogre sample's mouse wheel processing.
  77. * Numerous fixes to 'textarea' element.
  78. v1.1.2946
  79. 2nd July 2008
  80. ==========================================
  81. Features:
  82. * Added the 'OnLayout()' function to Rocket::Core::Element, which is called whenever the element is laid out.
  83. * Text input elements now dispatch the 'change' event every time they are changed, not just when enter is pressed.
  84. Fixes:
  85. * The select element now reformats its option elements whenever their contents are changed.
  86. * Texel offsets are properly catered for.
  87. * Fixed underline positions and thicknesses.
  88. v1.1.2937
  89. 5th June 2008
  90. ==========================================
  91. Fixes:
  92. * The selectvalue child element on a select are pseudo-classed 'checked' as appropriate, similarly to selectarrow.
  93. * Fixed minor issues with structural selectors.
  94. * Stability fixes for the dataselect element.
  95. * Fix to dropdowns adding elements in the wrong index if you passed in a 'before' of the second-to-last element (thanks to Ron Hashimshony).
  96. * Fix to a bug in the Ogre sample's key map (thanks for Ron Hashimshony).
  97. * Fixed a crash bug when setting a new 'src' attribute on an 'img' element.
  98. v1.1.2931
  99. 28th April 2008
  100. ==========================================
  101. Fixes:
  102. * Fixed VC8 build incorrectly linking against a VC9 lib (introduced in 2929 with VC9 fix).
  103. * HTML-coded characters are now processed properly in preformatted strings.
  104. v1.1.2929
  105. 22nd April 2008
  106. ==========================================
  107. Features:
  108. * Exposed Context::LoadDocumentFromMemory to Python
  109. Fixes:
  110. * Fixed a bug with specificities when merging style sheets.
  111. * Fixed incorrect clipping with nested elements.
  112. * Fixed incorrect layout when top-level elements cause scrolling overflow.
  113. * Fixed DataGrid incorrectly querying old data from a source in certain conditions
  114. * Fixed VC9 build, was still incorrectly referencing VC8 libs.
  115. * Fixed reference counting when cyclic dependencies occur with Python EventListeners.
  116. v1.1.2848
  117. 4th April 2008
  118. ==========================================
  119. Features:
  120. * Added Get/SetActiveTab() to ElementTabSet, exposed as .active_tab to Python.
  121. * Added GetHoverElement() to Rocket::Core::Context.
  122. * Added hover_element and root_element Python properties to contexts.
  123. * Exposed .SetClass and .IsClassSet to Python.
  124. * Upgraded to boost 1.35.
  125. Fixes:
  126. * Fixed Python reference leak when an error occured during an event dispatch.
  127. * Fixed a bug with specificities around rule ordering.
  128. * Fixed events not being passed down to the base element for datagridexpand elements.
  129. * Fixed mouse-over detection for clipped elements.
  130. * Child datagridrow elements are now hidden by default (introduced in 1.1).
  131. * Setting a new data source on a datagrid now clears all existing rows.
  132. v1.1.2744
  133. 25th March 2008
  134. ==========================================
  135. Features:
  136. * API change: RenderInterface changed; all references to 'Texture' class removed, replaced with TextureHandle and dimensions where appropriate.
  137. * API change: Texture class changed from simple structure to a more usable class with a shared TextureHandle. The handle and dimensions are now accessed with the GetHandle() and GetDimensions() functions.
  138. * API change: Removed the GetContext() function from the Python interface, use the rocket.contexts property instead (see below).
  139. * API change: Removed the attribute accessor on context.documents.
  140. * API change: Removed the 'text-shadow', 'text-shadow-x', 'text-shadow-y' and 'text-shadow-color' properties; text shadowing is now implemented with the font effect system.
  141. * Added the font effect system, for generating and applying effects to text.
  142. * Added the 'shadow' and 'outline' font effects.
  143. * Added the 'clone' value for the 'drag' property.
  144. * Added the LoadDocumentFromMemory() function on Rocket::Core::Context.
  145. * Added the Rocket::Core::ReleaseCompiledGeometries() functions and Rocket::Core::ReleaseTextures() functions. These will force libRocket to release its assets, causing a reload when next used.
  146. * Added the Rocket::Core::GetNumContexts() and Rocket::Core::GetContext(int index) functions for enumerating dynamically-created contexts.
  147. * Added the rocket.contexts object for accessing and enumerating contexts with Python. Individual contexts are accessed from the object using the array operator with either a string (looking up by name) or integer (looking up by index).
  148. * Rocket::Core::Plugin has three new functions, OnDocumentOpen(), OnDocumentLoad(), OnDocumentUnload().
  149. * Exposed Rocket::Core::Log::Message to Python, accessible from rocket.Log().
  150. * Debugger's event log now adds lines top to bottom, is resizable and supports enabling/disabling of different log types.
  151. * Python functions bound with AddEventListener() now correctly get their document, event and self global variables.
  152. * Error messages are more detailed.
  153. * Added rowadd and rowremove events to DataGrid, exposed a .rows[] accessor to python interface of DataGrid.
  154. * Added GetParentRelativeIndex(), GetTableRelativeIndex(), GetParentRow(), GetParentGrid() functions to DataGridRow, and .parent_relative_index, .table_relative_index, .parent_row and .parent_grid to Python interface of DataGridRow.
  155. * Enhanced DropDownSelect, now supports unselectable rows (thanks to Ron Hashimshony).
  156. Fixes:
  157. * Fix to Python's AddEventListener when called with a free function, was causing warning message.
  158. * Fix to Python's AddEventListener so that the 3rd parameter is indeed optional as per documentation.
  159. * Initialising the C++ controls library AFTER initialising Python will no longer cause the controls to be inaccessible from Python.
  160. * Fixed a bug with the specificity of rules using pseudo-classes.
  161. * Fixed the Ogre3D sample for use when rendering shadows (thanks to spacedude).
  162. v1.0.2619
  163. 7th Feburary 2008
  164. ==========================================
  165. * API change: LoadDocument(), CreateDocument() and LoadMouseCursor() now return documents with a reference owned by the caller; be sure to update your document loading code to remove the reference as appropriate!
  166. * API change: GetID() and SetID() renamed to GetId() and SetId() to maintain consistency.
  167. * Fixed a bug with resizing contexts.
  168. * The 'handle' tag now supports a move_target of "#self" to reference itself.
  169. * The 'img' tag supports the 'coords' attribute for specifying a rectangular region of the source texture to render.
  170. * Debugger log window now has support for a horizontal scrollbar.
  171. * libRocket now compiles cleanly with level 4 warnings under Visual Studio.
  172. * Added the 'drag' tutorial.
  173. v1.0.2582
  174. 18th January 2008
  175. ==========================================
  176. * Added support for non anti-aliased fonts.
  177. * Improved compatability with STL libraries.
  178. * Improved error reporting when using Python data sources.
  179. v1.0.2535
  180. 9th January 2008
  181. ==========================================
  182. * Initial release.