ShadeMaker, a new palette making plugin

I still god an error in like 1139, so I went in and cast it myself

Thanks @okuma_10 , I’ll look into that one as well.

Hi @Ransom, unfortunately, your plugin is one of the plugins that no longer works due to the changes brought by the update to Krita 5.2.0. I, as a non-programmer, only believe I read that there was a change affecting floating point arithmetic, I believe towards integers, but you should be able to find this out.

Not all plugins are affected, but yours is unfortunately one of them. A few of the affected plugins have already been fixed, so it seems to be a minor, and above all, a solvable problem.

This is the error message:
TypeError: setX(se|f, int): argument 1 has unexpected type 'float'
and here is the full text:

TypeError
Python 3.10.7: c:\TC_PP\Tools\KRITA_strot\bin\krita.exe
Sun Oct 22 13:42:54 2023

A problem occurred in a Python script.  Here is the sequence of
function calls leading up to the error, in the order they occurred.

 c:\Users\strot\AppData\Roaming\krita\pykrita\ShadeMaker\ShadeMaker.py in popup(self=<ShadeMaker.ShadeMaker.QShadeMaker.QSettingsMenu object>)
  657 
  658             pos = self.parent().mapFromGlobal(QCursor.pos())
  659             pos.setX(pos.x() - (self.sizeHint().width() * .9))
  660             pos.setY(pos.y() - (self.sizeHint().height() * .05))
  661 
pos = PyQt5.QtCore.QPoint(14, 38)
pos.setX = <built-in method setX of QPoint object>
pos.x = <built-in method x of QPoint object>
self = <ShadeMaker.ShadeMaker.QShadeMaker.QSettingsMenu object>
self.sizeHint = <built-in method sizeHint of QSettingsMenu object>
).width undefined
TypeError: setX(self, int): argument 1 has unexpected type 'float'
    __cause__ = None
    __class__ = <class 'TypeError'>
    __context__ = None
    __delattr__ = <method-wrapper '__delattr__' of TypeError object>
    __dict__ = {}
    __dir__ = <built-in method __dir__ of TypeError object>
    __doc__ = 'Inappropriate argument type.'
    __eq__ = <method-wrapper '__eq__' of TypeError object>
    __format__ = <built-in method __format__ of TypeError object>
    __ge__ = <method-wrapper '__ge__' of TypeError object>
    __getattribute__ = <method-wrapper '__getattribute__' of TypeError object>
    __gt__ = <method-wrapper '__gt__' of TypeError object>
    __hash__ = <method-wrapper '__hash__' of TypeError object>
    __init__ = <method-wrapper '__init__' of TypeError object>
    __init_subclass__ = <built-in method __init_subclass__ of type object>
    __le__ = <method-wrapper '__le__' of TypeError object>
    __lt__ = <method-wrapper '__lt__' of TypeError object>
    __ne__ = <method-wrapper '__ne__' of TypeError object>
    __new__ = <built-in method __new__ of type object>
    __reduce__ = <built-in method __reduce__ of TypeError object>
    __reduce_ex__ = <built-in method __reduce_ex__ of TypeError object>
    __repr__ = <method-wrapper '__repr__' of TypeError object>
    __setattr__ = <method-wrapper '__setattr__' of TypeError object>
    __setstate__ = <built-in method __setstate__ of TypeError object>
    __sizeof__ = <built-in method __sizeof__ of TypeError object>
    __str__ = <method-wrapper '__str__' of TypeError object>
    __subclasshook__ = <built-in method __subclasshook__ of type object>
    __suppress_context__ = False
    __traceback__ = <traceback object>
    args = ("setX(self, int): argument 1 has unexpected type 'float'",)
    with_traceback = <built-in method with_traceback of TypeError object>

The above is a description of an error in a Python program.  Here is
the original traceback:

Traceback (most recent call last):
  File "c:\Users\strot\AppData\Roaming\krita\pykrita\ShadeMaker\ShadeMaker.py", line 659, in popup
    pos.setX(pos.x() - (self.sizeHint().width() * .9))
TypeError: setX(self, int): argument 1 has unexpected type 'float'

Inconveniently, it’s always when you need a tool like your plugin that you realize it’s no longer working. :wink:

Michelist

1 Like