00001 #ifndef __USER_H__
00002 #define __USER_H__
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028 #include <QObject>
00029
00030 class User : public QObject
00031 {
00032 Q_OBJECT
00033
00034 Q_PROPERTY(QString name READ name CONSTANT)
00035 Q_PROPERTY(int category READ category CONSTANT)
00036 Q_PROPERTY(bool isOnline READ isOnline CONSTANT)
00037
00038 public:
00039
00040 static const unsigned int UC_Nurse = 0;
00041 static const unsigned int UC_Doctor = 100;
00042 static const unsigned int UC_Admin = 1000;
00044 private:
00045
00046 QString m_name;
00047 unsigned int m_category;
00048 bool m_isOnline;
00050 bool m_isValid;
00052 public:
00053 User():m_isValid(false) {}
00054 User(const QString& name, const unsigned int category, bool online)
00055 :m_name(name),m_category(category),m_isOnline(online) {}
00056
00057 User(const User& user)
00058 :QObject(user.parent()),m_name(user.name()),m_category(user.category()),m_isOnline(user.isOnline()),m_isValid(user.isValid()) {}
00059
00060 User& operator=(const User& user);
00061
00062 const QString& name()const { return m_name; }
00063 unsigned int category()const { return m_category; }
00064 bool isOnline()const { return m_isOnline; }
00065
00066 bool isValid()const { return m_isValid; }
00067 };
00068
00115 #endif