This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.

Bug 136414 - Please review call graph UI
Summary: Please review call graph UI
Status: RESOLVED FIXED
Alias: None
Product: cnd
Classification: Unclassified
Component: Navigation (show other bugs)
Version: 6.x
Hardware: All All
: P2 blocker (vote)
Assignee: jrojcek
URL: http://wiki.netbeans.org/CNDCallGraph...
Keywords:
Depends on:
Blocks: 109619
  Show dependency tree
 
Reported: 2008-06-03 19:19 UTC by Alexander Simon
Modified: 2008-06-09 14:23 UTC (History)
1 user (show)

See Also:
Issue Type: TASK
Exception Reporter:


Attachments
picture part of call graph (16.88 KB, image/png)
2008-06-04 15:37 UTC, Alexander Simon
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Alexander Simon 2008-06-03 19:19:47 UTC
Please review call graph UI.
http://wiki.netbeans.org/CNDCallGraphUserView
Comment 1 Alexander Simon 2008-06-03 19:29:25 UTC
Link to page from c++ development page:
http://wiki.netbeans.org/CndDev
Comment 2 jrojcek 2008-06-04 14:44:01 UTC
Thanks for filing the review request! I like the feature as such, I just have a few suggestions that would make it better integrated into the IDE. From the 
Main UI elements the features modifies the main menu, editor contextual menu and windowing system. In this review I would focus on those parts. Here's 
my suggestions:

1. As the Call Graph is a tree, it's better to dock it to the right side of the editor to the same position as Hierarchy window as there's more vertical space for 
expanding the tree. The toolbar should then be at the bottom of the window. Also, it seems to me the function of this window is almost identical to the 
Hierarchy window. It shows a tree hierarchy defined by the action the user invokes on selected element in the editor. It can either be a type, include or call 
hierarchy. I'm curious whether it all shouldn't be integrated into the same Hierarchy window. Or to put it differently, why do we need a special Call Graph 
window versus just reusing the Hierarchy window for this feature?

2. If we stick with the Call Graph window, the main menu integration is okay.

3. For the contextual menu, I would suggest to put the Call Graph action into the Navigate menu and rename it like this:
---
Navigate (in source)   > Go to Declaration
                         Go to Header
                         --------------------------
                         View Includes Hierarchy...
                         View Type Hierarchy...
                         View Call Graph...   (or View Call Hierarchy...)
                         Inspect Includes
                         Inspect Hierarchy
---

Please let me know what you think.

Comment 3 Alexander Simon 2008-06-04 15:37:14 UTC
Created attachment 62372 [details]
picture part of call graph
Comment 4 Alexander Simon 2008-06-04 15:37:47 UTC
Thank you for review!
1. Call graph has a picture part. But for NB 6.5 the part is hidden. See attachment. I am going to provide NB plug in
that makes the picture part visible. In this case sticky layout do not fit call graph. Beside, using of call graph is
like to find usages that has output layout and call graph has tabs. So I would like to use output layout.
Next two items depend on this item.
Comment 5 Vladimir Kvashin 2008-06-04 16:06:49 UTC
I'd like to stress that Call Graph is kind of Find Usages variant. 
It searches for usages of some function... the difference is that it does this iterative.

This implies that 
1) It has to have multiple tabs, as Find Usages does 
2) It would be fine if it dicked via the same 

The (1) is really necessary!

Comment 6 jrojcek 2008-06-05 15:05:15 UTC
Thanks for the clarification! I missed the multiple tabs in the spec. Sorry about that. And thanks for the info about the visual graph. Feel free to mention it in 
the spec.

There's a few possible UIs for inspecting and understanding the source code structure. For the call graph you chose the one similar to Find Usages. That's 
fine. My suggestion to integrate it with the Hierarchy window doesn't apply then. As I played with the feature, I had a feeling that it would be nice as I clicked 
through the nodes in the Call Graph, to preview the source code in the right side of the Call Graph window. The fact I had to double click the nodes to see the 
source files seemed too slow to me. I actually think it would be nice to have that in the Find Usages window as well. Just something to consider.

For the contextual menu, let's just rename the menu item as currently "Call" is also a verb which makes the menu item sound strange. I would suggest "View 
Call Graph" or something similar. Please let me know the name you chose and I would update the permanent UI spec and close the review. Thanks!
Comment 7 Alexander Simon 2008-06-05 20:01:24 UTC
Thank you for review!
What is about Window->Navigating->&Call Graph?
Is it right place and name?
Should I move it in output?
Comment 8 jrojcek 2008-06-06 09:20:12 UTC
Yes, the Output submenu would be okay. Let's do it like this:

Output                  > Output                O
                          Search Results        S
                          Find Usages Results   F
                          JUnit Test Results    J
                          Versioning Output     V
                          Refactoring Preview   R
                          Analyzer              A
                          Call Graph            C

How about the editor contextual menu. Would you use "Show Call Graph"?
Comment 9 Alexander Simon 2008-06-06 11:12:24 UTC
Yes, I am going to fix name to "Show Call Graph".
Comment 10 Alexander Simon 2008-06-06 12:33:25 UTC
All changes have been committed in the main trunk:
http://hg.netbeans.org/main/rev/60194f0ac552
Comment 11 Quality Engineering 2008-06-06 15:49:45 UTC
Integrated into 'main-golden', available in NB_Trunk_Production #241 build
Changeset: http://hg.netbeans.org/main/rev/60194f0ac552
User: Alexander Simon <alexvsimon@netbeans.org>
Log: fixing: IZ#136414:Please review call graph UI