QTfrontend/model/roomslistmodel.h
author unc0rr
Fri, 24 Feb 2012 23:49:31 +0400
changeset 6737 ce5fbd98370f
parent 6733 5abbc345a82f
child 6966 eda4f63bec41
permissions -rw-r--r--
- Increase server version number due to rooms list protocol changes - Frontend doesn't allow to play on old server

#ifndef ROOMSLISTMODEL_H
#define ROOMSLISTMODEL_H

#include <QAbstractTableModel>
#include <QStringList>

class RoomsListModel : public QAbstractTableModel
{
    Q_OBJECT
public:
    explicit RoomsListModel(QObject *parent = 0);

    QVariant headerData(int section, Qt::Orientation orientation, int role) const;
    int rowCount(const QModelIndex & parent) const;
    int columnCount(const QModelIndex & parent) const;
    QVariant data(const QModelIndex &index, int role) const;

public slots:
    void setRoomsList(const QStringList & rooms);
    void addRoom(const QStringList & info);
    void removeRoom(const QString & name);
    void updateRoom(const QString & name, const QStringList & info);

private:
    QList<QStringList> m_data;
    QStringList m_headerData;

    QStringList roomInfo2RoomRecord(const QStringList & info);
};

#endif // ROOMSLISTMODEL_H