Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

managertemplate.h

Go to the documentation of this file.
00001 #ifndef OPIE_DATE_BOOK_MANAGER_TEMPLATE_H
00002 #define OPIE_DATE_BOOK_MANAGER_TEMPLATE_H
00003 
00004 #include <qdialog.h>
00005 #include <qmap.h>
00006 #include <qstring.h>
00007 
00008 namespace Datebook {
00013     template<class T>
00014     class ManagerTemplate {
00015         typedef typename QMap<QString, T>::ConstIterator Iterator;
00016     public:
00017         ManagerTemplate();
00018         virtual ~ManagerTemplate();
00019 
00020         virtual void add( const QString&, const T& t );
00021         void remove( const QString& );
00022         virtual bool load() = 0;
00023         virtual bool save() = 0;
00024 
00025         QStringList names()const;
00026         T value(const QString&)const;
00027 
00028     protected:
00029         QMap<QString, T> m_map;
00030     };
00031     template<class T>
00032     ManagerTemplate<T>::ManagerTemplate() {
00033     }
00034     template<class T>
00035     ManagerTemplate<T>::~ManagerTemplate() {
00036     }
00037     template<class T>
00038     void ManagerTemplate<T>::add( const QString& str, const T& t ) {
00039         m_map.insert( str, t );
00040     }
00041     template<class T>
00042     void ManagerTemplate<T>::remove( const QString& str ) {
00043         m_map.remove( str );
00044     }
00045     template<class T>
00046     QStringList ManagerTemplate<T>::names()const {
00047         QStringList lst;
00048         Iterator it;
00049         for ( it = m_map.begin(); it != m_map.end(); ++it ) {
00050             lst << it.key();
00051         }
00052         return lst;
00053     }
00054     template<class T>
00055     T ManagerTemplate<T>::value( const QString& str)const {
00056         return m_map[str];
00057     }
00058 }
00059 
00060 #endif

Generated on Sat Nov 5 16:15:53 2005 for OPIE by  doxygen 1.4.2