author | zecke <zecke> | 2004-05-21 01:00:48 (UTC) |
---|---|---|
committer | zecke <zecke> | 2004-05-21 01:00:48 (UTC) |
commit | 564efbda3d8f8b2cefe02a7287942d73489714da (patch) (unidiff) | |
tree | 10cde89ed29b8b552273a0369624ca8932716104 /libopie2/opiepim | |
parent | e20a6a2d3be99bdeaf3861f3aed7923e04b7ba04 (diff) | |
download | opie-564efbda3d8f8b2cefe02a7287942d73489714da.zip opie-564efbda3d8f8b2cefe02a7287942d73489714da.tar.gz opie-564efbda3d8f8b2cefe02a7287942d73489714da.tar.bz2 |
No dynamic_cast if we've no rtti. Ask tronical about the correctness because
if we would static_cast rightaway the compilers quits with errors..
-rw-r--r-- | libopie2/opiepim/core/opimaccessfactory.h | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/libopie2/opiepim/core/opimaccessfactory.h b/libopie2/opiepim/core/opimaccessfactory.h index 6aaa5e4..a80e67c 100644 --- a/libopie2/opiepim/core/opimaccessfactory.h +++ b/libopie2/opiepim/core/opimaccessfactory.h | |||
@@ -45,5 +45,5 @@ namespace Opie { | |||
45 | * This class is our factory for creating PIM access objects. You should use these objects to load, store and search | 45 | * This class is our factory for creating PIM access objects. You should use these objects to load, store and search |
46 | * information in our PIM databases. Currently we support objects for accessing the datebook, the contact- and the | 46 | * information in our PIM databases. Currently we support objects for accessing the datebook, the contact- and the |
47 | * todolist. | 47 | * todolist. |
48 | * @see OPimGlobal for more information of used values. | 48 | * @see OPimGlobal for more information of used values. |
49 | * | 49 | * |
@@ -62,7 +62,7 @@ template<class T> | |||
62 | class OPimAccessFactory | 62 | class OPimAccessFactory |
63 | { | 63 | { |
64 | public: | 64 | public: |
65 | 65 | ||
66 | // Maybe we should introduce a global class for storing such global enums | 66 | // Maybe we should introduce a global class for storing such global enums |
67 | // (something like opimglobal.h) ? (eilers) | 67 | // (something like opimglobal.h) ? (eilers) |
68 | 68 | ||
@@ -79,16 +79,16 @@ class OPimAccessFactory | |||
79 | */ | 79 | */ |
80 | static T* create( OPimGlobal::PimType type, OPimGlobal::DatabaseStyle dbStyle, const QString& appName ){ | 80 | static T* create( OPimGlobal::PimType type, OPimGlobal::DatabaseStyle dbStyle, const QString& appName ){ |
81 | 81 | OPimBase *base; | |
82 | switch ( type ){ | 82 | switch ( type ){ |
83 | case OPimGlobal::TODOLIST: | 83 | case OPimGlobal::TODOLIST: |
84 | return dynamic_cast<T*>( new OPimTodoAccess( OBackendFactory<OPimTodoAccessBackend>::create( type, dbStyle, appName ) ) ); | 84 | base = new OPimTodoAccess( OBackendFactory<OPimTodoAccessBackend>::create( type, dbStyle, appName ) ); |
85 | case OPimGlobal::CONTACTLIST: | 85 | case OPimGlobal::CONTACTLIST: |
86 | return dynamic_cast<T*>( new OPimContactAccess( QString::null, QString::null, OBackendFactory<OPimContactAccessBackend>::create( type, dbStyle, appName ) ) ); | 86 | base = new OPimContactAccess( QString::null, QString::null, OBackendFactory<OPimContactAccessBackend>::create( type, dbStyle, appName ) ); |
87 | case OPimGlobal::DATEBOOK: | 87 | case OPimGlobal::DATEBOOK: |
88 | return dynamic_cast<T*>( new ODateBookAccess( OBackendFactory<ODateBookAccessBackend>::create( type, dbStyle, appName ) ) ); | 88 | base = new ODateBookAccess( OBackendFactory<ODateBookAccessBackend>::create( type, dbStyle, appName ) ); |
89 | default: | 89 | default: |
90 | return 0l; | 90 | return 0l; |
91 | |||
92 | } | 91 | } |
92 | return static_cast<T*>( base ); | ||
93 | } | 93 | } |
94 | 94 | ||
@@ -96,5 +96,5 @@ class OPimAccessFactory | |||
96 | /** | 96 | /** |
97 | * Returns the selected PIM access-object, using the default database style | 97 | * Returns the selected PIM access-object, using the default database style |
98 | * Which style is selected is defined in the configfile "pimaccess.conf" in | 98 | * Which style is selected is defined in the configfile "pimaccess.conf" in |
99 | * the directory "Settings" | 99 | * the directory "Settings" |
100 | * @param type Type of the selected database (addressbook, todolist or datebook) | 100 | * @param type Type of the selected database (addressbook, todolist or datebook) |
@@ -103,5 +103,5 @@ class OPimAccessFactory | |||
103 | * string unique for your application ! | 103 | * string unique for your application ! |
104 | * @see OPimGlobal | 104 | * @see OPimGlobal |
105 | * | 105 | * |
106 | */ | 106 | */ |
107 | static T* defaultAccess( typename OPimGlobal::PimType type, const QString& appName ){ | 107 | static T* defaultAccess( typename OPimGlobal::PimType type, const QString& appName ){ |