Morcego Changelog
------------------

All developers are invited to add relevant changes in this file as they
apply them to the SVN source. You can optionally include an identifer
for the origin of the change (author, submitter, anyone involved) but
that's not so useful as the svn log knows who adds what when.

Use the following tags to distinguish changes :
* [NEW] apply if something new was added in morcego
* [MOD] is an enhancement; not really new but makes things work better
* [FIX] can be used for bug fixes of any sort

Version 0.6.0

In v0.6 the long hours developers have invested in making xmlrpc servers won't be necessary
anymore. It comes with a demo application, with PHP classes ready to use, ajax methods to 
dinamically load content (using xajax) and content controlled by xml files, so anyone is now able
to make a static Morcego application by just editing these xml files.

The most significant change in v0.6 is javascript communication: now nodes and links can have
"onmouseover", "onmouseout" and "onclick" javascript events. It's a simple modification, but
now Morcego can be really embbeded instead of being an external browser. Other important improvement
is the camera, that does not distort border of big graphs anymore. Besides that, there are some new
node types (Square and Triangle), link types (DashedDirectional and Invisible), applet is more stable
and configuration is simpler.

[NEW] Better integration with HTML page by generating JS events from Morcego, through "onmouseover", "onmouseout" and "onclick" node properties
[NEW] Demo php application
[NEW] Proper visualization for trees, implementation of node hierarchy finally working, defined by node property "level". If new boolean configuration 
      "graphIsTree" is true, a simulated wind will blow the nodes with intensity according to "windIntensity" and node level.
[NEW] Camera algorithm rewriten, peripherical distortion avoided (and so part of graph may get out of sight). New configuration "cameraDepth",
      the distance between the view area and the focus point behind it. 
[NEW] refresh() method to be called by javascript
[NEW] changeParam() method to be called by javascript (not working yet)
[MOD] Lower minimum java version requirement, now compatible with XXX (can anyone confirm the minimum version?)
[NEW] Types "Square" and "Triangle" for nodes; "DashedDirectional" and "Invisible" for links
[NEW] Center node position is configurable through "originX" and "originY" configuration vars
[MOD] Node properties case insensitive. Most link properties too, just not "from" and "to".
[MOD] Simpler width and height settings: windowWidth, windowHeight, viewWidth and viewHeight removed; width and height added, default is html element size
[MOD] Simpler Arca logo positioning, calculated according to window size
[MOD] Default center node size proportion is now 1, because the scale was messing with depth perception
[FIX] proper thread control, threads now stop with the applet instead of becoming ghosts and hanging browser
[FIX] synchronization control that would break applet


Version 0.5.0

In this version graph internal structure and xmlrpc transport were refactored so that
links can have properties as nodes do. Now it's possible to represent different kinds
of nodes and relations and have its physical properties to reflect some real world value.

Visualization impression also got better with a more flexible camera adjustment.

[NEW] Xmlrpc transport version 2, supporting properties for links
[NEW] Configurable node and link types
[NEW] Types "Dashed", "Directional" and "Bidirectional" for links
[NEW] Types "Text" and "Image" for nodes
[NEW] Mouse over on link shows description
[MOD] More flexible camera adjustment system, controlled by minCameraDistance option
[NEW] Configuration option centerNodeScale
[MOD] Config variable linkColor renamed to defaultLinkColor and transportClass renamed to transport
[MOD] New default values for windowWidth, elasticConstant, punctualElasticConstant and feedAnimationInterval
[MOD] Configuration options adjustCameraDistance removed, viewHeight and viewWidth got obsolete
[FIX] Balancer would not awake if it stops while user holds a node
[NEW] Navigation controlled by javascript

Version 0.4.1

[FIX] Node title was being ignored

Version 0.4.0
-------------

In this version code was extensively refactored. Greatest improvement is the
new physical model that gives graph a much better visual impression.

New configuration vars (check README for meaning):

     - frictionConstant, new Float(0.4f));
     - elasticConstant, new Float(0.5f));
     - punctualElasticConstant, new Float(1f));
     - eletrostaticConstant, new Float(1000f));
     - springSize, new Float(100));
     - nodeMass, new Float(5));
     - nodeCharge, new Float(1));
     - loadPageOnCenter, new Boolean(true));

These are not used anymore:

     - originX
     - originY
     - originZ
     - universeRadius
     - maxNodeSpeed
     - linkedNodesDistance

Changes:

[ADD] physical model to balance graph
[ADD] support for description box on mouse over
[ADD] Morcego and Arca logs, optional
[ADD] support for different transport layers, only XmlprcTransport available 
      by now
[ADD] option to have camera distance relative to nearest node instead of
      center, default.
[ADD] option to open target page on every navigation, default
[MOD] nodes pop always behind center node, to avoid hanging while rendering
      very big nodes
[FIX] graph instability in some cases
