[PyQt] Slot connections fail with newest snapshot
Phil Thompson
phil at riverbankcomputing.com
Thu Jul 21 15:27:13 BST 2016
On 21 Jul 2016, at 3:05 pm, Florian Bruhin <me at the-compiler.org> wrote:
>
> * Phil Thompson <phil at riverbankcomputing.com> [2016-07-21 15:03:21 +0100]:
>> On 21 Jul 2016, at 1:51 pm, Florian Bruhin <me at the-compiler.org> wrote:
>>>
>>> * Phil Thompson <phil at riverbankcomputing.com> [2016-07-17 12:57:24 +0100]:
>>>>>> The current behaviour is different, but what are you expecting to
>>>>>> happen (given your class does not inherit from QObject)?
>>>>>
>>>>> Oh, @pyqtSlot only works on classes inheriting from QObject? While
>>>>> that makes some sense, that's news for me!
>>>>>
>>>>> I think either it should just be ignored (like before?), or show some
>>>>> useful error message like "pyqtSlot can only be used on classes
>>>>> inheriting from QObject" or so. I also think this should be pointed
>>>>> out in the docs for @pyqtSlot - while the examples do inherit from
>>>>> QObject, it's not explicitly documented anywhere I think.
>>>>
>>>> You can use it in classes that are used as mixins with QObject derived classes.
>>>
>>> Hmm, I see.
>>>
>>> So for normal classes which are not QObject subclasses, @pyqtSlot was
>>> simply ignored so far?
>>
>> Yes.
>>
>>> What about using @pyqtSlot on free functions (rather than methods)?
>>> It seems that still works fine with the current snapshot - is that
>>> ignored as well?
>>
>> Yes.
>
> Will this stay that way, or will there be a warning/error added for
> that as well?
The only error is when you try and make an invalid connection. PyQt can't tell now a decorated function or method is going to be used so it shouldn't assume somebody hasn't found a valid use case.
Phil
More information about the PyQt
mailing list