Commit Graph

37 Commits

Author SHA1 Message Date
juha
9219ea531d Move unit GraphMath from LCL to LazUtils. It has no dependencies to GUI.
git-svn-id: trunk@64303 -
2020-12-29 22:56:40 +00:00
mattias
ab4a5849a6 lazcontrols: clean up
git-svn-id: trunk@62109 -
2019-10-22 15:10:30 +00:00
martin
6bb1920582 TLvlGraph: Reduce side effects of curved edge-style on continuous lines.
git-svn-id: trunk@60890 -
2019-04-07 19:52:09 +00:00
martin
98631703d8 TLvlGraph: Straighten the graph. Reduce the up/down movement of edges.
Center Nodes (incl. hidden nodes) according to their siblings in the next/prev level.

git-svn-id: trunk@60889 -
2019-04-07 19:52:08 +00:00
martin
72d4e6d824 TLvlGraph: Option to limit the maximal height of a Level. (height = count of visible / user-created nodes)
git-svn-id: trunk@60888 -
2019-04-07 19:52:06 +00:00
martin
e9367141f8 TLvlGraph: Improve MinimizeCrossings. Switch pairs even if they have SwitchDiff=0
A pair with "SwitchDiff=0" may block surrounding nodes from being switched. After switching, one of the changed neighbouring pairs may be able to reduce further crossings.

git-svn-id: trunk@60887 -
2019-04-07 19:52:05 +00:00
martin
4e2c794836 TLvlGraph: De-duplicate call to MinimizeOverlappings. Incompatible change of OnMinimizeOverlappings:
- added Handled param
- made all param into "var param", so the callback can adjust them

git-svn-id: trunk@60886 -
2019-04-07 19:52:03 +00:00
martin
d83b4c7a53 TLvlGraph: Minimize length of edges
git-svn-id: trunk@60884 -
2019-04-07 19:52:00 +00:00
martin
8924c68247 TLvlGraph: Reduce amount of BackEdges
git-svn-id: trunk@60883 -
2019-04-07 19:51:59 +00:00
martin
6fac9c5998 TLvlGraph: Find unconnected sub-graphs
git-svn-id: trunk@60882 -
2019-04-07 19:51:57 +00:00
martin
19cfa8541b TLvlGraph: Improve circular edges between adjacent Levels
git-svn-id: trunk@60881 -
2019-04-07 19:51:56 +00:00
martin
075f1ff8bc TLvlGraph: Enable routing of BackEdge (circlular edges going backward)
git-svn-id: trunk@60880 -
2019-04-07 19:51:54 +00:00
martin
13a45fd25f TLvlGraph: Fix correctly apply NodeGapBelow. Depends on node above visible.
git-svn-id: trunk@60879 -
2019-04-07 19:51:53 +00:00
martin
5b8832a7b0 TLvlGraph: Adjust node in/out-weights, if edge is destroyed.
git-svn-id: trunk@60878 -
2019-04-07 19:51:52 +00:00
martin
7a5bb3650c TLvlGraph: Avoid crash on empty level
git-svn-id: trunk@60877 -
2019-04-07 19:51:50 +00:00
martin
a807d6cb5a TLvlGraph: fixed hint for 1-to-1 edge
git-svn-id: trunk@60876 -
2019-04-07 19:51:48 +00:00
martin
22a3926b27 TLvlGraph: disabled left-over debug-define
git-svn-id: trunk@60875 -
2019-04-07 19:51:47 +00:00
wp
832ce1039a LazControls: Make TCustomLvlGraphControl respect property Color when painting its background.
git-svn-id: trunk@55993 -
2017-10-07 08:47:58 +00:00
wp
4803801696 LazControls: Add new property CaseSensitive to TLvlGraph (http://www.lazarusforum.de/viewtopic.php?f=18&t=11108).
git-svn-id: trunk@55990 -
2017-10-06 10:57:57 +00:00
ondrej
94b65e57e9 lazcontrols: lvlgraphctrl: high-DPI. Issue #31781
git-svn-id: trunk@54929 -
2017-05-14 15:25:16 +00:00
juha
e800a738ad Copy AVL_Tree from FPC trunk and replace classes in AvgLvlTree and in CodetoolsStructs with it.
The unit in FPC packages will be used directly later.

git-svn-id: trunk@54524 -
2017-04-05 08:34:48 +00:00
mattias
ac5b299301 lazcontrols: TLVLGraphControl initial size, bug #31344
git-svn-id: trunk@54081 -
2017-02-03 16:57:48 +00:00
ondrej
070c78ff20 lazcontrols: move design code from LazControls into LazControlDsgn package
git-svn-id: trunk@52041 -
2016-03-24 07:05:48 +00:00
juha
abe573b42d Initialize variables based on compiler warnings around Lazarus and libs. Contains ToDo items.
git-svn-id: trunk@48481 -
2015-03-24 17:52:23 +00:00
mattias
5bca3443b2 lazcontrols: TCustomLvlGraphControl: use theme
git-svn-id: trunk@46889 -
2014-11-19 16:33:36 +00:00
mattias
e0d5158221 lazcontrols: TLvlGraphControl: accept child controls in designer
git-svn-id: trunk@44214 -
2014-02-23 18:45:22 +00:00
paul
6f63e5d1ef lazcontrols: use FPC resources for component images
git-svn-id: trunk@43037 -
2013-09-29 10:47:28 +00:00
mattias
f07d4394eb lazcontrols: less hints
git-svn-id: trunk@41429 -
2013-05-27 09:09:30 +00:00
juha
ecd140c985 Improve license headers in sources, part 2. Refer to details about license, not copyright. Remove jargon about lack of warranty, it is covered in license already.
git-svn-id: trunk@41389 -
2013-05-25 09:22:25 +00:00
mattias
9f28f08acd lazcontrols: lvlgraph: fixed mem leak
git-svn-id: trunk@40802 -
2013-04-14 12:09:05 +00:00
mattias
4470a5e9f0 lazcontrols: lvlgraph: hint for nodes
git-svn-id: trunk@40751 -
2013-04-08 11:41:07 +00:00
mattias
e287d845f0 lazcontrols: lvlgraph: added GetVisibleSourceNodes, GetVisibleTargetNodes
git-svn-id: trunk@40750 -
2013-04-08 10:52:02 +00:00
mattias
1531418952 lazcontrols: tlvlgraph: faster destroy
git-svn-id: trunk@40746 -
2013-04-08 07:57:48 +00:00
mattias
b1bf50dbfc lazcontrols: tlvlgraph: fixed crash when freing while node is selected
git-svn-id: trunk@40744 -
2013-04-07 22:03:24 +00:00
mattias
7b772d4766 lazcontrols: lvlgraph: fixed singleselect, added property Selected
git-svn-id: trunk@40609 -
2013-03-21 20:41:04 +00:00
mattias
446f84c90a lazcontrols: register TLvlGraphControl
git-svn-id: trunk@40605 -
2013-03-21 19:41:41 +00:00
mattias
bd90241752 lazcontrols: added TLvlGraphControl
git-svn-id: trunk@40584 -
2013-03-18 18:50:49 +00:00