Juha
e65a102527
Remove unit Laz_AVL_Tree, a copy of unit AVL_Tree. Not needed with FPC 3.2.x.
2023-07-07 17:39:03 +03:00
Martin
fcd8b1721b
LvlGraph: Speed up TMinXGraph. In StoreAsBest only update nodes that changed. This massively speeds up big graphs with several thousand (including hidden) nodes, were StoreAsBest did always copy all those nodes.
2022-01-10 14:33:03 +01:00
Martin
42d6e0bc85
LvlGraph: Ensure work was done, or quit. No endless loop.
2022-01-10 14:33:03 +01:00
Martin
abb908d498
LvlGraph: Reduce "zero-run" switching in favour of shuffling. Do one final big zero-run, if needed.
2022-01-10 14:33:03 +01:00
Martin
f33a15738a
LvlGraphOptions: TMinXGraph refactor. Store only nodes that need to be switched in SameSwitchDiffPairs (SwitchDiff > 0 would create new crossings).
2022-01-10 14:33:03 +01:00
Martin
52679121ad
LvlGraph: Only shuffle small bits of the graph. This allows to continue on the existing result, but can switch nodes not found by the normal switching.
2022-01-10 14:23:23 +01:00
Martin
b85a49c626
LvlGraph: Fix painting overlays
2022-01-10 14:23:23 +01:00
Martin
46043554e8
TLvlGraph: Refactor MinimizeOverlappings
2022-01-10 14:23:14 +01:00
Martin
a29a791b52
LvlGraph: Add Zoom
2022-01-10 14:11:12 +01:00
Martin
aaa7322d14
LvlGraph: Compute paint-pos once, outside of Paint method.
2022-01-10 14:11:11 +01:00
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