Author |
Topic |
Rain Dog
Ketchup Master
88 Posts |
Posted - Feb 26 2008 : 3:24:33 PM
|
quote: Originally posted by feline
In the screen shots you have posted you are seeing a suggestion listbox. These are normally quite short, and they have the "A" icon under the lower left hand corner.
The "Any character not valid in a symbol" option applies to suggestion listboxes, but not to completion listboxes.
If after the database rebuild you are now getting a completion listbox then "(" will always accept the current item, since this is what the IDE does without VA installed, and we are being consistent. We are considering changing this, so these VA options apply to both suggestion and completion listboxes:
case=9369
Hopefully this makes sense
I think you guys should strongly consider not completing in that scenario. I've noted some of my problems I've had with the previous version of VAX and what made it 10x worse was the fact that it ALWAYS completed the suggestion for me which was especially aggravating on particularly long identifiers. |
|
|
feline
Whole Tomato Software
United Kingdom
19022 Posts |
Posted - Feb 27 2008 : 07:29:23 AM
|
This change is one we are looking to make relatively soon. At the same time it would be useful if we could find and fix the problems that are leading to you seeing incorrect listbox content in the first place. |
zen is the art of being at one with the two'ness |
|
|
znakeeye
Tomato Guru
379 Posts |
Posted - Feb 28 2008 : 12:54:16 PM
|
I'm also seeing this peculiar number - very often! Some interesting patterns ;) In hex: 55550012 In bin: 1010101010101010000000000010010
Perhaps it comes from this kind of code? std::stringstream ss; CStringW str = L"foo"; ss << str; // ss contains a hexadecimal number now! |
|
|
feline
Whole Tomato Software
United Kingdom
19022 Posts |
Posted - Feb 28 2008 : 5:00:20 PM
|
Interesting, the binary pattern especially. I have added these to the case, thank you for the observations. |
zen is the art of being at one with the two'ness |
|
|
support
Whole Tomato Software
5566 Posts |
Posted - Apr 10 2008 : 01:36:18 AM
|
case=12061 is fixed in build 1632 |
|
|
steinsomers
Ketchup Master
Belgium
65 Posts |
Posted - Apr 14 2008 : 06:38:53 AM
|
I'm afraid that the fix isn't quite there for me. The number 1431633938 is dead and buried, but instead I get other inappropriate suggestions. Not that many actually, but this one is annoying:
The suggestion appears after typing the bracket, regardless of whether what std::min or std::max was already there, and it disappears after 1 second. But typing anything during that second selects it. So typing std::max(1, x yields std::max(max_element, x .
As shown this happens on the most simple code in the most simple project, and consistently, but not after rebuilding the symbol database. VA first needs to get acquainted with a large code base before it starts acting that way. |
|
|
feline
Whole Tomato Software
United Kingdom
19022 Posts |
Posted - Apr 14 2008 : 11:45:14 AM
|
I am seeing something odd here, but I am running into a slightly bigger problem, "std::min" is not known on my VS2005 system. This is not a VA problem, the line does not compile.
When you place the caret into "algorithm" on the #include line what is shwon in VA's definition field? |
zen is the art of being at one with the two'ness |
|
|
steinsomers
Ketchup Master
Belgium
65 Posts |
Posted - Apr 14 2008 : 11:59:15 AM
|
The "definition" is C:\\Program Files\\Microsoft Visual Studio 8\\VC\\include\\algorithm . It's just part of the C++ Standard Library.
Note that min appears in macro color because Microsoft's windows.h or so defines a min and max macro as well, unless you define NOMINMAX. If you define a variable "min" earlier in the code, then VA colors the min in std::min like a variable, which is kind of weird, but the least of my worries. |
|
|
feline
Whole Tomato Software
United Kingdom
19022 Posts |
Posted - Apr 14 2008 : 1:03:24 PM
|
Let me have another go. I cannot easily type "std::min(" since the "std::" listbox does not contain "min" Instead I end up with "std::min_element()"
Since this is in your screen shot I suspect there is a connection between calling a function that does not exist, according to my VS2005 compiler, and the listbox you are seeing.
So I am currently trying to find out why on my system there is no function "std::min()" since this looks like it is a factor.
Just for reference, the error messages are:
Error 5 error C2589: '(' : illegal token on right side of '::' Error 7 error C2143: syntax error : missing ';' before '::' |
zen is the art of being at one with the two'ness |
|
|
steinsomers
Ketchup Master
Belgium
65 Posts |
Posted - Apr 15 2008 : 04:33:41 AM
|
Those are the exact error messages I get when compiling #include <windows.h>
#include <algorithm>
int main() { return std::min(0, 1); } because unless you define NOMINMAX or min and max up front, windows.h defines macros min and max with the same meaning as std::min and std::max, but botching any other function-style use of the identifiers min and max. Perhaps you are using a default Visual Studio project with precompiled headers that includes windows.h? I always have -DNOMINMAX as a compiler option, except in this example which doesn't have precompiled headers or any code not shown. |
Edited by - steinsomers on Apr 15 2008 07:39:15 AM |
|
|
feline
Whole Tomato Software
United Kingdom
19022 Posts |
Posted - Apr 15 2008 : 2:07:33 PM
|
Adding a:
#undef min
allows me to compile the code, which is good. I prefer my test cases to compile I am seeing the same problem with a short lived listbox here, and I have put this down as a high priority bug fix:
case=16028 |
zen is the art of being at one with the two'ness |
|
|
support
Whole Tomato Software
5566 Posts |
Posted - Apr 24 2008 : 12:49:12 AM
|
Some spurious listbox invocations have been fixed in build 1635. Please let us know if you continue to experience trouble. |
|
|
steinsomers
Ketchup Master
Belgium
65 Posts |
Posted - Apr 24 2008 : 07:34:02 AM
|
Will do. To be fair, 1632 really hasn't misbehaved to me other than the std:min/max and some rare events that may just as well have been caused by my fingers not quite moving where my brain intended. |
|
|
support
Whole Tomato Software
5566 Posts |
Posted - Aug 04 2010 : 5:40:59 PM
|
"Selections committed with" behavior for member lists is now configurable under VA Options | Advanced | Listboxes. (case=9369), implemented in build 1829. |
Whole Tomato Software, Inc. |
|
|
Topic |
|