diff options
| author | craig <craig@11d20701-8431-0410-a711-e3c959e3b870> | 2012-01-01 11:40:09 +0000 |
|---|---|---|
| committer | craig <craig@11d20701-8431-0410-a711-e3c959e3b870> | 2012-01-01 11:40:09 +0000 |
| commit | 7ed83b6c6666eb8b6b104c211ae7e52907350372 (patch) | |
| tree | 4430b556abac0ad660a0aacf1887d77f85d8be02 /scribus/pageitempointer.h | |
| download | scribus-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.h | 63 |
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 + |
