defuze.me  Client
message.hpp
00001 /**************************************************************************
00002 ** defuze.me Epitech Innovative Project
00003 **
00004 ** Copyright 2010-2011
00005 **   Athena Calmettes - Jocelyn De La Rosa - Francois Gaillard
00006 **   Adrien Jarthon - Alexandre Moore - Luc Peres - Arnaud Sellier
00007 **
00008 ** All rights reserved.
00009 **************************************************************************/
00010 
00011 namespace Notification {
00012     class Message;
00013 }
00014 
00015 #ifndef MESSAGE_HPP
00016 #define MESSAGE_HPP
00017 
00018 #include <QPushButton>
00019 #include "ui_message.h"
00020 
00021 namespace Notification
00022 {
00026     class Message : public QWidget, private Ui::Message
00027     {
00028         Q_OBJECT
00029         friend class Status;
00030 
00031     public:
00032         void        setMessage(const QString& msg);
00033         void        setIcon(const QPixmap& pix);
00034         void        incrementCount();
00035         void        setAction(const QString& name, const QObject* obj, const char* method);
00036 
00037     protected:
00038         void        changeEvent(QEvent *e);
00039 
00040     private:
00041         explicit    Message(QWidget *parent = 0);       // Constructed by factory
00042         QPushButton *actionBtn;
00043         QString     message;
00044         int         count;
00045     };
00046 }
00047 
00048 #endif // MESSAGE_HPP