Diffstat (limited to 'libopie/pim/obackendfactory.h') (more/less context) (ignore whitespace changes)
-rw-r--r-- | libopie/pim/obackendfactory.h | 41 |
1 files changed, 29 insertions, 12 deletions
diff --git a/libopie/pim/obackendfactory.h b/libopie/pim/obackendfactory.h index b796fb8..3a73210 100644 --- a/libopie/pim/obackendfactory.h +++ b/libopie/pim/obackendfactory.h @@ -11,5 +11,5 @@ * version. * ===================================================================== - * ToDo: Use plugins + * ToDo: Use plugins * ===================================================================== * Version: $Id$ @@ -17,4 +17,14 @@ * History: * $Log$ + * Revision 1.5 2003/02/21 23:31:52 zecke + * Add XML datebookresource + * -clean up todoaccessxml header + * -implement some more stuff in the oeven tester + * -extend DefaultFactory to not crash and to use datebook + * + * -reading of OEvents is working nicely.. saving will be added + * tomorrow + * -fix spelling in ODateBookAcces + * * Revision 1.4 2002/10/14 15:55:18 eilers * Redeactivate SQL.. ;) @@ -48,4 +58,5 @@ #include "otodoaccessxml.h" #include "ocontactaccessbackend_xml.h" +#include "odatebookaccessbackend_xml.h" #ifdef __USE_SQL @@ -65,7 +76,7 @@ class OBackendFactory DATE }; - + static T* Default( const QString backendName, const QString& appName ){ - + // __asm__("int3"); @@ -79,15 +90,19 @@ class OBackendFactory dict.insert( "todo", new int (TODO) ); dict.insert( "contact", new int (CONTACT) ); + dict.insert( "datebook", new int(DATE) ); qWarning ("TODO is: %d", TODO); qWarning ("CONTACT is: %d", CONTACT); - - switch ( *dict.take( backendName ) ){ + + int *find = dict[ backendName ]; + if (!find ) return 0; + + switch ( *find ){ case TODO: #ifdef __USE_SQL - if ( backend == "sql" ) + if ( backend == "sql" ) return (T*) new OTodoAccessBackendSQL(""); #else - if ( backend == "sql" ) + if ( backend == "sql" ) qWarning ("OBackendFactory:: sql Backend not implemented! Using XML instead!"); #endif @@ -95,16 +110,18 @@ class OBackendFactory return (T*) new OTodoAccessXML( appName ); case CONTACT: - if ( backend == "sql" ) + if ( backend == "sql" ) qWarning ("OBackendFactory:: sql Backend not implemented! Using XML instead!"); return (T*) new OContactAccessBackend_XML( appName ); case DATE: - qWarning ("OBackendFactory:: DATE-Backend not implemented!"); - return NULL; + if ( backend == "sql" ) + qWarning("OBackendFactory:: sql Backend not implemented! Using XML instead!"); + + return (T*) new ODateBookAccessBackend_XML( appName ); default: return NULL; } - - + + } }; |