uligerhardt 18 Posted September 27, 2023 Works now for me. I loaded our historically grown monster project and it was parsed quickly and without obvious errors. 😉 1 Share this post Link to post
Mike Torrettinni 198 Posted September 27, 2023 2 minutes ago, Alexander Sviridenkov said: It will be included to HTML Library demos with source code. Great! Any timeline? I don't have the library, yet, so I don't know how controllable the HTML control is, but will this be possible: - custom Context menu on selected unit? - select and add Context menu on dependency line? - select multiple units? and get info on all selected units? - control drawing objects, bg color, font, size? - control selection from code, not just mouse? Share this post Link to post
Alexander Sviridenkov 360 Posted September 27, 2023 3 minutes ago, Mike Torrettinni said: Great! Any timeline? I don't have the library, yet, so I don't know how controllable the HTML control is, but will this be possible: - custom Context menu on selected unit? - select and add Context menu on dependency line? - select multiple units? and get info on all selected units? - control drawing objects, bg color, font, size? - control selection from code, not just mouse? Maybe next month. For other questions answer is - yes. 1 Share this post Link to post
Alexander Sviridenkov 360 Posted September 28, 2023 New build 1.0.0.10 Units with forms are now rectangular Links have direction marks (on source unit) When .pas is not found it tries to find .dcu, parse it and extact links to used units. 3 Share this post Link to post
Mike Torrettinni 198 Posted September 28, 2023 52 minutes ago, Alexander Sviridenkov said: Links have direction marks (on source unit) Nice! I showed this to another developer who is looking for simple drawing control that would do all this. Not for Delphi source dependencies, but custom relationship data and it would simplify his current very cumbersome drawing solution that achieves similar result - I helped with some small improvements, but I'm not expert in drawings. He is excited to try your control when this is implemented. Share this post Link to post
Alexander Sviridenkov 360 Posted September 28, 2023 7 minutes ago, Mike Torrettinni said: Nice! I showed this to another developer who is looking for simple drawing control that would do all this. Not for Delphi source dependencies, but custom relationship data and it would simplify his current very cumbersome drawing solution that achieves similar result - I helped with some small improvements, but I'm not expert in drawings. He is excited to try your control when this is implemented. This is not a separate control, all UI of this application is just two THtPanel-s. Program generates SVG from units graph and put it into HtPanel, that's all. No direct drawing. F.e. this is how looks CSS for main panel: svg {font-size: 8px} .node rect {fill: white; stroke: gray; stroke-width: 1px} .node:hover rect {fill: lightblue} .node.circ rect {fill: #ffdddd} .link {stroke: white; fill: white; opacity: 0.1} .link.selected {stroke: green; fill:green;opacity: 1} .link.imp.selected {stroke: blue; fill:blue} .link.selected.circ {stroke:red!important} .link ellipse {stroke:none!important} .selected rect {fill: #ccfab4} .node.main rect {fill: lightblue!important; stroke: #456c87!important} .node.selected.circ rect {fill: #ffbbbb} .project rect {stroke: black; stroke-width: 2px} .project text {font-weight: bold} .search text {fill: #b84f04} Share this post Link to post
Attila Kovacs 629 Posted September 28, 2023 (edited) Holy cow, can you enable saving the html? a part of the FlexCel library o.O Sagittarius in the FlexCel universe. Edited September 28, 2023 by Attila Kovacs Share this post Link to post
Tommi Prami 130 Posted September 29, 2023 For some reason lot of units show on top of each other. Even if fixed, would be handy to have some hint, to give some info on the unit while hovering over, with maybe bigger font (Normal UI font), if zoomed to very small, then could check colored ones.... etc... Also this island at top left is bit strange. Share this post Link to post
Rollo62 538 Posted September 29, 2023 (edited) 10 hours ago, Alexander Sviridenkov said: New build 1.0.0.10 Great, now it seems to find also all units in upper and sibling folders 👍 That is a very useful tool and blazingly fast. I'm a little unsure, how to make use of the "circular reference" feature. Is there a maximal zoom factor, I cannot really get everything on one page ( nevertheless, its too small to make sense anyway). Edited September 29, 2023 by Rollo62 Share this post Link to post
shineworld 73 Posted September 29, 2023 There is a way to ZOOM in/out ? Very interesting product to analyse overall of a project! Share this post Link to post
Alexander Sviridenkov 360 Posted September 29, 2023 10 minutes ago, shineworld said: There is a way to ZOOM in/out ? Very interesting product to analyse overall of a project! Yes, Ctrl + mouse wheel 1 Share this post Link to post
Alexander Sviridenkov 360 Posted September 29, 2023 2 hours ago, Tommi Prami said: Also this island at top left is bit strange. This is because of ForceAtlas2 algo. Units or unit groups with small amout of links can go far from center. https://journals.plos.org/plosone/article?id=10.1371/journal.pone.0098679 2 Share this post Link to post
Alexander Sviridenkov 360 Posted September 29, 2023 33 minutes ago, Rollo62 said: I'm a little unsure, how to make use of the "circular reference" feature. You can find and remove circular references where they should not be. Share this post Link to post
Rollo62 538 Posted September 29, 2023 1 minute ago, Alexander Sviridenkov said: You can find and remove circular references where they should not be. Well, now I tried to enforce one, I thought it would automatically find and mark them all somehow. Nevertheless, it's working well, when clicking on such circular part. Share this post Link to post
Alberto Fornés 22 Posted September 29, 2023 Good Job¡, and very nice scroll movement. I like it¡ 1 Share this post Link to post
Alexander Sviridenkov 360 Posted September 29, 2023 14 minutes ago, Rollo62 said: Well, now I tried to enforce one, I thought it would automatically find and mark them all somehow. Nevertheless, it's working well, when clicking on such circular part. I tried to show all, but usually there are too many circular references so cheking unit by unit is more convenient. 1 Share this post Link to post
dummzeuch 1506 Posted September 29, 2023 Nice idea. But of course I have got something to complain about some suggestions I find it rather difficult to see those light gray lines on a dark gray background. Maybe I'm just getting old and it's my eyes not the tool, but anyway. Why not use black lines on a white background? I know that "dark mode" is all the rage, but readability shouldn't be thrown out of the window for that. It would be nice if the input line for the project file supported autocomplete dropping a file from explorer Dropping a .dpr file from explorer onto the main window to load it would also be nice. I'm sure I will think of some more possible improvements. What are your plans for this tool? Are you going to release the source code? Or make it a commercial tool? 2 Share this post Link to post
Stano 143 Posted September 29, 2023 Suggestion for improvement. I have two disks mapped in the tree on the right: C and D. I am not interested in disk C at all. I click on it. Its contents disappear from the graph. That would be good: Root Node C changes color (probably red) collapses. It just hangs there ----- Every node should be able to collapse and expand. Maybe it's there. Unfortunately, we don't have any instructions available. 1 Share this post Link to post
Uwe Raabe 2059 Posted September 29, 2023 18 minutes ago, dummzeuch said: What are your plans for this tool? Are you going to release the source code? Or make it a commercial tool? He already mentioned before: 11 hours ago, Alexander Sviridenkov said: This is not a separate control, all UI of this application is just two THtPanel-s. Program generates SVG from units graph and put it into HtPanel, that's all. No direct drawing. F.e. this is how looks CSS for main panel: svg {font-size: 8px} .node rect {fill: white; stroke: gray; stroke-width: 1px} .node:hover rect {fill: lightblue} .node.circ rect {fill: #ffdddd} .link {stroke: white; fill: white; opacity: 0.1} .link.selected {stroke: green; fill:green;opacity: 1} .link.imp.selected {stroke: blue; fill:blue} .link.selected.circ {stroke:red!important} .link ellipse {stroke:none!important} .selected rect {fill: #ccfab4} .node.main rect {fill: lightblue!important; stroke: #456c87!important} .node.selected.circ rect {fill: #ffbbbb} .project rect {stroke: black; stroke-width: 2px} .project text {font-weight: bold} .search text {fill: #b84f04} As I already own a license for HTML Components there is a good chance that it may be included as an extension to the Unit Dependency Analyzer in MMX. 5 1 Share this post Link to post
Rollo62 538 Posted September 29, 2023 20 minutes ago, dummzeuch said: What are your plans for this tool? Are you going to release the source code? Or make it a commercial tool? As far as I understood, this is a new demo in the HtmlComponents Library, right? That means, when purchasing it, you can refine all colors as you wish 1 Share this post Link to post
Alexander Sviridenkov 360 Posted September 29, 2023 51 minutes ago, dummzeuch said: Nice idea. But of course I have got something to complain about some suggestions I find it rather difficult to see those light gray lines on a dark gray background. Maybe I'm just getting old and it's my eyes not the tool, but anyway. Why not use black lines on a white background? I know that "dark mode" is all the rage, but readability shouldn't be thrown out of the window for that. It would be nice if the input line for the project file supported autocomplete dropping a file from explorer Dropping a .dpr file from explorer onto the main window to load it would also be nice. I'm sure I will think of some more possible improvements. What are your plans for this tool? Are you going to release the source code? Or make it a commercial tool? Thank you. 1. Gray lines are there just to see overall amount of links for node. They should not be too contrast otherwise selected links will be lost. 2. Project input has Open button at right, you cal select file from standard dialog. Dropping file to this window is good idea, I will implement it. 3. Unfortunately this is not possible because application should also know Delphi version, not just project file. As mentioned above, it will be free, source code will be available to HTML Library customers, 1 Share this post Link to post
dummzeuch 1506 Posted September 29, 2023 2 hours ago, Alexander Sviridenkov said: 3. Unfortunately this is not possible because application should also know Delphi version, not just project file. It's possible to determine the Delphi version from the .dproj/.bdsproj/.dof file, with some limitations. 1 Share this post Link to post
Alexander Sviridenkov 360 Posted September 29, 2023 Version 1.0.0.15 1. Delphi 7 compatibility. 2. Ctrl+S to save graph HTML 3. Folders below disabled folder are hidden from list 4. Open project window accept drag/drop from explorer 2 2 Share this post Link to post
Alexander Sviridenkov 360 Posted September 29, 2023 1.0.0.16 Main window accept drag/drop from explorer Delphi version is detected from project 1 Share this post Link to post
Alexander Sviridenkov 360 Posted September 30, 2023 1.0.0.19 Disabled folders/libraries (except RTL/VCL) are now displayed as single node with all references to them. 4 Share this post Link to post