diff --git a/CHANGELOG.md b/CHANGELOG.md index 0b373539..b40f03a8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -22,7 +22,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). * [#162](https://github.com/python-qt-tools/PyQt5-stubs/pull/162) fixes all method not declared as signals * [#184](https://github.com/python-qt-tools/PyQt5-stubs/pull/184) Fix missing module variable detected by latest mypy 0.930 - +* [#183](https://github.com/python-qt-tools/PyQt5-stubs/pull/183) Add missing operations on QSize ## 5.15.2.0 ### Added diff --git a/PyQt5-stubs/QtCore.pyi b/PyQt5-stubs/QtCore.pyi index 8e74e0eb..1413e038 100644 --- a/PyQt5-stubs/QtCore.pyi +++ b/PyQt5-stubs/QtCore.pyi @@ -10767,14 +10767,17 @@ class QSize(sip.simplewrapper): @typing.overload def __init__(self, a0: 'QSize') -> None: ... - def __add__(self, value: 'QSize') -> 'QSize': ... def __eq__(self, value: object) -> bool: ... + def __ne__(self, value: object) -> bool: ... + def __add__(self, value: 'QSize') -> 'QSize': ... def __iadd__(self, value: 'QSize') -> 'QSize': ... - def __imul__(self, value: float) -> 'QSize': ... + def __sub__(self, value: 'QSize') -> 'QSize': ... def __isub__(self, value: 'QSize') -> 'QSize': ... def __mul__(self, value: float) -> 'QSize': ... - def __ne__(self, value: object) -> bool: ... - def __sub__(self, value: 'QSize') -> 'QSize': ... + def __rmul__(self, value: float) -> 'QSize': ... + def __imul__(self, value: float) -> 'QSize': ... + def __truediv__(self, value: float) -> 'QSize': ... + def __itruediv__(self, value: float) -> 'QSize': ... def shrunkBy(self, m: QMargins) -> 'QSize': ... def grownBy(self, m: QMargins) -> 'QSize': ... @@ -10812,14 +10815,17 @@ class QSizeF(sip.simplewrapper): @typing.overload def __init__(self, a0: 'QSizeF') -> None: ... - def __add__(self, value: 'QSizeF') -> 'QSizeF': ... def __eq__(self, value: object) -> bool: ... + def __ne__(self, value: object) -> bool: ... + def __add__(self, value: 'QSizeF') -> 'QSizeF': ... def __iadd__(self, value: 'QSizeF') -> 'QSizeF': ... - def __imul__(self, value: float) -> 'QSizeF': ... + def __sub__(self, value: 'QSizeF') -> 'QSizeF': ... def __isub__(self, value: 'QSizeF') -> 'QSizeF': ... def __mul__(self, value: float) -> 'QSizeF': ... - def __ne__(self, value: object) -> bool: ... - def __sub__(self, value: 'QSizeF') -> 'QSizeF': ... + def __rmul__(self, value: float) -> 'QSizeF': ... + def __imul__(self, value: float) -> 'QSizeF': ... + def __truediv__(self, value: float) -> 'QSizeF': ... + def __itruediv__(self, value: float) -> 'QSizeF': ... def shrunkBy(self, m: QMarginsF) -> 'QSizeF': ... def grownBy(self, m: QMarginsF) -> 'QSizeF': ... diff --git a/tests/qsize.py b/tests/qsize.py new file mode 100644 index 00000000..4966cd97 --- /dev/null +++ b/tests/qsize.py @@ -0,0 +1,72 @@ +from PyQt5 import QtCore + +# QSize tests +qs1 = QtCore.QSize(1,2) +qs2 = QtCore.QSize(3,4) +qs3 = QtCore.QSize(5,6) + +qs3 = qs1 + qs2 +assert type(qs3) == QtCore.QSize +qs3 = qs1 - qs2 +assert type(qs3) == QtCore.QSize +qs3 += qs1 +assert type(qs3) == QtCore.QSize +qs3 -= qs2 +assert type(qs3) == QtCore.QSize + +qs3 = qs1 * 3 +assert type(qs3) == QtCore.QSize +qs3 = qs1 * 3.0 +assert type(qs3) == QtCore.QSize + +qs3 = 3 * qs1 +assert type(qs3) == QtCore.QSize +qs3 = 3.0 * qs1 +assert type(qs3) == QtCore.QSize + +qs3 = qs1 / 2.0 +assert type(qs3) == QtCore.QSize + +qs3 *= 3 +assert type(qs3) == QtCore.QSize +qs3 *= 3.0 +assert type(qs3) == QtCore.QSize + +qs3 /= 3.0 +assert type(qs3) == QtCore.QSize + + +# QSizeF tests +qsf1 = QtCore.QSizeF(1.0,2.0) +qsf2 = QtCore.QSizeF(3.0,4.0) +qsf3 = QtCore.QSizeF(5.0,6.0) + +qsf3 = qsf1 + qsf2 +assert type(qsf3) == QtCore.QSizeF +qsf3 = qsf1 - qsf2 +assert type(qsf3) == QtCore.QSizeF +qsf3 += qsf1 +assert type(qsf3) == QtCore.QSizeF +qsf3 -= qsf2 +assert type(qsf3) == QtCore.QSizeF + +qsf3 = qsf1 * 3 +assert type(qsf3) == QtCore.QSizeF +qsf3 = qsf1 * 3.0 +assert type(qsf3) == QtCore.QSizeF + +qsf3 = 3 * qsf1 +assert type(qsf3) == QtCore.QSizeF +qsf3 = 3.0 * qsf1 +assert type(qsf3) == QtCore.QSizeF + +qsf3 = qsf1 / 2.0 +assert type(qsf3) == QtCore.QSizeF + +qsf3 *= 3 +assert type(qsf3) == QtCore.QSizeF +qsf3 *= 3.0 +assert type(qsf3) == QtCore.QSizeF + +qsf3 /= 3.0 +assert type(qsf3) == QtCore.QSizeF