view CHANGES @ 569:466d76db9701

Some small code cleanups in the extensions. The SimpleXMLSerializer now makes use of exceptions.
author prock@33b003aa-7bff-0310-803a-e67f0ece8222
date Mon, 28 Jun 2010 19:28:53 +0000
parents 631a793fa978
children f648bfbae5fe
line wrap: on
line source


__/\\\\\\\\\\\\\\\___/\\\\\\\\\\\___/\\\\\\\\\\\\\\\___/\\\\\\\\\\\\\\\_        
 _\/\\\///////////___\/////\\\///___\/\\\///////////___\/\\\///////////__       
  _\/\\\__________________\/\\\______\/\\\______________\/\\\_____________      
   _\/\\\\\\\\\\\__________\/\\\______\/\\\\\\\\\\\______\/\\\\\\\\\\\_____     
    _\/\\\///////___________\/\\\______\/\\\///////_______\/\\\///////______    
     _\/\\\__________________\/\\\______\/\\\______________\/\\\_____________   
      _\/\\\__________________\/\\\______\/\\\______________\/\\\_____________  
       _\/\\\_______________/\\\\\\\\\\\__\/\\\______________\/\\\\\\\\\\\\\\\_ 
        _\///_______________\///////////___\///_______________\///////////////__

================================================================================
== 0.3.1 (March, 2010)                                                        ==
================================================================================

=== Engine ===
  * Updated a lot of the python source files to have the correct headers
  * Fixed SWIG wrappers that didn't handle simple output parameters (#340)
  * Added color key support for both OpenGL and SDL renderer (#451, #146)
  * Changed the EventManager to use deque rather than vectors for storing 
    listeners (#454)
  * Added the ability to prepend event listeners to the front of the listener 
    list (#454)
  * Updated instance rotation values to be valid in all cases (#361)
  * VFS no longer crashes when entering a restricted path (#413)
  * Filename case is no longer transformed to be lower case (#418)
  * OpenGL renderer now clears the backbuffer correctly (#392)
  * Added the ability to render Vertexes (#455)
  * Camera names no longer clash when loading multiple maps (#342)
  * All layers are no longer activated when calling Camera::resetRenderers() 
    (#457)
  * Word wrapping in a pychan label now works as expected (#408)
  * SWIG wrappers now handle all simple output parameters (#340)
  * Added ActionVisual::getActionImageAngles()
  * Added Cursor::getX() and Cursor::getY()

=== Build System ===
  * FIFE now builds as expected on win32 using the FIFE dev kit
  * Win32 batch scripts no longer overwrite the users PATH variable (#429)
  * Requied DLLs are now installed as required on win32 (#430)
  * CXXFLAGS should now be honored
  * Fixed a problem with the dependency checks when using pkg-config on linux
  * Added OpenBSD support

=== Editor ===
  * Can now re-load a map (#381)
  * Opening more than one map and then closing them no longer causes a crash 
    (#441)
  * Undo/Redo works properly if you select different layers (#443)
  * Docked widgets no longer shrink when you click inside them (#444)
  * Object editor can now skip to first and last frames of an animation (#448)
  * Object editor sends some messages for the user to the editor status bar
  * Cleaned up object editor by adding preMapClosed and preMapShown events
  * Object editor now uses getActionImageAngles() to fetch animation angles
  * Object editor animation views should now work with all clients
  * Object offsets can now be saved to the object.xml file
  * Object offsets can now be manipulated by using the mousewheel
  * Added undo/redo support for the moving of instances
  
=== Extensions ===
  * File Browser now refreshes correctly (#391)
  
=== Docs ===
  * Fixed the Linux:Scons tutorial (#422)

=== Pychan ===
  * Fixed a couple python import lines (#440)
  * Added Widget.requestFocus()
 
=== Rio De Hola ===
  * Fixed the path to the AUTHORS file so the credits are displayed correctly
  
=== Misc ===
  * Added color tester to pychan demo
  * Demos now look for a local copy of FIFE before importing the installed version of FIFE
  



================================================================================
== 0.3.0 (January 20th, 2010)                                                 ==
================================================================================

=== Engine ===
  * Moved to Python 2.6 (#345)
  * Upgraded guichan in ext to 0.8.2 (#420)

  * Added UTF8 support
  * SCons build system has been re-written (#328)
  * Support for native mouse cursors
  * The background of Label widgets will be painted
  * Added adaptive pathfinding (#347)
  * Modified CellSelectionRenderer to support multiple cell selection

  * Added method Layer::getInstancesAt()
  * Added SoundEmitter::setCallback()
  * Added a setRolloff() function to the SoundEmitter class.
  * Added function to fife_utils: getUserDataDirectory. Returns the proper path 
    to save setting and data files depending on OS. 
  * Removed UnitTest++ from ext (#421)
  * Changed the way the fife python module is imported ( see 
    http://wiki.fifengine.de/Importing_Python_Module )
  * The serializers will use LogManager instead of printing directly to the 
    console

  * GuiManager: Proper translation of Guichan key events to FIFE key events
  * Proper size calculation for ToggleButton
  * Fixed a layer visibility bug where the toggleInstancesVisible and 
    setInstanceVisible functions were not working correctly. (#335)
  * Fixed building FIFE on OS X (#360)
  * Fixed setActionRuntime() (#373)
  * Fixed unreliable time handling when changing time factors.
  * Fixed a bug in the OpenGl renderer where the last chunk of images would not 
    be displayed when image_height % chunk_size was 0.
  * Fixed layer and instance transparency (#378)
  * Fixed a lot of small bugs

=== Rio de hola ===
  * Made rio_de_hola save its settings to the proper OS folder.
  * Added a prefix to cameras in Rio de Hola to avoid name clashes
  * Fixed second camera in rio so multiple Camera.setLocation calls are handled 
    correctly
  * More documentation has been written
  
=== Editor ===
  * Rewrote editor:
    - Improved GUI:
      - Resizable windows
      - Docking
      - Toolbars, menubar, statusbar
      - Model/View approach to toolbar and menubar buttons
    - New signal event system based on the one from django
    - Support for opening multiple maps
    - Better plugin support
  * New plugin: LayerTool
  * New plugin: LightEdit
  * New plugin: CameraEdit
  * Enhanced ObjectSelector
  * Enhanced ObjectEdit
  * New tool: ObjectPicker. Click on an instance on the map to set the current 
    object to the instance object
  * Ability to select cells and perform actions on them (move, delete, fill, 
    ...)
  * New type of scrolling: Press middle mouse button and move the mouse
  * New icons based on Bluesphere
  * Made the editor save its settings to the proper OS folder.
  * Fixed editor bug where the map didn't render after saving (#333)
  * Editor can now re-open a map (#381)
  * Fixed a problem navigating directory structure with the filebrowser (#377)
  * Filebrowser now refreshes when expected (#391)
  * Fixed a lot of bugs, and made a lot of new ones ;-)
  
=== PyChan ===
  * New greedy layout engine: Widgets is now able to expand in addition to 
    shrinking
  * New events: mouseWheelMovedUp and mouseWheelMovedDown

  * Added the position_technique attribute
  * Added Widget.removeAllChildren() method
  * Added a new method Widget.getNamedChildren
  * New method: Widget.insertChild()
  * New method: Widget.insertChildBefore()
  * New property: is_focusable
  * New properties: min_size, max_size
  * Moved helptext property from C++ to pychan
  * New togglebutton widget

  * ScrollArea: Size is not static anymore (can shrink and expand)
  * Allow objects with a call attribute to be used as event callbacks
  * Removed unused TimerListener
  * Switched to new content structure (#336)
  * Made the distribute and mapEvents methods faster
  * Added a small decorator for profiling rarely called functions
  * Optimized adaptLayout()
  * Added fast path for Widget.findChild(name=name). Roughly 10x faster

  * Fixed an input problem when a dropdown box is clicked on (#337)
  * Fixed pychan event_map to support callable objects (#374)
  * Fixed the pychan demo (#363)
  * Fixed a pychan problem where unkown characters were displayed when holding 
    the shift key (#383)
  * Lots of bug fixes
  
=== Documentation ===
  * Fixed some doxygen documentation problems (#343)
  * Created python coding standards article (#372)
  * Created "Bug Report" template (#409)
  
=== Misc ===
  * New versioning scheme (x.y.z) instead of (yyyy.r)
  * Moved extensions and fife.py to <FIFE>/engine/python/fife
  * Moved rio_de_hola and pychan_demo to <FIFE>/demos
  * Moved some misc scripts to <FIFE>/tools
  * Moved the FIFE editor to <FIFE>/editor
  * Added a Win32 installer for FIFE and the win32 SDK



================================================================================
== 2009.0 (January 7th, 2009)                                                 ==
================================================================================

=== Engine ===
  * Merged input rework branch
  * Possibility to hide instances/instance visuals
  * Added input and focus events
  * Modified clicklabel to provide a mouse listener for hover events
  * Use strings as grouping in generic renderer instead of numbers
  * Omission of a camera viewport in xml map files now indicate that the camera 
    should use the full window
  * Added removeActionListener to SWIG export
  * Some improvements to Scons build scripts
  * Prepared basicapplication to use WindowTitle and WindowIcon from clients' 
    settings.py
  * Logger now ignores non-existing log modules (warns to prompt)
  * Pools now have a function called purgeLoadedResources which deletes all 
    loaded resources that have a reference count of zero.
  * Movie: Switched to using FIFE::Image instead of Overlays
  * Reworked matrix vector multiplication
  * OpenAL-soft patch for OSS support

Optimizations:
  * Added hasing to pool to improve techdemo loading time
  * Lazy loading for animations
  * Combined events to reduce lag
  * Small optimizations for instance renderer

Bugs:
  * Initialize instance visuals properly
  * Fixed false positives when searching for instances in a rectangle
  * Fixed a horrendous misconception in Pool. The map was sorted by pointer 
    comparison.
  * Fix for textwrapping
  * Fixed bug where instances couldn't change layer
  * Fixed a small bug when initializing OpenGL
  * Fixed a scons issue where libraries checked for C instead of C++
  * Fixed a shutdown order problem
  * Fixed segfault on shutdown when profiling was activated (#334)
  * Fixed: Editors camera doesn't show map after saving (#333)
  * Fixed: FIFE crashes with a segmentation fault (#297)

=== Pychan ===
  * Modified pychan to accept RGBA colors
  * More documentation for layout system
  * adaptLayout now acts a bit smarter
  * Fix for scrollarea bug

=== Rio de hola === 
  * Improved some graphics and added some new ones
  * Profiling support

=== Editor ===
  * Scrolling support
  * Added an undo feature to the map-editor
  * Object editor plugin
  * Some bug fixes

=== Documentation ===
  * Updated the map format article to reflect the datasets changes (#323)

=== Misc ===
  * Removed old testmaps



================================================================================
== 2008.1 (July, 2008)                                                        ==
================================================================================

=== Model improvements & simplifications ===
 * Elevations removed (Fallout legacy).
 * Support for namespaces:
  * New resource infrastructure migrated into whole engine. This enables:
   * uniform pooling for all resources that need to be pooled.
   * uniform loading for all resources (model stuff, images, sounds...).
   * uniform saving for resources which support saving (model stuff).
  * Datasets are now stored in a flat list in model instead of dataset 
    hierarchy.
  * Changes in model are now bookkeeped. Observer interfaces provided for change 
    listeners.
   * This enables e.g. reacting only to changes instead of polling on every 
     round.
   * Also critical enabler for triggers.
  * Instances now support initial rotation value.
  * Objects support default actions.
  * Further model cleanup.

=== XML format changes ===
 * All resources are now defined with principle 1 file / 1 resource.
 * Importing of objects can now be done also based on directories where they are 
   contained.
 * Relative paths are now used instead of absolute ones.

=== Loaders ===
 * All loading happens now from python (tinyxml dependency removed).
 * Improved error reporting.

=== Editor ===
 * Possibility to move instances on map.
 * Possibility to rotate instances on map.
 * Possibility to zoom the map (OpenGL mode only).
 * Painting with currently selected instance (e.g. large ground areas).
 * Importing of multiple objects based on given directory.
 * Initial map creation wizard (still work in progress).

=== Rio de hola ===
 * More assets:
  * Graphics, sounds, music...
  * Two new maps matching the storyline.
  * Rio de hola now conforms to package structure: 
    http://wiki.fifengine.de/Fife_Package_Specification
  * Popup menu integration, demonstration of actions (kick, talk).

=== Pychan improvements ===
 * Hiding of scrollbars.
 * Text wrapping.
 * A lot of smaller improvements. 

=== Functionality ===
 * Pixel perfect instance picking (taking transparency into account).
 * Ability to get list of instances from given screen rectangle.
 * Distance calculations made easy, exposed to scripts.
 * Instance outlining.
 * Instance coloring.
 * Screenshots are now saved in png format (instead of bmp).
 * Stereo sound support in linux (introduced with the help of openal-soft).

=== Video / view improvements ===
 * Both renderbackend and separate images can now render graphical primitives 
   (e.g. lines, dots..).
 * Each camera now has separate set of renderers. Allows truly adjusting cameras 
   independently.
 * Zooming capability (currently properly supported only by OpenGL backend).
 * Support for drag cursor definitions.
 * OpenGL graphics chunking size is now definable in settings. Should help e.g. 
   with large backgrounds.
 * GenericRenderer adding customised rendering capabilities for scripts.

=== Misc. changes ===
 * Initial package structure defined for FIFE clients.
 * Updated guichan to the latest release 0.8.1.
 * Usage of unittest++ instead of boost unittests.
 * Lots of bug fixes.

=== Non-code related changes ===
 * Switch from GPL 2.0 to LGPL 2.1 (or newer).