<< QSqlField("id", QVariant::Int)
<< QSqlField("name", QVariant::String));
+QMap<int, Activity> Activity::mIdToActivity;
+
QList<Activity> Activity::getAll()
{
QSqlQuery query;
return load(query);
}
-QMap<int, Activity>* Activity::mIdToActivity = 0;
-
void Activity::updateActivityMap()
{
- if (mIdToActivity)
- {
- delete mIdToActivity;
- }
- mIdToActivity = new QMap<int, Activity>;
+ mIdToActivity.clear();
QList<Activity> 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);
}
static const QSqlRecord sColumns;
static QString const sTableName;
static const int sTableColCount;
+public:
+ static QMap<int, Activity> mIdToActivity;
public:
static QList<Activity> getAll();
int id() const { return value("id").toInt(); }
public:
static void updateActivityMap();
static QString getActivityName(int id);
-private:
- static QMap<int, Activity>* mIdToActivity;
};
#endif /* ACTIVITY_H_ */