00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef GLUONPLAYER_HIGHSCORESMODEL_H
00021 #define GLUONPLAYER_HIGHSCORESMODEL_H
00022
00023 #include "gluon_player_export.h"
00024
00025 #include <QAbstractTableModel>
00026
00027 namespace GluonCore
00028 {
00029 class GluonObject;
00030 };
00031
00032 namespace GluonPlayer
00033 {
00034 class GLUON_PLAYER_EXPORT HighScoresModel : public QAbstractTableModel
00035 {
00036 Q_OBJECT
00037
00038 public:
00043 HighScoresModel( QString gameId, QObject* parent = 0 );
00044 virtual ~HighScoresModel();
00045 virtual QVariant data( const QModelIndex& index, int role = Qt::DisplayRole ) const;
00046 virtual int columnCount( const QModelIndex& parent = QModelIndex() ) const;
00047 virtual int rowCount( const QModelIndex& parent = QModelIndex() ) const;
00048 virtual QVariant headerData( int section, Qt::Orientation orientation, int role = Qt::DisplayRole ) const;
00049
00050 enum Column
00051 {
00052 NameColumn,
00053 HighScoreColumn,
00054 LevelColumn,
00055 };
00056
00057 private:
00058 void loadData();
00059 void saveData();
00060
00061 GluonCore::GluonObject* rootNode;
00062 QString m_gameId;
00063 };
00064
00065 }
00066
00067 #endif // GLUONPLAYER_HIGHSCORESMODEL_H
00068