diff options
Diffstat (limited to 'pokescripting/ObjectWrapper.h')
| -rw-r--r-- | pokescripting/ObjectWrapper.h | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/pokescripting/ObjectWrapper.h b/pokescripting/ObjectWrapper.h index 69a15150..648b693b 100644 --- a/pokescripting/ObjectWrapper.h +++ b/pokescripting/ObjectWrapper.h @@ -28,22 +28,34 @@ // Qt includes #include <QtCore/QMap> #include <QtCore/QObject> +#include <QtCore/QPair> namespace Pokescripting { +// Forward declarations +class PokemodWrapper; + class POKESCRIPTING_EXPORT ObjectWrapper : public Config { Q_OBJECT Q_PROPERTY(int id READ id) public: - ObjectWrapper(const Pokemod::Object* object, QObject* parent); + typedef QPair<ObjectWrapper*, int> Signiture; + + ObjectWrapper(const Pokemod::Object* object, ObjectWrapper* parent); int id() const; - const Pokemod::Pokemod* pokemod() const; + + const ObjectWrapper* parent() const; + ObjectWrapper* parent(); + + const PokemodWrapper* pokemod() const; + PokemodWrapper* pokemod(); protected: - static QMap<int, ObjectWrapper*> m_instances; + static QMap<Signiture, ObjectWrapper*> m_instances; private: + ObjectWrapper* m_parent; const Pokemod::Object* m_object; }; } |
