Uploaded image for project: 'Qt for Python'
  1. Qt for Python
  2. PYSIDE-2168

QLocale.toString() issues

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • P2: Important
    • 6.5.0, 6.4.3, 6.2.12
    • 6.4.0
    • PySide
    • None
    • 87482f9ad (dev), 02e488c61 (dev), f13c65573 (6.4), 0dd3c3403 (tqtc/lts-6.2)

    Description

      Hi,

      I am having some issues using toString function from QLocale since I moved from PyQt5. My locale country is Spain, in case it matters for some region options. For trying to reproduce the following cases you can create a locale object first from QtCore.

       

      Negative numbers support:

      locale.toString(-4)  --> OverflowError. As is an integer number it should detect it and convert it, as is supported in the API

      Wrong decimal separator representation:

      locale.toString(1234)   --> 1234    (thousand separator is missing)

      locale.toString(12345) --> 12.345 (thousand separator is correct)

      locale.toString(float(3355443), 'f', 3) --> 3355.443,000 (thousand separator is missing)

      Supported signatures:

      When you get a TypeError exception a supported signatures option list appears. As it seems that the argument must be the right/excepted type when you could each function, it would be nice to get the different overload functions in the description as in the documented API.

       

      This is the API documentation for QLocale.toString() function.

      https://doc.qt.io/qtforpython/PySide6/QtCore/QLocale.html#PySide6.QtCore.PySide6.QtCore.QLocale.toString

       

      Thanks for your help.

      Iván

      Python 3.10
      Qt 6.4.3 (x86_64-little_endian-lp64 shared (dynamic) debug build; by GCC 11.3.0)
      
      toString(1234)= 1234
      toString(12345)= 12.345
      toString(float(3355443), 'f', 3)= 3355.443,000
      pyside268.py:16: RuntimeWarning: libshiboken: Overflow: Value -4 exceeds limits of type  [unsigned] "m" (8bytes).
        print("toString(-4)=", spanish.toString(-4))
      Traceback (most recent call last):
        File "/data1/kleint/projects/pyside268.py", line 16, in <module>
          print("toString(-4)=", spanish.toString(-4))
      OverflowError
      

      Attachments

        Issue Links

          For Gerrit Dashboard: PYSIDE-2168
          # Subject Branch Project Status CR V

          Activity

            People

              crmaurei Cristian Maureira-Fredes
              igc-dev Ivan Gonzalez
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: