LibEngsas
eaboutperson.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2010 - 2012 EngSaS - Engineering Solutions and Services Langenbach. All rights reserved.
3 
4  This library is free software; you can redistribute it and/or
5  modify it under the terms of the GNU Lesser General Public
6  License as published by the Free Software Foundation; either
7  version 2.1 of the License, or (at your option) any later version.
8 
9  This library is distributed in the hope that it will be useful,
10  but WITHOUT ANY WARRANTY; without even the implied warranty of
11  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12  Lesser General Public License for more details.
13 
14  You should have received a copy of the GNU Lesser General Public
15  License along with this library; if not, write to the Free Software
16  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
17  MA 02110-1301 USA.
18 */
19 
20 #ifndef EABOUTPERSON_H
21 #define EABOUTPERSON_H
22 
23 #include "eglobal.h"
24 #include "eobject.h"
25 
31 {
32  Q_OBJECT
33  Q_FLAGS(Categories)
34  public:
41  enum Category {
42  Author = 0x01,
43  Translator = 0x02,
44  Thanks = 0x04
47  };
48  Q_DECLARE_FLAGS(Categories, Category)
49  Q_ENUMS(Category)
50 
51  EAboutPerson(QString name, QString givenName, Categories categories, QObject *parent = 0);
52  EAboutPerson(QString name, QString givenName, QString email, Categories categories, QObject *parent = 0);
53  void setName(QString name);
54  QString name() const;
55  void setGivenName(QString givenName);
56  QString givenName() const;
57  void setEmail(QString address);
58  QString email() const;
59  void setCategories(Categories categories);
60  Categories categories() const;
61 
62  private:
63  QString myName, myGivenName, myMail;
64  Categories myCats;
65 };
66 
67 Q_DECLARE_OPERATORS_FOR_FLAGS(EAboutPerson::Categories)
68 
69 #endif // EABOUTPERSON_H