diff options
author | Lukáš Lalinský <lalinsky@gmail.com> | 2008-12-07 17:52:36 +0100 |
---|---|---|
committer | Lukáš Lalinský <lalinsky@gmail.com> | 2008-12-07 17:52:36 +0100 |
commit | 0092b62413fa6a5727530f0eb5c5044a322870d3 (patch) | |
tree | 78939cf9c2c03988ae05408f238bf5658a4002c7 /src/diagramitem.h | |
parent | 6b42618de7c3be2681ad4e49eb412e56b700d59e (diff) | |
download | dbmodel-0092b62413fa6a5727530f0eb5c5044a322870d3.tar.xz |
Refactored XML processing, improved copy&paste, new file format
Diffstat (limited to 'src/diagramitem.h')
-rw-r--r-- | src/diagramitem.h | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/src/diagramitem.h b/src/diagramitem.h index f66a48c..3444f8d 100644 --- a/src/diagramitem.h +++ b/src/diagramitem.h @@ -18,16 +18,41 @@ #define DATABASEMODELITEM_H #include <QGraphicsItem> +#include <QDomDocument> +#include <QDomElement> +#include <QUuid> +class QMimeData; +class DiagramDocument; class DiagramItem : public QObject, public QGraphicsItem { + Q_OBJECT + public: enum { Table = UserType + 1, Relation }; + DiagramDocument *document() const; + + QUuid id() const { return m_id; } + void setId(QUuid id); + void createId(); + DiagramItem(DiagramItem *parent = 0); + + static const char *staticTypeName() { return ""; } + virtual const char *typeName() = 0; + + virtual void loadFromXml(QDomElement element, DiagramDocument *document = 0); + virtual void saveToXml(QDomDocument doc, QDomElement element); + + virtual QMimeData *toMimeData(); + static DiagramItem *fromMimeData(const QMimeData *mimeData); + +public: + QUuid m_id; }; #endif |