File indexing completed on 2024-07-21 13:18:56

0001 /* generated by rust_qt_binding_generator */
0002 #ifndef TEST_OBJECTS_RUST_H
0003 #define TEST_OBJECTS_RUST_H
0004 
0005 #include <QtCore/QObject>
0006 #include <QtCore/QAbstractItemModel>
0007 
0008 class Group;
0009 class InnerObject;
0010 class Person;
0011 
0012 class Group : public QObject
0013 {
0014     Q_OBJECT
0015     friend class Person;
0016 public:
0017     class Private;
0018 private:
0019     Person* const m_person;
0020     Private * m_d;
0021     bool m_ownsPrivate;
0022     Q_PROPERTY(Person* person READ person NOTIFY personChanged FINAL)
0023     explicit Group(bool owned, QObject *parent);
0024 public:
0025     explicit Group(QObject *parent = nullptr);
0026     ~Group();
0027     const Person* person() const;
0028     Person* person();
0029 Q_SIGNALS:
0030     void personChanged();
0031 };
0032 
0033 class InnerObject : public QObject
0034 {
0035     Q_OBJECT
0036     friend class Group;
0037     friend class Person;
0038 public:
0039     class Private;
0040 private:
0041     Private * m_d;
0042     bool m_ownsPrivate;
0043     Q_PROPERTY(QString description READ description WRITE setDescription NOTIFY descriptionChanged FINAL)
0044     explicit InnerObject(bool owned, QObject *parent);
0045 public:
0046     explicit InnerObject(QObject *parent = nullptr);
0047     ~InnerObject();
0048     QString description() const;
0049     void setDescription(const QString& v);
0050 Q_SIGNALS:
0051     void descriptionChanged();
0052 };
0053 
0054 class Person : public QObject
0055 {
0056     Q_OBJECT
0057     friend class Group;
0058 public:
0059     class Private;
0060 private:
0061     InnerObject* const m_object;
0062     Private * m_d;
0063     bool m_ownsPrivate;
0064     Q_PROPERTY(InnerObject* object READ object NOTIFY objectChanged FINAL)
0065     explicit Person(bool owned, QObject *parent);
0066 public:
0067     explicit Person(QObject *parent = nullptr);
0068     ~Person();
0069     const InnerObject* object() const;
0070     InnerObject* object();
0071 Q_SIGNALS:
0072     void objectChanged();
0073 };
0074 #endif // TEST_OBJECTS_RUST_H