-
-
Notifications
You must be signed in to change notification settings - Fork 101
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Qucs-S 24.1-7df03e9 - Yet Another Tuner Slider Bug #416
Comments
Yes, it seems the parser cannot recognize the decimal delimiter for DE locale. I will look into this. |
@3813127458 Could you tell your |
The LANG=en_US.UTF-8 On the actual development branch Qucs-S 24.1-9fc4db38 the problem still exists. I use the following desktop: Operating System: Manjaro Linux |
If you have a fix I will test it. We should think also about two further issues (optional):
|
I have tried to use your locale settings, but I cannot reproduce this issue. The numbers use the syntax with dot on my machine and tuner dialog has no problems. I have tried Ubunutu-22.04 with Qt 5.15 and Qt 6.2.4. I suspect this may be Qt version dependent or platform dependent. |
I have changed from Manjaro KDE/X11 to Manjaro GNOME/Wayland desktop and face same issue: Screencast_from_2024_01_12_15_58_18.webmlocale: System: System Details ReportReport details
Hardware Information:
Software Information:
|
What Qt version are you using? Is it Qt5 or Qt6 build? |
Qucs-S I always use these commands to build the current branch:
|
Also on openSUSE Tumbleweed the dot is not accepted in the tuner slider input fields: issue.webmOperating System: openSUSE Tumbleweed 20240119 LANG=en_US.UTF-8 KDE keyboard numblock setting: |
I still cannot reproduce it on Ubuntu. I have to install one of the mentioned distributions in the VM to make debugging. Don't expect a quick fix by this reason. |
@3813127458 on the video from the original post you type in 1.0 which is then parsed as 10 (1,00E+01) because of the German locale. If I'm not mixing it all up German uses points to delimit thousands and in other places points mean nothing. 10 > 2.9095 → min value is invalid. But had you used comma to delimit fractional part from integer one, it wouldn't have worked anyway, because text-to-float conversion is locale unaware So I believe the actual bug is the text-to-float conversion in tuner dialog. I can try to prepare a fix, but I can't say how long will it take, spare time has been scarce lately :( |
It seems the bug has been fixed by someone (maybe Vadim?) a couple of weeks ago. I am actually testing Windows version 24.1-afe87e7b and Linux version 24.2 on openSUSE Tumbleweed and can confirm that the tuner is working seamless without any issues with my locales de setting, both Windows and Linux. Therefore, I think this issue could be closed for now. |
Hm, that's strange. What's your locale settings on Tumbleweed? |
werner@ipc2:~> locale Operating System: openSUSE Tumbleweed 20240227 |
I've tried Qucs-S from the
@3813127458 could you please check whether the range of the slider actually changes when you input new values to "Min" or "Max" fields in tuner dialog? |
Yes, you are right, the bug at the slider limits still exists: Update: better video bug1.mp4I think in general the numbers should be point separated. Usually I do no take care about a locale setting and use always point "." as a separator in all scientific numeric applications. |
Input fields on tuner form use QDoubleValidators which by default operate in user's native locale. But unfortunately some other parts of tuner codebase are not locale-aware, which leads to bugs if user's native locale number formatting differs from that in "C". This commit makes tuner inputs native locale unaware, i.e. accept fractional numbers only if - dot is integral/fractional part separator - there is no group separators in number Scientific notation is accepted. Fixes ra3xdh#416
@3813127458 I've made a fix based on your idea of using dot as the only possible separator in numbers, PR #636 |
Fixed via #636 |
Input fields on tuner form use QDoubleValidators which by default operate in user's native locale. But unfortunately some other parts of tuner codebase are not locale-aware, which leads to bugs if user's native locale number formatting differs from that in "C". This commit makes tuner inputs native locale unaware, i.e. accept fractional numbers only if - dot is integral/fractional part separator - there is no group separators in number Scientific notation is accepted. Fixes ra3xdh#416
Input fields on tuner form use QDoubleValidators which by default operate in user's native locale. But unfortunately some other parts of tuner codebase are not locale-aware, which leads to bugs if user's native locale number formatting differs from that in "C". This commit makes tuner inputs native locale unaware, i.e. accept fractional numbers only if - dot is integral/fractional part separator - there is no group separators in number Scientific notation is accepted. Fixes ra3xdh#416
Input fields on tuner form use QDoubleValidators which by default operate in user's native locale. But unfortunately some other parts of tuner codebase are not locale-aware, which leads to bugs if user's native locale number formatting differs from that in "C". This commit makes tuner inputs native locale unaware, i.e. accept fractional numbers only if - dot is integral/fractional part separator - there is no group separators in number Scientific notation is accepted. Fixes ra3xdh#416
Probably this little bug is related to system language (EN) and system locales (DE) combination(?):
Tuner_Slider_Bug.zip
Screencast from 2023-12-28 07-06-47.webm
The text was updated successfully, but these errors were encountered: