[solved] v17 BUG Text clipped MarkUp |
Post Reply |
Author | |
MacW
Senior Member Joined: 26 June 2007 Status: Offline Points: 253 |
Post Options
Thanks(0)
Posted: 09 January 2016 at 1:29pm |
Hi,
congrats to the new release. Surely a lot of work was put into that. Unfortunately, after installing the final version, it tool only 5 seconds to find the first bug: I use task dialogs with XAML markup. In the new version, text is clipped in the middle of the sentence, the Verify check boxes are clpped in the middle of the sentence etc. I cannot ship my software with this bug, please respond swiftly. The text clipped is: <TextBlock TextWrapping='Wrap'>Reset only the options in this dialog.</TextBlock> while the text <TextBlock TextWrapping='Wrap'>Reset the options in this dialog and also all custom data settings I made for individual file formats.</TextBlock> is displayed correctly. See: The text in the upper row should read "Reset the options in this dialog." Here is an example with a clipped Verify check box: It should read "Don't show this message again". This problem is new to version 17. The screen shots were taken on a standard 4K monitor with 3940 pixels horizontal resolution at 150% font-size scaling (Windows) and 144 DPI. Please advice, I need to ship on Tuesday. |
|
MacW
Senior Member Joined: 26 June 2007 Status: Offline Points: 253 |
Post Options
Thanks(0)
|
Maybe this is related to clipped text in Task Dialogs (see my other post).
Version 17 clips text output in tool tips. The width is apparently calculated correct, but the text is clipped somewhere in the middle: Please advice soonest. Windows 10 64-bit. 4K monitor with 3940 pixel and 144 DPI. |
|
MacW
Senior Member Joined: 26 June 2007 Status: Offline Points: 253 |
Post Options
Thanks(0)
|
I have found out that this seems to be related to how you manage DPI awareness in your toolkit.
The CXTPDpi::Init() method gets called very early, by some static variables you fill. You call GetDC(NULL) and calculate the screen DPI as 96. But the monitor is actually using 144 DPI. After I figured that, I placed a call to XTPDpiHelper()->Invalidate(); in the constructor of CMainFrame. This causes the method CXTPDpi::Init() to be called again. And this time, the DC returned by GetDC(NULL) returns the correct 144 DPI. Seems to be a side-effect of XTP or MFC initialization. This solves the problem with the clipped "Verify" texts in Task dialogs, but not the other problems. The problem with the clipped text in tooltips is also not affected by this change. I had so far no feedback on these issues. I'm already preparing plan B, going back to XTP version 16. Too many issues with the 17 release, sorry. |
|
iamgtd
Senior Member Joined: 25 February 2009 Status: Offline Points: 131 |
Post Options
Thanks(1)
|
Since the update to V 17.0 the xaml caption of a backstagebutton is truncated. That means from a text with several words the last word isn't shown. If one character is added to the last word, the caption will be shown correctly. Not every text is concerned, we using on other backstagebuttons shorter and also longer captions without this problem.
I have created a sample which shows this behaviour. The labels above the buttons shows the text for the caption. You can see that on Test1 and Test3 the captions are truncated. On buttons 3 and 4 all letters are replaced by numbers. uploads/4998/TestCodejockBackstageButton.zip |
|
---------
OS: Win 10 64 bit Codejock Version 22.1 ActiveX MS Visual Studio 2022 - C# --------- |
|
iamgtd
Senior Member Joined: 25 February 2009 Status: Offline Points: 131 |
Post Options
Thanks(0)
|
The issue with truncated caption on backstagebuttons isn't fixed with v17.2
|
|
---------
OS: Win 10 64 bit Codejock Version 22.1 ActiveX MS Visual Studio 2022 - C# --------- |
|
olebed
Admin Group Joined: 01 July 2014 Location: Ukraine Status: Offline Points: 841 |
Post Options
Thanks(0)
|
Hello iamgtd,
Your sample is very helpful, but I can't find reason and solution yet. I found svn revision where bug was introduced, but that was branch merging with a lot of changes in markup. |
|
MacW
Senior Member Joined: 26 June 2007 Status: Offline Points: 253 |
Post Options
Thanks(0)
|
Just installed version 17.2.0.
This problem is not fixed. The task dialog still renders only "Reset only the options in this" when using <TextBlock TextWrapping='Wrap'>Reset only the options in this dialog.</TextBlock> as the source. Monitor with 144 DPI setting, Windows 10. |
|
agontarenko
Admin Group Joined: 25 March 2016 Status: Offline Points: 299 |
Post Options
Thanks(1)
|
Hello All,
I'm glad to inform you that the issue has been fixed. The fix will be available in the next beta or final release. as hot fix you can change method CXTPMarkupGdiPlusDeviceContext::MeasureString in file Source/Markup/DeviceContext/XTPMarkupGdiPlusDeviceContext.cpp. Just delete ceil() calls
Regards,
Artem Gontarenko |
|
MacW
Senior Member Joined: 26 June 2007 Status: Offline Points: 253 |
Post Options
Thanks(0)
|
Hi, Artem
I've made the patch, re-compiled XTP and the problem is gone. Good job! Thank you very much. |
|
Marlon
Groupie Joined: 27 December 2011 Location: Germany Status: Offline Points: 16 |
Post Options
Thanks(0)
|
When it will be release?
|
|
Marlon
Product: Xtreme SuitePro (ActiveX) version 17.2.0 Platform: Windows 10(64bit) Language: Access 2007 (VBA) |
|
agontarenko
Admin Group Joined: 25 March 2016 Status: Offline Points: 299 |
Post Options
Thanks(0)
|
Probably sometime mid July
|
|
Marlon
Groupie Joined: 27 December 2011 Location: Germany Status: Offline Points: 16 |
Post Options
Thanks(0)
|
Thanks
|
|
Marlon
Product: Xtreme SuitePro (ActiveX) version 17.2.0 Platform: Windows 10(64bit) Language: Access 2007 (VBA) |
|
Post Reply | |
Tweet
|
Forum Jump | Forum Permissions You cannot post new topics in this forum You cannot reply to topics in this forum You cannot delete your posts in this forum You cannot edit your posts in this forum You cannot create polls in this forum You cannot vote in polls in this forum |