Author |
Topic |
|
Dusan
Whole Tomato Software
Slovakia
177 Posts |
Posted - May 25 2012 : 03:02:26 AM
|
It would be fine to be able to export/import existing definition databases for use in projects where are some parsing problems or directly set directories to parse and save definitions. Imagine situation where programmer has a problem with intellisense of some third parties projects if they are parsed all together, but if they are parset separately, there is no problem. In this case you would be able to preparse all projects separately into some lets say .vaxpp files (VA X PreParsed) and then select between those to set data used in suggestions.
New tool could allow user to: 1.) set directories to parse 2.) set name of definition database 3.) choose between preparsed definitions 4.) select multiple prepased definitions
This way we would have separate database for MFC, ATL, WIN32, QT and any third party project and would not be needed always parse whole set of stable files together, but only our working project. |
|
feline
Whole Tomato Software
United Kingdom
19022 Posts |
Posted - May 25 2012 : 12:30:46 PM
|
Are you aware of VA's C/C++ Directories settings:
http://www.wholetomato.com/products/features/directories.asp
If you are using VS2010 you can set the Platform to "Project defined" so that the directory list is taken from the project you are currently working on, so different projects will get a different directory list.
Are you seeing parsing problems? If so it would be good to know about these, so that we can try to get them fixed, so you don't have to try and work around them. |
zen is the art of being at one with the two'ness |
|
|
Dusan
Whole Tomato Software
Slovakia
177 Posts |
Posted - May 26 2012 : 10:16:57 AM
|
I do not mean problems only with parsing, but sometimes I use libraries which have common object/method names, but need to work with all together in one project. In this case, VAX suggests all methods mixed or may suggest members of object with same name, but defined in other library than is currently in use. Lets say I have a library which has defined class DialogBox, but also Win32 has the same definition. In this situation, suggestions from VAX may be confusing. And that is only small example. If I would say, that now I want use this, or that, it would be more correct suggestions. |
|
|
feline
Whole Tomato Software
United Kingdom
19022 Posts |
Posted - May 28 2012 : 4:21:25 PM
|
When this happens, are the libraries using namespaces? I am wondering how you keep the different libraries from clashing when compiling.
You should only get this mixing of libraries when VA cannot work out which library you are currently using, so I am wondering how you tell the compiler which library you are using. |
zen is the art of being at one with the two'ness |
|
|
Dusan
Whole Tomato Software
Slovakia
177 Posts |
Posted - May 29 2012 : 07:51:47 AM
|
Compiler preprocesses #include directives, so it does not have problem to identify which object is currently used, but VAX has also loaded stable headers, so if I need clear suggestions, I have to change stable headers, reset UI and work. And next time do the same more and more times if I need to use another library ... which I do not like to... |
|
|
feline
Whole Tomato Software
United Kingdom
19022 Posts |
Posted - May 29 2012 : 11:51:40 AM
|
Which IDE are you using? In VS2010 you can set the Platform to "Project defined" so that the directory list is taken from the project you are currently working on, so different projects will get a different directory list.
Have you tried removing all of these project directories from the stable include directory list, and relying on VA being able to look up the #include lines directly, to work out which class you are using? |
zen is the art of being at one with the two'ness |
|
|
Dusan
Whole Tomato Software
Slovakia
177 Posts |
Posted - May 30 2012 : 02:19:08 AM
|
quote: Which IDE are you using?
VS2005
quote: In VS2010 you can set the Platform to "Project defined" so that the directory list is taken from the project you are currently working on, so different projects will get a different directory list.
This option is probably only in VS2010, because I do not see it here.
quote: Have you tried removing all of these project directories from the stable include directory list, and relying on VA being able to look up the #include lines directly, to work out which class you are using?
Yes, I have, but then does not work 'Add include' option which is one of my favorite.
|
|
|
feline
Whole Tomato Software
United Kingdom
19022 Posts |
Posted - May 30 2012 : 1:03:20 PM
|
The "Project defined" setting is VS2010 specific, yes. This is related to how VS2010 changes these settings.
Are you looking for project specific stable include directories, or are you looking for different sets of stable include directories that you change around, that are not tied to the current project?
Changing the stable include settings is going to effect Add Include, yes, which is why I am looking for an understanding of what you are after here.
Setting up "groups" of database knowledge is a lot of overhead, so I am looking for a simpler approach.
If just changing the stable include directories on occasion is all you need to do, these are stored in the registry, so you can create a simple script to set / import the desired registry keys, delete the current VA database from the hard drive, and then load the IDE with the matching solution, by passing the path to the .sln file as a command line parameter to the IDE.
Since the database will have been deleted, VA will recreate it, using the current stable include directories as read from the registry. Does this sound like it will do what you want? If so I can help talk you through doing this. |
zen is the art of being at one with the two'ness |
|
|
Dusan
Whole Tomato Software
Slovakia
177 Posts |
Posted - May 31 2012 : 12:36:22 PM
|
quote: If just changing the stable include directories on occasion is all you need to do, these are stored in the registry, so you can create a simple script to set / import the desired registry keys, delete the current VA database from the hard drive, and then load the IDE with the matching solution, by passing the path to the .sln file as a command line parameter to the IDE.
Since the database will have been deleted, VA will recreate it, using the current stable include directories as read from the registry. Does this sound like it will do what you want? If so I can help talk you through doing this.
It is sooo complicated... I am too lazy for such settings / registry management. And still, what I am looking for is to change VAX database on the fly (without need of IDE restart). Is it so hard to save / load parsed data to HDD for you? Perhaps you are lazy as well ... |
|
|
feline
Whole Tomato Software
United Kingdom
19022 Posts |
Posted - Jun 12 2012 : 11:54:51 AM
|
When you change the stable include directories we need to rescan all of your stable include directories, and your solution as well. Trying to just update an "old" database from last time you selected just library A and B for your stable include directories is going to be complex, and quite possibly error prone.
A full reparse is likely to take longer than restarting the IDE, so trying to do this without restarting the IDE is unlikely to speed things up by much, and will make our options dialog, and database management more complex.
This is not impossible, but sadly we are not going to try and do this, since the complexity seems to out way the benefits. |
zen is the art of being at one with the two'ness |
|
|
|
Topic |
|