summaryrefslogtreecommitdiffstats
path: root/pokescripting/ObjectWrapper.cpp
diff options
context:
space:
mode:
authorBen Boeckel <MathStuf@gmail.com>2008-08-18 18:51:31 +0000
committerBen Boeckel <MathStuf@gmail.com>2008-08-18 18:51:31 +0000
commitc1793a87ebea8c8e1bb2d5d1a409d105bfae3871 (patch)
treeb7ff53cf9747ad61a80b169e1adad96950f4b16c /pokescripting/ObjectWrapper.cpp
parentfa4764c9e4d86fdfa976bb9fa9f6976e82c496d5 (diff)
downloadsigen-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.cpp30
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);
}