Jump to content
PeterPanettone

Flow Diagram as a ProcedureList option

Recommended Posts

Posted (edited)

I have filed this new feature Request:

 

The Procedure List should have a Flow Diagram option. What does this mean?

Let's assume a unit has this source code:

image.thumb.png.b826000f79da97a04ff2afc4b4509a11.png

Then the Flow Diagram option would show the following diagram in the Procedure List window (instead of the list of procedures):

image.thumb.png.cfc2c1f5cf8524b77db45050c2bd835c.png

Left-clicking on a diagram item would show the clicked procedure source code in the source pane.

Double-clicking on a diagram item would show the clicked procedure source code in the source code editor.

This would be a VERY USEFUL Procedure List view mode!

Here is the URL of the Feature Request:

https://sourceforge.net/p/gexperts/feature-requests/74/

 

 

Edited by PeterPanettone

Share this post


Link to post

I now that MM can create a Sequence Diagram from the call stack. I am unsure about this static analysis mentioned above.

Share this post


Link to post
1 hour ago, Uwe Raabe said:

I now that MM can create a Sequence Diagram from the call stack.

You mean when debugging? No, no, just a representation of the source code in the source code editor. With "MM" you mean ModelMakerTools or MMX?

Share this post


Link to post
5 minutes ago, PeterPanettone said:

With "MM" you mean ModelMakerTools or MMX?

MM = ModelMaker, the other - now discontinued - tool from ModelMaker Tools

Share this post


Link to post
Posted (edited)

I could also imagine the Flow Diagram View as an additional IDE main view tab after Code, Form Designer and History:

 

image.png.c1965b592ba472bea77bde1383e6964e.png

Edited by PeterPanettone
  • Like 1

Share this post


Link to post

Colors in the Flow Diagram (this is a personal suggestion which could be customized):

 

• FormEventHandler procedures: Fuchsia image.png.81baa1c57b21e6102b252cde16489724.png

 

• ClickHandler procedures: Green image.png.021113275820f85a7ada5c978b715790.png

 

• General ClassMethod procedures: ...

 

• Functions: ...

 

• Etc. etc.

Share this post


Link to post

So, when can I expect a patch, that implements this functionality? :classic_wink:

Share this post


Link to post
Posted (edited)
7 minutes ago, dummzeuch said:

So, when can I expect a patch, that implements this functionality?

That partly depends on my body's ability to metabolize large quantities of coffee.

 

No, but seriously: Is it allowed to use a closed source DLL dependence? Or do you know a good open-source diagram component?

Edited by PeterPanettone

Share this post


Link to post
26 minutes ago, PeterPanettone said:

No, but seriously: Is it allowed to use a closed source DLL dependence? Or do you know a good open-source diagram component?

That depends on the license of that DLL, I guess. This sounds as if you have got a particular DLL in mind. Which one?

Share this post


Link to post
Posted (edited)
23 minutes ago, dummzeuch said:

Which one?

I would create my own from the TMS Diagram component.

Edited by PeterPanettone

Share this post


Link to post
Posted (edited)
14 hours ago, Uwe Raabe said:

call stack

"call stack" is a term from the IDE's debugging functionality and refers to the "visited" source code lines, I believe.

 

The concept I have called "Flow Diagram" is in practice a sum of all possible call stacks, a diagram showing the complete call tree.

 

Is this definition appropriate? Or how would you name/define the concept?

Edited by PeterPanettone

Share this post


Link to post

Call tree sounds about right. But keep recursiveness in mind.

  • Like 1

Share this post


Link to post
Posted (edited)

The methodology I have in mind is to take the list of procedures generated by the GExperts Procedure List and convert it into a graphical Call Tree diagram by using the rules of logic.

 

Would you agree with that approach?

Edited by PeterPanettone

Share this post


Link to post

In the Call Tree Diagram, when the mouse pointer hovers over a diagram item, then the source code documentation of this procedure is shown in a formatted hint:

 

image.thumb.png.9d9d5faf4382b62dc94005d4561a119b.png

 

 

image.thumb.png.0fa7b89cee492447a525f366a1d26983.png

  • Like 1

Share this post


Link to post
5 hours ago, Uwe Raabe said:

Peganza Pascal Analyzer creates a Call Tree Report.

This is the Pascal Analyzer 8.1.0.0 Call Tree report for the above example source code:

 

image.thumb.png.2986040512714359c2ddd333b7d4cfba.png

 

However, when using this report, the user would have to buy Pascal Analyzer. So I probably will use the procedure list created by the GExperts procedure list. (Or the one used by the CnWizards procedure list).

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×