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
 Possible regressions
 New Topic  Reply to Topic
 Printer Friendly
Author Previous Topic Topic Next Topic  

dgallo
Senior Member

26 Posts

Posted - Mar 11 2019 :  04:54:38 AM  Show Profile  Reply with Quote
Hi,
With the lastest build VA 2324 on VS 2019 :
- if I use Add forward declaration I got "namespace ForwardDeclare { class QSpecialLabel; }", it was not the case before, the namespace wasn't here.
- some VAssist configuration pages have a very big font (probably not related to the lastest build) : Corde Inspection and Source Link (You need to sign in with a 150% dpi to see that)

feline
Whole Tomato Software

United Kingdom
15905 Posts

Posted - Mar 11 2019 :  10:07:17 AM  Show Profile  Reply with Quote
Which OS are you using? Also which IDE are you using? So far I cannot reproduce the large font problem in the VA Options dialog. I am checking Windows 10 64bit, VS2017 and VA 2324. I have made sure to log off and log back in again after changing to 150% DPI, and still no sign of the problem.

So I am wondering if there is another factor that is required to see this problem, but if sure, I am not sure what it will be.

Am I correct in assuming that QSpecialLabel comes from the Qt library? I am installing this now to test this.

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

feline
Whole Tomato Software

United Kingdom
15905 Posts

Posted - Mar 11 2019 :  10:25:37 AM  Show Profile  Reply with Quote
Is QSpecialLabel one of your own classes? The name suggests this is part of the Qt library, but a quick search, and also a source code search, are not turning up any references to this class. Without knowing how the class is declared, it's going to be hard to say anything sensible about what is going on here.

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

dgallo
Senior Member

26 Posts

Posted - Mar 11 2019 :  11:38:36 AM  Show Profile  Reply with Quote
I'm using W10 64 VS2019 RC1SV1.

I've two monitor, one at 150% and the second at 100%.
Code inspection:

Code generation is OK:



QSpecialLabel is mine, not part of QtProject, but is defined as ;
class QSpecialLabel : public QLabel


And it's not part of any namespace.
I'll try to have a little project to try to reproduce, i've tested with a simple class and it's seems ok.


Go to Top of Page

feline
Whole Tomato Software

United Kingdom
15905 Posts

Posted - Mar 12 2019 :  10:37:28 AM  Show Profile  Reply with Quote
In VS2019 do you have:

IDE tools menu -> Options -> Environment -> General -> Optimize rendering for screens with different pixel densities (requires restart)

turned On or Off? I am assuming you have this turned On. I am able to reproduce some odd scaling problems with this setting turned on in the VA options dialog, but so far I am getting them on the sourcelinks page, not the code inspection page. I am not sure what you are doing differently to me to explain this difference.

I have put in a bug report for the problems I am seeing here:

case=137636

Can you please try logging out and logging back in again to see if this has any effect on the scaling in the VA options dialog?

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

feline
Whole Tomato Software

United Kingdom
15905 Posts

Posted - Mar 12 2019 :  10:56:25 AM  Show Profile  Reply with Quote
For the forward declaration, which version of Qt are you using? I have now installed Qt 5.12.1 and set up a simple test case here, with a class derived from QLabel, and I am not seeing any problems.

What do you get if you tell VA to add a forward declaration on QLabel? For me this is adding:

namespace QT_NAMESPACE { class QLabel; }

which is rather similar to what you are seeing, but at least makes more sense.

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

dgallo
Senior Member

26 Posts

Posted - Mar 12 2019 :  10:57:43 AM  Show Profile  Reply with Quote
Yes the option is turned ON. If I log out and log in again everything is fine (with two monitors), but it's ok because on the two monitor system, the main display is the 100% one, not the 150%. The problem is when I log in with only one monitor at 150% and after I plug another monitor at 100%.
I have no idea why the code inspection is not ok on my system, apart the fact that I'm using Windows 10 x64 1809 and you 1803.
Go to Top of Page

dgallo
Senior Member

26 Posts

Posted - Mar 12 2019 :  11:04:52 AM  Show Profile  Reply with Quote
I'm using Qt 4.8.7. I used to have also this form namespace QT_NAMESPACE { class QLabel; }, now I have ForwardDeclare.

But it seems to be project dependent, on some projects of my solution it's ok, on other projet not, I need to investigate further (in some projects Qt classes are included via precompiled headers)
Go to Top of Page

feline
Whole Tomato Software

United Kingdom
15905 Posts

Posted - Mar 12 2019 :  12:59:54 PM  Show Profile  Reply with Quote
I have tried running Windows update, and currently it is not offering me Windows 1809.

Based on the tests I have been running with multiple monitors here, connecting a monitor or changing the DPI while you are logged in can trigger "random" behaviours with the scaling in the VA options dialog, assuming you have the IDE optimise for different pixel densities setting turned on.

There probably is a pattern to this, but its not a simple one that is immediately obvious to me. I have made sure we have a bug report for the problems that are happening here, since we do need to be aware of this. Hopefully once both the IDE, .NET and Windows are all up to date, so this setting is enabled without having to take any extra steps, I can pin down the pattern more clearly and firmly.

For the forward declare with Qt, was the code:

namespace QT_NAMESPACE { class QLabel; }

correct? I have not used the Qt library in some years, and initially just got Qt installed and VA pointed at it enough to set up a basic test case. Since I remember all of Qt being wrapped in a QT_NAMESPACE this seems sort of reasonable.

If you do a find in files for "namespace ForwardDeclare" do you get any results?

If you use alt-g on QLabel in the different projects in your solution, do you get the same result or different results? What if you just place the caret into "QLabel" and look at what VA shows in its context and definition fields, at the top of the editor window? Is there any difference in what you are seeing there?

I am wondering why you are getting different results in different projects.

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

dgallo
Senior Member

26 Posts

Posted - Mar 12 2019 :  4:38:31 PM  Show Profile  Reply with Quote

I could not find any references to namespace FowardDeclare in my source code, however,
I have cleared all history and rebuilt VADatabase and now everything is fine.
Go to Top of Page

feline
Whole Tomato Software

United Kingdom
15905 Posts

Posted - Mar 13 2019 :  05:44:13 AM  Show Profile  Reply with Quote
Thank you for the update. In theory you should not have had to clear the VA database, but since you did, this suggests something got confused somewhere along the line. Installing a new build of VA should automatically trigger a symbol database rebuild regardless, so I am not sure what happened here.

Hopefully this will stay fixed, but if not, please do let me know, and I will try and get to the bottom of what is happening here.

When you are plugging in a second monitor, do you tend to do this with the IDE already open? I am assuming this is when you are working on a laptop, and then get it back to your desk, so you can add a second monitor?

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

dgallo
Senior Member

26 Posts

Posted - Mar 13 2019 :  05:47:49 AM  Show Profile  Reply with Quote
Is VA clear history when installing ? I've done clear history and rebuild database.

Yes you are correct when I plug the second monitor to my laptop the IDE is already open.

Edited by - dgallo on Mar 13 2019 05:50:01 AM
Go to Top of Page

sean
Whole Tomato Software

USA
2615 Posts

Posted - Mar 13 2019 :  07:57:47 AM  Show Profile  Reply with Quote
I've opened a bug report for the Add Forward Declaration bug; I don't think it is a regression though. case=137679
Go to Top of Page
  Previous Topic Topic Next Topic  
 New Topic  Reply to Topic
 Printer Friendly
Jump To:
© 2019 Whole Tomato Software, LLC Go To Top Of Page
Snitz Forums 2000