Diffstat (limited to 'libopie2/opiepim/core/opimaccesstemplate.h') (more/less context) (ignore whitespace changes)
-rw-r--r-- | libopie2/opiepim/core/opimaccesstemplate.h | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/libopie2/opiepim/core/opimaccesstemplate.h b/libopie2/opiepim/core/opimaccesstemplate.h index 6de68b1..8cf81c8 100644 --- a/libopie2/opiepim/core/opimaccesstemplate.h +++ b/libopie2/opiepim/core/opimaccesstemplate.h | |||
@@ -94,4 +94,5 @@ public: | |||
94 | */ | 94 | */ |
95 | virtual bool add( const T& t ) ; | 95 | virtual bool add( const T& t ) ; |
96 | bool add( const OPimRecord& ); | ||
96 | 97 | ||
97 | /* only the uid matters */ | 98 | /* only the uid matters */ |
@@ -213,4 +214,13 @@ bool OPimAccessTemplate<T>::add( const T& t ) { | |||
213 | } | 214 | } |
214 | template <class T> | 215 | template <class T> |
216 | bool OPimAccessTemplate<T>::add( const OPimRecord& rec) { | ||
217 | /* same type */ | ||
218 | if ( rec.rtti() == T::rtti() ) { | ||
219 | const T &t = static_cast<const T&>(rec); | ||
220 | return add(t); | ||
221 | } | ||
222 | return false; | ||
223 | } | ||
224 | template <class T> | ||
215 | bool OPimAccessTemplate<T>::remove( const T& t ) { | 225 | bool OPimAccessTemplate<T>::remove( const T& t ) { |
216 | return remove( t.uid() ); | 226 | return remove( t.uid() ); |