source: SMSSender/lib/libdatatypes/src/interfaces/igroup.h @ 71:415b45c71663

3.0
Last change on this file since 71:415b45c71663 was 71:415b45c71663, checked in by Sämy Zehnder <saemy.zehnder@…>, 12 years ago
  • Reorganized all the libraries. libinterfaces and libgateways are removed now and libdatatypes contains now all these files.
File size: 1.2 KB
Line 
1/*
2 * igroup.h
3 *
4 *  Created on: Jun 20, 2009
5 *      Author: saemy
6 */
7
8#ifndef IGROUP_H_
9#define IGROUP_H_
10
11#include <QObject>
12#include <QImage>
13#include <QString>
14#include <QSet>
15
16#include "iinterface.h"
17
18class IContact;
19class SGroupEventMapper;
20
21class IGroup: public IInterface {
22    Q_INTERFACES(IInterface)
23
24public:
25    virtual int             id() const =0;
26    virtual QString         name() const =0;
27    virtual QImage          image() const =0;
28    virtual QSet<IContact*> contacts() const =0;
29
30    virtual void setId(int id)=0;
31    virtual void setName(const QString& name)=0;
32    virtual void setImage(const QImage& image)=0;
33//    virtual void setContacts(const QSet<int>& contactIds)=0;
34    virtual void setContacts(const QSet<IContact*>& contacts)=0;
35
36//    virtual void addContact(int contactId)=0;
37    virtual void addContact(IContact* contact)=0;
38    virtual void removeContact(int contactId)=0;
39    virtual void removeContact(IContact* contact)=0;
40
41    virtual SGroupEventMapper* eventMapper() const =0;
42};
43Q_DECLARE_INTERFACE(IGroup,
44                     "ch.gorrion.smssender.IGroup/1.0")
45
46#include "icontact.h"
47#include "eventmappers/sgroupeventmapper.h"
48
49#endif /* IGROUP_H_ */
Note: See TracBrowser for help on using the repository browser.