source: src/mvc/room.h @ 508de33

qt5
Last change on this file since 508de33 was 508de33, checked in by kirilma <kirilma@…>, 12 years ago

do not draw showmap button for event is there is no map for its room

  • Property mode set to 100644
File size: 1.7 KB
Line 
1/*
2 * Copyright (C) 2010 Ixonos Plc.
3 *
4 * This file is part of fosdem-schedule.
5 *
6 * fosdem-schedule is free software: you can redistribute it and/or modify it
7 * under the terms of the GNU General Public License as published by the Free
8 * Software Foundation, either version 2 of the License, or (at your option)
9 * any later version.
10 *
11 * fosdem-schedule is distributed in the hope that it will be useful, but
12 * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
13 * or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
14 * more details.
15 *
16 * You should have received a copy of the GNU General Public License along with
17 * fosdem-schedule.  If not, see <http://www.gnu.org/licenses/>.
18 */
19
20#ifndef ROOM_H_
21#define ROOM_H_
22
23#include <ormrecord.h>
24
25class Room : public OrmRecord<Room>
26{
27public:
28    static const QSqlRecord sColumns;
29    static QString const sTableName;
30    static const int sTableColCount;
31    static const QString NAME;
32public:
33    int id() const { return value("id").toInt(); }
34    void setId(int id) { setValue("id", id); }
35    QString name() const { return value("name").toString(); }
36    void setName(const QString & type) { setValue("name", type); }
37    // TODO: make naming consistent - either "picture" or "map"
38    QVariant map() const { return value("picture"); }
39    bool hasMap() const
40    {
41        // empty strings also treasted as NULL,
42        // as storing NULLs requires rewrite of storing code and DB scheme
43        return !isNull("picture") and !value("picture").toString().isEmpty();
44    }
45    int insert();
46public:
47    static QList<Room> getAll();
48    static Room retrieve(int id);
49    static QString retrieveRoomName(int id);
50    static Room retrieveByName(QString name);
51};
52
53#endif /* ROOM_H_ */
Note: See TracBrowser for help on using the repository browser.