aboutsummaryrefslogtreecommitdiffstats
path: root/sources/pyside6/doc/extras/QtCore.Property.rst
diff options
context:
space:
mode:
Diffstat (limited to 'sources/pyside6/doc/extras/QtCore.Property.rst')
-rw-r--r--sources/pyside6/doc/extras/QtCore.Property.rst49
1 files changed, 24 insertions, 25 deletions
diff --git a/sources/pyside6/doc/extras/QtCore.Property.rst b/sources/pyside6/doc/extras/QtCore.Property.rst
index 5eb299f67..9ed7de427 100644
--- a/sources/pyside6/doc/extras/QtCore.Property.rst
+++ b/sources/pyside6/doc/extras/QtCore.Property.rst
@@ -1,8 +1,5 @@
.. currentmodule:: PySide6.QtCore
-.. _Property:
-
-Property
-********
+.. py:class:: Property
Detailed Description
--------------------
@@ -16,7 +13,7 @@ They are equivalent to the ``Q_PROPERTY`` macro in the `Qt Docs`_.
Here is an example that illustrates how to use this
function:
-.. code-block::
+.. code-block:: python
:linenos:
from PySide6.QtCore import QObject, Property
@@ -40,17 +37,20 @@ function:
The full options for ``QtCore.Property`` can be found with ``QtCore.Property.__doc__``:
-.. code-block::
-
- Property(self, type: type,
- fget: Optional[Callable] = None,
- fset: Optional[Callable] = None,
- freset: Optional[Callable] = None,
- fdel: Optional[Callable] = None,
- doc: str = '', notify: Optional[Callable] = None,
- designable: bool = True, scriptable: bool = True,
- stored: bool = True, user: bool = False,
- constant: bool = False, final: bool = False) -> PySide6.QtCore.Property
+.. code-block:: python
+
+ Property(self, type: type,
+ fget: Optional[Callable] = None,
+ fset: Optional[Callable] = None,
+ freset: Optional[Callable] = None,
+ fdel: Optional[Callable] = None,
+ doc: str = '',
+ notify: Optional[Callable] = None,
+ designable: bool = True,
+ scriptable: bool = True,
+ stored: bool = True, user: bool = False,
+ constant: bool = False,
+ final: bool = False) -> PySide6.QtCore.Property
Normally, only ``type``, ``fget``and ``fset`` are used.
@@ -65,16 +65,16 @@ requires a ``type`` parameter.
In the above example, the following lines would be equivalent properties:
-.. code-block::
+.. code-block:: python
- pp = QtCore.Property(int, readPP, setPP) # PySide version
- pp = property(readPP, setPP) # Python version
+ pp = QtCore.Property(int, readPP, setPP) # PySide version
+ pp = property(readPP, setPP) # Python version
As you know from the `Python Docs`_, ``Python`` allows to break the property
creation into multiple steps, using the decorator syntax. We can do this in
``PySide`` as well:
-.. code-block::
+.. code-block:: python
:linenos:
from PySide6.QtCore import QObject, Property
@@ -107,12 +107,15 @@ If you are using properties of your objects in QML expressions,
QML requires that the property changes are notified. Here is an
example illustrating how to do this:
-.. code-block::
+.. code-block:: python
:linenos:
from PySide6.QtCore import QObject, Signal, Property
class Person(QObject):
+
+ name_changed = Signal()
+
def __init__(self, name):
QObject.__init__(self)
self._person_name = name
@@ -120,10 +123,6 @@ example illustrating how to do this:
def _name(self):
return self._person_name
- @Signal
- def name_changed(self):
- pass
-
name = Property(str, _name, notify=name_changed)
.. _`Python Docs`: https://docs.python.org/3/library/functions.html?highlight=property#property