diff options
| author | Ben Boeckel <MathStuf@gmail.com> | 2008-08-18 18:51:31 +0000 |
|---|---|---|
| committer | Ben Boeckel <MathStuf@gmail.com> | 2008-08-18 18:51:31 +0000 |
| commit | c1793a87ebea8c8e1bb2d5d1a409d105bfae3871 (patch) | |
| tree | b7ff53cf9747ad61a80b169e1adad96950f4b16c /pokescripting/ObjectWrapper.cpp | |
| parent | fa4764c9e4d86fdfa976bb9fa9f6976e82c496d5 (diff) | |
| download | sigen-c1793a87ebea8c8e1bb2d5d1a409d105bfae3871.tar.gz sigen-c1793a87ebea8c8e1bb2d5d1a409d105bfae3871.tar.xz sigen-c1793a87ebea8c8e1bb2d5d1a409d105bfae3871.zip | |
[FIX] Script to make a tarball now defaults to HEAD for the revision
[FIX] Enumeration types used to help remove some checks
[FIX] Macro code moved to static members of Object (not all though)
[FIX] Scripting wrappers now share information by keeping track of already-created instances of the wrapper
[FIX] Scripting methods are now Q_SCRIPTABLE and not slots
git-svn-id: https://pokegen.svn.sourceforge.net/svnroot/pokegen/trunk@239 6ecfd1a5-f3ed-3746-8530-beee90d26b22
Diffstat (limited to 'pokescripting/ObjectWrapper.cpp')
| -rw-r--r-- | pokescripting/ObjectWrapper.cpp | 30 |
1 files changed, 26 insertions, 4 deletions
diff --git a/pokescripting/ObjectWrapper.cpp b/pokescripting/ObjectWrapper.cpp index 1158c46f..d1af3220 100644 --- a/pokescripting/ObjectWrapper.cpp +++ b/pokescripting/ObjectWrapper.cpp @@ -18,9 +18,12 @@ // Header include #include "ObjectWrapper.h" -QMap<int, Pokescripting::ObjectWrapper*> Pokescripting::ObjectWrapper::m_instances; +// Pokescripting includes +#include "PokemodWrapper.h" -Pokescripting::ObjectWrapper::ObjectWrapper(const Pokemod::Object* object, QObject* parent) : +QMap<Pokescripting::ObjectWrapper::Signiture, Pokescripting::ObjectWrapper*> Pokescripting::ObjectWrapper::m_instances; + +Pokescripting::ObjectWrapper::ObjectWrapper(const Pokemod::Object* object, ObjectWrapper* parent) : Config(parent), m_object(object) { @@ -31,7 +34,26 @@ int Pokescripting::ObjectWrapper::id() const return m_object->id(); } -const Pokemod::Pokemod* Pokescripting::ObjectWrapper::pokemod() const +const Pokescripting::ObjectWrapper* Pokescripting::ObjectWrapper::parent() const +{ + return m_parent; +} + +Pokescripting::ObjectWrapper* Pokescripting::ObjectWrapper::parent() +{ + return m_parent; +} + +const Pokescripting::PokemodWrapper* Pokescripting::ObjectWrapper::pokemod() const +{ + if (m_parent) + return m_parent->pokemod(); + return qobject_cast<const PokemodWrapper*>(m_parent); +} + +Pokescripting::PokemodWrapper* Pokescripting::ObjectWrapper::pokemod() { - return qobject_cast<const Pokemod::Pokemod*>(m_object->pokemod()); + if (m_parent) + return m_parent->pokemod(); + return qobject_cast<PokemodWrapper*>(m_parent); } |
