Whole Tomato Software Forums
Whole Tomato Software Forums
Main Site | Profile | Register | Active Topics | Members | Search | FAQ
User name:
Password:
Save Password
Forgot your password?

 All Forums
 Visual Assist
 Technical Support
 1555: VA Outline and define skipping
 New Topic  Reply to Topic
 Printer Friendly
Author Previous Topic Topic Next Topic  

accord
Whole Tomato Software

United Kingdom
3287 Posts

Posted - May 05 2007 :  9:36:48 PM  Show Profile  Reply with Quote
Preface: I am using DEFINES to guide my parser.

VA Outline recognizes some defines as a function.

This code:

#define INIT(x)
#define HIDDEN

class cTest {
	int apple; HIDDEN;
	int banana; INIT(5);
};

...produdes

cTest
   apple; HIDDEN;
   banana; INIT(5);
   INIT(5);

Second INIT(5); is not requied. (I think INIT(5) is recognized as a function.)

If VAX can recognize INIT as a define, than can avoid to show it as a separate line (to treat like HIDDEN). It would increase perspicuity.

What do you think?

Edited by - accord on May 06 2007 12:16:23 AM

feline
Whole Tomato Software

United Kingdom
18939 Posts

Posted - May 07 2007 :  08:54:47 AM  Show Profile  Reply with Quote
Certainly Live Outline is feeling a bit confused here. I am seeing the same thing, so I have done some tests to see what is happening.

Live Outline is seeing two statements on the INIT(5) line. If you remove the second semi-colon from this line then the problem goes away.

Depending on what the macro's are doing, and how they are defined, then you may be able to safely do this in your code. Is this an option?

zen is the art of being at one with the two'ness
Go to Top of Page

accord
Whole Tomato Software

United Kingdom
3287 Posts

Posted - May 07 2007 :  11:28:29 AM  Show Profile  Reply with Quote
Originally I didn't used semicolon, but if I don't use, then an another VAX feature will working bad: the "create implementation" stuff.

Put these lines into a header:

#define HIDDEN

class cTest {
	void Func1(); HIDDEN
	void Func2(); HIDDEN
};

Now try to use "Create implementation" on Func2, and you will get

HIDDEN
void cTest::Func2()
{

}

...in the cpp file. HIDDEN is completely unnecessary.
If I use semicolon after all HIDDEN (and after all other defines) then this feature will work.

So I use it as a workaround
Go to Top of Page

feline
Whole Tomato Software

United Kingdom
18939 Posts

Posted - May 07 2007 :  4:45:56 PM  Show Profile  Reply with Quote
So much for that work around

case=6436

zen is the art of being at one with the two'ness
Go to Top of Page

accord
Whole Tomato Software

United Kingdom
3287 Posts

Posted - May 09 2007 :  12:47:23 PM  Show Profile  Reply with Quote
case=6436 is for Create Implementation, or for VA Outline?
Go to Top of Page

feline
Whole Tomato Software

United Kingdom
18939 Posts

Posted - May 09 2007 :  3:08:43 PM  Show Profile  Reply with Quote
oops, for Live Outline.

zen is the art of being at one with the two'ness
Go to Top of Page

support
Whole Tomato Software

5566 Posts

Posted - May 30 2007 :  11:55:48 PM  Show Profile  Reply with Quote
case=6436 fixed in build 1557

Edited by - support on May 31 2007 12:36:50 AM
Go to Top of Page

accord
Whole Tomato Software

United Kingdom
3287 Posts

Posted - May 31 2007 :  5:13:50 PM  Show Profile  Reply with Quote
Thank you Guys! Fast and good work... A LOT of VA Outline news And a lot of other bug fixes... Keep up the good work!

The new "Surround With / Comments" feature is simply awesome! Simple but great
Go to Top of Page

accord
Whole Tomato Software

United Kingdom
3287 Posts

Posted - May 31 2007 :  6:15:57 PM  Show Profile  Reply with Quote
One more little thing:

When I use "Surround With / Comments", then I use it again, one more commenting appears. I think it would be more useful, if I comments are removed second time, like when I touch twice "/" key in the editor.

What do you think?
Go to Top of Page

feline
Whole Tomato Software

United Kingdom
18939 Posts

Posted - Jun 01 2007 :  09:10:44 AM  Show Profile  Reply with Quote
I thought the same thing when I tested this, but consider the following piece of code:

// this function is short
// static void commentedOut()
// { }


this will be shown as a single item in Live Outline. Now what happens when you uncomment this single item...

For now I would suggest using "VA Outline -> Select in Editor" and then use / to uncomment the code, or uncomment it manually.

zen is the art of being at one with the two'ness
Go to Top of Page

accord
Whole Tomato Software

United Kingdom
3287 Posts

Posted - Jun 01 2007 :  2:02:03 PM  Show Profile  Reply with Quote
Ok, you won
Go to Top of Page
  Previous Topic Topic Next Topic  
 New Topic  Reply to Topic
 Printer Friendly
Jump To:
© 2023 Whole Tomato Software, LLC Go To Top Of Page
Snitz Forums 2000