summaryrefslogtreecommitdiffstats
path: root/scribus/pageitempointer.h
diff options
context:
space:
mode:
authorcraig <craig@11d20701-8431-0410-a711-e3c959e3b870>2012-01-01 11:40:09 +0000
committercraig <craig@11d20701-8431-0410-a711-e3c959e3b870>2012-01-01 11:40:09 +0000
commit7ed83b6c6666eb8b6b104c211ae7e52907350372 (patch)
tree4430b556abac0ad660a0aacf1887d77f85d8be02 /scribus/pageitempointer.h
downloadscribus-7ed83b6c6666eb8b6b104c211ae7e52907350372.tar.gz
scribus-7ed83b6c6666eb8b6b104c211ae7e52907350372.tar.xz
scribus-7ed83b6c6666eb8b6b104c211ae7e52907350372.zip
Branch 1.3.5 tree to 1.4.x tree, goodbye 1.3.x
git-svn-id: svn://scribus.net/branches/Version14x/Scribus@17163 11d20701-8431-0410-a711-e3c959e3b870
Diffstat (limited to 'scribus/pageitempointer.h')
-rw-r--r--scribus/pageitempointer.h63
1 files changed, 63 insertions, 0 deletions
diff --git a/scribus/pageitempointer.h b/scribus/pageitempointer.h
new file mode 100644
index 0000000..9750bb9
--- /dev/null
+++ b/scribus/pageitempointer.h
@@ -0,0 +1,63 @@
+//
+// C++ Interface: pageitempointer
+//
+// Description:
+//
+//
+// Author: Pierre Marchand <pierremarc@oep-h.com>, (C) 2008
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+
+#ifndef PAGEITEMPOINTER_H
+#define PAGEITEMPOINTER_H
+
+#include <QDataStream>
+#include <QMap>
+#include <QObject>
+#include <QPointer>
+#include <QString>
+
+
+class PageItem;
+
+class PageItemPointerDB : public QObject ,public QMap<QString, PageItem*>
+{
+ Q_OBJECT
+ public:
+ PageItemPointerDB(){}
+ ~PageItemPointerDB(){}
+
+ void addToDB(const QString& key, PageItem* value );
+
+ public slots:
+ void removeFromDB ( QObject* obj );
+};
+
+/**
+ * Holds a guarded pointer and offers some kind of serialization.
+ *
+ */
+
+class PageItemPointer : public QPointer<PageItem>
+{
+ static PageItemPointerDB PIdb;
+ public:
+ PageItemPointer() :QPointer<PageItem>() {}
+ PageItemPointer ( PageItem* pi );
+ PageItemPointer ( const PageItemPointer& pip );
+ PageItemPointer ( const QString& objname );
+ ~PageItemPointer();
+
+
+};
+
+QDataStream & operator<< ( QDataStream & out , const PageItemPointer& pip );
+QDataStream & operator>> ( QDataStream & in , PageItemPointer& pip );
+
+
+
+
+#endif
+