summaryrefslogtreecommitdiffstats
path: root/pokescripting/ObjectWrapper.h
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.h
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.h')
-rw-r--r--pokescripting/ObjectWrapper.h18
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;
};
}