changelog.txt 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194
  1. libRocket changelog
  2. v1.2.0
  3. 8th September 2010
  4. ==========================================
  5. Features:
  6. * Licensing requirements removed, entire library switched to MIT license
  7. API Changes:
  8. * All of EMP::Core moved into Rocket::Core, except EMP::Data* which has moved into Rocket::Controls
  9. * License key removed.
  10. v1.1.3008
  11. 29th September 2009
  12. ==========================================
  13. Features:
  14. * Added the 'focus' property, which can be set to 'auto' (the default) or 'none'. Elements which are set to 'none' can never have focus.
  15. * Added the 'text-transform' property, which can be set to 'auto' (the default), 'uppercase' or 'lowercase'. It currently only supports transformations on ASCII characters.
  16. * Added the ClearStyleSheetCache() function to Rocket::Core::Factory.
  17. * Upgraded to Freetype 2.39.
  18. * Upgraded to Python 2.6.2.
  19. * Upgraded to Boost 1.40.0.
  20. Fixes:
  21. * Fixed a rounding error when offsetting an element with a relative position.
  22. * Fixed the Ogre3D sample to render properly with the Ogre's compositing system.
  23. * When an element is unparented, it is now also removed from its context's focus and hover chains if appropriate.
  24. v1.1.2979
  25. 29th October 2008
  26. ==========================================
  27. API changes:
  28. * 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).
  29. Features:
  30. * 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.
  31. * 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().
  32. * 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.
  33. * Changed the Ogre3D sample to more correctly support resource locations.
  34. * Upgraded libRocket Python to boost 1.36.
  35. * 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.
  36. * The 'change' event dispatched by a scrollbar has been changed to 'scrollchange' to distinguish it from events sent by input elements.
  37. * Added the 'button' input type (ie, '<input type="button" ...'). Buttons can be disabled to prevent click and double-click events from being dispatched.
  38. Fixes:
  39. * Image elements now properly regenerate their geometry under DirectX.
  40. * Fixed a reference counting issue when unloading documents multiple times.
  41. * Added to-python by-value converters for Context, Element and ElementDocument.
  42. v1.1.2964
  43. 12th September 2008
  44. ==========================================
  45. Features:
  46. * Elements are now no longer hovered over if they're in a document that isn't modal while a modal document is open.
  47. * Contexts can now have a unique RenderInterface; pass the RenderInterface into the Rocket::Core::CreateContext() function.
  48. * The interface classes now have a virtual Release() function which is called when they are no longer required by any libRocket resources.
  49. * Added the treeview sample.
  50. * Ogre3D sample has been updated to work with Shoggoth (1.6).
  51. Fixes:
  52. * The behaviour of em-relative dimensions is now consistent across all scenarios.
  53. * Changing an element from relative to static position now removes the relative offset.
  54. * Clipping behaves more correctly.
  55. v1.1.2948
  56. 8th July 2008
  57. ==========================================
  58. Features:
  59. * 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).
  60. Fixes:
  61. * Fixed Ogre sample's mouse wheel processing.
  62. * Numerous fixes to 'textarea' element.
  63. v1.1.2946
  64. 2nd July 2008
  65. ==========================================
  66. Features:
  67. * Added the 'OnLayout()' function to Rocket::Core::Element, which is called whenever the element is laid out.
  68. * Text input elements now dispatch the 'change' event every time they are changed, not just when enter is pressed.
  69. Fixes:
  70. * The select element now reformats its option elements whenever their contents are changed.
  71. * Texel offsets are properly catered for.
  72. * Fixed underline positions and thicknesses.
  73. v1.1.2937
  74. 5th June 2008
  75. ==========================================
  76. Fixes:
  77. * The selectvalue child element on a select are pseudo-classed 'checked' as appropriate, similarly to selectarrow.
  78. * Fixed minor issues with structural selectors.
  79. * Stability fixes for the dataselect element.
  80. * 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).
  81. * Fix to a bug in the Ogre sample's key map (thanks for Ron Hashimshony).
  82. * Fixed a crash bug when setting a new 'src' attribute on an 'img' element.
  83. v1.1.2931
  84. 28th April 2008
  85. ==========================================
  86. Fixes:
  87. * Fixed VC8 build incorrectly linking against a VC9 lib (introduced in 2929 with VC9 fix).
  88. * HTML-coded characters are now processed properly in preformatted strings.
  89. v1.1.2929
  90. 22nd April 2008
  91. ==========================================
  92. Features:
  93. * Exposed Context::LoadDocumentFromMemory to Python
  94. Fixes:
  95. * Fixed a bug with specificities when merging style sheets.
  96. * Fixed incorrect clipping with nested elements.
  97. * Fixed incorrect layout when top-level elements cause scrolling overflow.
  98. * Fixed DataGrid incorrectly querying old data from a source in certain conditions
  99. * Fixed VC9 build, was still incorrectly referencing VC8 libs.
  100. * Fixed reference counting when cyclic dependencies occur with Python EventListeners.
  101. v1.1.2848
  102. 4th April 2008
  103. ==========================================
  104. Features:
  105. * Added Get/SetActiveTab() to ElementTabSet, exposed as .active_tab to Python.
  106. * Added GetHoverElement() to Rocket::Core::Context.
  107. * Added hover_element and root_element Python properties to contexts.
  108. * Exposed .SetClass and .IsClassSet to Python.
  109. * Upgraded to boost 1.35.
  110. Fixes:
  111. * Fixed Python reference leak when an error occured during an event dispatch.
  112. * Fixed a bug with specificities around rule ordering.
  113. * Fixed events not being passed down to the base element for datagridexpand elements.
  114. * Fixed mouse-over detection for clipped elements.
  115. * Child datagridrow elements are now hidden by default (introduced in 1.1).
  116. * Setting a new data source on a datagrid now clears all existing rows.
  117. v1.1.2744
  118. 25th March 2008
  119. ==========================================
  120. Features:
  121. * API change: RenderInterface changed; all references to 'Texture' class removed, replaced with TextureHandle and dimensions where appropriate.
  122. * 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.
  123. * API change: Removed the GetContext() function from the Python interface, use the rocket.contexts property instead (see below).
  124. * API change: Removed the attribute accessor on context.documents.
  125. * 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.
  126. * Added the font effect system, for generating and applying effects to text.
  127. * Added the 'shadow' and 'outline' font effects.
  128. * Added the 'clone' value for the 'drag' property.
  129. * Added the LoadDocumentFromMemory() function on Rocket::Core::Context.
  130. * 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.
  131. * Added the Rocket::Core::GetNumContexts() and Rocket::Core::GetContext(int index) functions for enumerating dynamically-created contexts.
  132. * 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).
  133. * Rocket::Core::Plugin has three new functions, OnDocumentOpen(), OnDocumentLoad(), OnDocumentUnload().
  134. * Exposed Rocket::Core::Log::Message to Python, accessible from rocket.Log().
  135. * Debugger's event log now adds lines top to bottom, is resizable and supports enabling/disabling of different log types.
  136. * Python functions bound with AddEventListener() now correctly get their document, event and self global variables.
  137. * Error messages are more detailed.
  138. * Added rowadd and rowremove events to DataGrid, exposed a .rows[] accessor to python interface of DataGrid.
  139. * 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.
  140. * Enhanced DropDownSelect, now supports unselectable rows (thanks to Ron Hashimshony).
  141. Fixes:
  142. * Fix to Python's AddEventListener when called with a free function, was causing warning message.
  143. * Fix to Python's AddEventListener so that the 3rd parameter is indeed optional as per documentation.
  144. * Initialising the C++ controls library AFTER initialising Python will no longer cause the controls to be inaccessible from Python.
  145. * Fixed a bug with the specificity of rules using pseudo-classes.
  146. * Fixed the Ogre3D sample for use when rendering shadows (thanks to spacedude).
  147. v1.0.2619
  148. 7th Feburary 2008
  149. ==========================================
  150. * 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!
  151. * API change: GetID() and SetID() renamed to GetId() and SetId() to maintain consistency.
  152. * Fixed a bug with resizing contexts.
  153. * The 'handle' tag now supports a move_target of "#self" to reference itself.
  154. * The 'img' tag supports the 'coords' attribute for specifying a rectangular region of the source texture to render.
  155. * Debugger log window now has support for a horizontal scrollbar.
  156. * libRocket now compiles cleanly with level 4 warnings under Visual Studio.
  157. * Added the 'drag' tutorial.
  158. v1.0.2582
  159. 18th January 2008
  160. ==========================================
  161. * Added support for non anti-aliased fonts.
  162. * Improved compatability with STL libraries.
  163. * Improved error reporting when using Python data sources.
  164. v1.0.2535
  165. 9th January 2008
  166. ==========================================
  167. * Initial release.