Author |
Topic |
|
CliffyP
Ketchup Master
56 Posts |
Posted - Mar 27 2017 : 12:57:42 PM
|
I like the goto related feature, prolly the active feature I use the most with VA, but there is some things about it that could use improvement.
Namely when traversing virtual function hierarchies (that are not inlined), when you go to base, or derived, it takes you the declaration, and then you have to goto related again to go to the definition. So it can take at least two operations to get to where your going.
What if the derived/base also showed the definitions in addition to the headers. Or split them up into two rows, i.e.: derived decs:, derived defs:, and the same for base. That way the user can go to the definition in one operation.
Also another aspect of it is that it only shows the direct hierarchy, what if it also had like a 'related/parallel' row pop up that shows overrides in parallel classes that share the same base. So that the user can skip traversing up and down the hierarchy in order to get to a different branch, and just skip right to it instead. |
|
feline
Whole Tomato Software
United Kingdom
19014 Posts |
Posted - Mar 27 2017 : 2:35:49 PM
|
Listing both the definitions and declarations makes sense, I have put in a feature request for this to see what our developers make of this idea:
case=104913
If you try and show the related/parallel classes, how many do you try to show? When looking at a base class that is widely used, you can end up with quite a large tree, so I am not sure how well this idea would scale. |
zen is the art of being at one with the two'ness |
|
|
CliffyP
Ketchup Master
56 Posts |
Posted - Mar 27 2017 : 3:35:53 PM
|
sure the parallel pop-up could run out of screen space (doesn't the current derived view have a similar potential problem?), but ultimately that is an edge case. Give it a limit of like 10 or whatever fits on the screen, and it will cover 95% of cases just fine. |
Edited by - CliffyP on Mar 27 2017 3:36:32 PM |
|
|
feline
Whole Tomato Software
United Kingdom
19014 Posts |
Posted - Mar 28 2017 : 08:13:28 AM
|
We are considering some form of class hierarchy browser, that would be a good fit for what you are looking for here if and when we do this. I have added your comments to this case:
case=6647 |
zen is the art of being at one with the two'ness |
|
|
CliffyP
Ketchup Master
56 Posts |
Posted - Mar 28 2017 : 10:36:06 AM
|
class hierarchy browser? sounds nice but what I'm speaking of is for methods.. Speaking of hierarchy browsers, I favor something like this: https://forums.wholetomato.com/forum/topic.asp?TOPIC_ID=12554
Reason being is that class hierarchies themselves are not all that difficult to comprehend and traverse. Dealing with function call hierarchies however are like 90% of a programmer's mental efforts, so anything to help comprehension and navigation of such is a boon. |
|
|
feline
Whole Tomato Software
United Kingdom
19014 Posts |
Posted - Mar 29 2017 : 3:20:44 PM
|
Apologies for that, class browser is a poor description. The case in question is focused on looking at the virtual functions in classes and derived classes, but to look at these you also need to look at the class hierarchy, otherwise you don't know where these functions might be.
The thread you have linked to, it seems to be describing a call browser, so who calls whom, which is not the same as looking at the tree of virtual functions that are implemented as derived from a common base class. Am I missing something obvious here? |
zen is the art of being at one with the two'ness |
|
|
CliffyP
Ketchup Master
56 Posts |
Posted - Mar 30 2017 : 11:43:10 AM
|
Nah, what you said makes sense. |
|
|
|
Topic |
|