* Update hierarchy when node level changes
Fix for #3220
On change of data of an existing node, the level is checked for changes.
If changed, for a recalculation of the hierarchical layout.
The fix does not explicitly check for hierarchical layout; this should not be a problem.
The added code can be used to add further node fields which may trigger recalculation of layout.
* Changes due to review
The returned node id's were exactly the wrong way around;
'to' returned the parents, 'from' returned the children.
This fix swaps the tests for determining which to return.
* Protect Network from zero and negative mass values
Fix for #3133
Option-field 'node.mass` must be >= 0.
Checks have been added at the nodes level, for both nodes-global and nodes specific options.
In addition, an internal check has been added for `NodeHandler.defaultOptions`.
The documentation has been adjusted for this change.
* Fix whitespace
* replacing all ES6 imports with CJS require calls
resolves#2934
used the following regex to apply the changes in lib:
s/import\s+(\w+)\s+from\s+(.*);\s*$/var $1 = require($2).default;/
s/import\s+(\w+)\s+from\s+(.*)\s*$/var $1 = require($2).default;/
* cleaning up inconsistencies
* Network: use separate refresh indicator in NodeBase, instead of width parameter
* Added usage of iBaseNode.doRefresh to image shapes.
* Rearranged code in NodeBase.needRefresh()
* Fixes for review
* Removed strange link
* Added 's' in needsRefresh(); typo fix
* Fixes for review, code cleanup
* Modified ratio calc to original working.
* Made code in CircularImage.resize() more sensible.
Node labels don't currently make use of the 'align' property, so this reuses
the existing property.
The label code has a number of alignment options that make sense to edges only,
so the Edge/Node now passes a boolean to the Label ctor to explain which the label
is being rendered for
Will only apply to Network nodes with a shape: 'box' property, as most
other shapes this will not make sense for. This enables the box shape
to be used, for instance, for diagraming CFG data from source code.
Replaced dashes property in options.js with a shapeProperties object containing a borderDashes property.
Replaced dashes property in defaultOptions in NodesHandler.js with shapeProperties object having its borderDashes property set to false.
Created implementations of enableBorderDashes and disableBorderDashes functions in NodeBase.js
Updated CircleImageBase to use enableBorderDashes and disableBorderDashes for enabling/disabling dashed borders.
Added to ShapeBase enableBorderDashes and disableBorderDashes calls to allow all shapes that have borders to have the dashed borders feature.
Updated example demonstrating how to apply the dashed border to a circularImage node
Created example demonstrating how to apply the dashed border to a all shapes that support dashed borders.
Updated documentation explaining the usage of the shapeProperties.
Added the following:
- dashes property to nodes in options.js
- dashes property with value false to defaultOptions in NodesHandler.js
- support for Arrays to selectiveNotDeepExtend function in util.js
- functionality to CircleImageBase.js that allows circularImage nodes to have dashed borders
- example demonstrating how to apply the dashed border to a circularImage node
- documentation explaining the usage of the dashes property on a node