Whole Tomato Software Forums
Whole Tomato Software Forums
Main Site | Profile | Register | Active Topics | Members | Search | FAQ
 All Forums
 Visual Assist
 Technical Support
 VA Outline : miss items inside {}

You must be registered to post a reply.
Click here to register.

Screensize:
UserName:
Password:
Format: BoldItalicizeUnderlineStrikethrough Align leftCenterAlign right Insert horizontal ruleUpload and insert imageInsert hyperlinkInsert email addressInsert codeInsert quoted textInsert listInsert Emoji
   
Message:

Forum code is on.
Html is off.

 
Check to subscribe to this topic.
   

T O P I C    R E V I E W
almostPerfectVa Posted - Jul 20 2020 : 01:21:38 AM
class A{
	class B{

	};
	void f(){
		class C{};
		{
			class D{};
		}
		class E{};
	}
};


The code is shown in VA Outline as :-



It missed "D".

------

In VA Outline, I also doubt what right-click>"Display Region" means. It doesn't show "#pragma region" inside a function.
8   L A T E S T    R E P L I E S    (Newest First)
almostPerfectVa Posted - Sep 08 2020 : 9:50:50 PM
I tried.
VA Hashtags and Extract Method are very useful features, but not suitable for my worst situations.

I still want to group VA HashTags and VA Outline into 1 window, OR VA Outline to show inner class inside function correctly.
My current workaround is using another plugin but it is less than ideal.

Thank for the information.
feline Posted - Sep 08 2020 : 06:24:33 AM
Unfortunately we have not made any progress yet on either the feature request or the bug report.

For the feature request, showing regions inside functions, have you tried using VA Hashtags instead? This feature is designed for something much closer to what you are looking for, and already exists.

We do have a bug tracker but it isn't publicly visible. You can always ask here for updates, and the thread should be updated when we fix an issue that is referenced in the thread.
almostPerfectVa Posted - Sep 07 2020 : 9:49:40 PM
Two months later, does it have been fixed?
Is there any bug tracker that I can access?
feline Posted - Jul 22 2020 : 05:52:42 AM
VA Outline and VA Hashtags are designed for quite different jobs, so they are going to show different information. Hashtags are designed to help you group together items that can, and normally are, scattered across several different files or even projects.

Have you considered using Extract Method, to separate out some of the code in these large functions?

https://support.wholetomato.com/default.asp?W155

I know this isn't always possible, or helpful, but worth mentioning in case it does help.
almostPerfectVa Posted - Jul 21 2020 : 9:36:56 PM
Wow, I have never thought VA would achieve that far.
It is comparable to/can be a substitute for Resharper's bookmark e.g. Ctrl+(shift)+number.
Thanks! It is a nice feature.

I wish the VA Outline can show the HashTags, so I don't have to :-
1. open 2 panels (VA Outline + VA HashTags)
2. look back and forth from 2 different hierarchy ... it is quite difficult

Thanks!
feline Posted - Jul 21 2020 : 07:40:50 AM
Are you aware of VA Hashtags? They are actually designed for exactly this sort of thing, and in this case it looks like cross referenced hashtags would be ideal:

https://docs.wholetomato.com/default.asp?W574#cross

here I would do something like this instead:

void calculateAILink() {
	//... very complex code ...
	// #BOOKMARK_A section starts here

		// house:#BOOKMARK_A house relation
		while (...) {
			//... very complex code ...
				// team:#BOOKMARK_A the below code will gather team info
			{
				//... very complex code ...
					// serialize:#BOOKMARK_A serialize of all information need for 1 team
					for (...) {

					}
			}
		}
	// #BOOKMARK_B section starts here
		// car:#BOOKMARK_B car relation
	// ....inside also has B.1, B.2, B.2.1 etc
}


use Alt-Shift-G on any of the #BOOKMARK_A tags and the menu will list all of the cross references, allowing you to jump directly to them. You can also see them listed in the VA Hashtags window, which you can set to group by file if you want, to help you get a clear overview of the tags being used in the current file. You can also filter and thus search the hashtags window quickly and effectively, letting you quickly find the tag (bookmark) you want.
almostPerfectVa Posted - Jul 20 2020 : 9:35:46 PM
I wish VA Outline to show some kind of bookmark.

First, I tried to use "#pragma region", but VA Outline doesn't show it.
So, the code in OP is just my workaround.

Here is a code that more similar to the real one.

void calculateAILink(){
     ... very complex code ...
     
     //BOOKMARK A: house relation
     while(...){
         ... very complex code ...
         //BOOKMARK A.1 : the below code will gather team info
         {
             ... very complex code ...
             //BOOKMARK A.1.1 : serialize of all information need for 1 team
             for(...){

             }
         }
     }
     //BOOKMARK B: car relation
     .... inside also has B.1, B.2, B.2.1 etc
}

I don't have code much like this. I accept that it is a bad practice to have very long function.
Nevertheless, when I need to do (e.g. for game code), such feature can save a lot of headache.

In Resharper, I can bookmark by adding "#pragma //some description". It will be shown in its file structure.

It will be shown as :-


For me, VA Outline is cuter and agiler than Resharper's, so I wish to see that feature in VA Outline.

feline Posted - Jul 20 2020 : 07:32:19 AM
VA Outline is designed to show an overview of the current file, so its not currently looking for regions inside a function, since this is to "narrow" in scope to be picked up. It is an interesting point though, so I have put in a feature request for this:

case=142480

As for your nested class, do you actually have much code like this? I can see having code nested like this with namespaces, but why with classes?

Still, its valid code, so VA should handle it, I have put in a bug report for this:

case=142481

© 2019 Whole Tomato Software, LLC Go To Top Of Page
Snitz Forums 2000