From 807cbdbeeaa01a475396a7dddf85f89cab65158f Mon Sep 17 00:00:00 2001 From: korrco Date: Wed, 20 Jan 2010 12:26:30 +0000 Subject: [PATCH] static allocation instead of dynamic added when creating activity map --- src/mvc/activity.cpp | 14 +++++--------- src/mvc/activity.h | 4 ++-- 2 files changed, 7 insertions(+), 11 deletions(-) diff --git a/src/mvc/activity.cpp b/src/mvc/activity.cpp index 36ecaa1..2ff2d6b 100644 --- a/src/mvc/activity.cpp +++ b/src/mvc/activity.cpp @@ -14,6 +14,8 @@ QSqlRecord const Activity::sColumns = Activity::toRecord(QList() << QSqlField("id", QVariant::Int) << QSqlField("name", QVariant::String)); +QMap Activity::mIdToActivity; + QList Activity::getAll() { QSqlQuery query; @@ -21,26 +23,20 @@ QList Activity::getAll() return load(query); } -QMap* Activity::mIdToActivity = 0; - void Activity::updateActivityMap() { - if (mIdToActivity) - { - delete mIdToActivity; - } - mIdToActivity = new QMap; + mIdToActivity.clear(); QList activityList = Activity::getAll(); Activity activity; for (int id = 0; id < activityList.count(); ++id) { activity = activityList.at(id); - mIdToActivity->insert(activity.id(), activity); + mIdToActivity.insert(activity.id(), activity); } } QString Activity::getActivityName(int id) { - QString name = mIdToActivity->value(id).name(); + QString name = mIdToActivity.value(id).name(); if (name == "") { qDebug() << QString("Error: undefined activity name for id %1").arg(id); } diff --git a/src/mvc/activity.h b/src/mvc/activity.h index 86be082..7a300ec 100644 --- a/src/mvc/activity.h +++ b/src/mvc/activity.h @@ -16,6 +16,8 @@ public: static const QSqlRecord sColumns; static QString const sTableName; static const int sTableColCount; +public: + static QMap mIdToActivity; public: static QList getAll(); int id() const { return value("id").toInt(); } @@ -25,8 +27,6 @@ public: public: static void updateActivityMap(); static QString getActivityName(int id); -private: - static QMap* mIdToActivity; }; #endif /* ACTIVITY_H_ */ -- 2.39.5