00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef KOCKPITIFACES_H
00019 #define KOCKPITIFACES_H
00020
00021 #include "../kockpit/kockpituser.h"
00022 #include "../kockpit/kockpitgroup.h"
00023 #include "../kockpit/kockpitunitmap.h"
00024 #include "../kockpit/kockpitaccount.h"
00025 #include "../kockpit/kockpitbackendentry.h"
00026 #include "../kockpit/kockpitaddress.h"
00027 #include "../kockpit/kockpitcontact.h"
00028 #include "../kockpit/kockpitvalidator.h"
00029
00030 class QWidget;
00031
00033
00036 typedef enum {
00037 DELETION,
00038 MODIFICATION,
00039 MOD_SELF,
00040 MOD_FOREIGN,
00041 CREATION
00042 } wraddmod;
00043
00045
00048 class KockpitIface {
00049
00050 public:
00052 virtual ~KockpitIface() { }
00053
00055
00060 virtual QWidget* getUserWidget() = 0;
00061
00063
00068 virtual QWidget* getGroupWidget() = 0;
00069
00071
00075 virtual QString getName() = 0;
00076
00078
00083 virtual void showAttributes(KockpitUser *kuser) = 0;
00084
00086
00091 virtual void assignAttributes(KockpitUser *kuser) = 0;
00092
00094
00099 virtual void showAttributes(KockpitGroup *kgrp) = 0;
00100
00102
00107 virtual void assignAttributes(KockpitGroup *kgrp) = 0;
00108
00110
00115 virtual void deleteEntry(KockpitUser* kuser) = 0;
00116
00118
00123 virtual void deleteEntry(KockpitGroup* kgrp) = 0;
00124
00126
00135 virtual void init(const QList<KockpitUnitMap*> *kumap, const QList<KockpitUnitMap*> *kgmap, KockpitValidator *val) = 0;
00136
00138
00144 virtual void update(const QList<KockpitUnitMap *> *kumap, const QList<KockpitUnitMap *> *kgmap) = 0;
00145
00147
00154 virtual void writeAdditional(QList<KockpitGroup*> &kgrpl, wraddmod mod) = 0;
00155
00157
00164 virtual void writeAdditional(QList<KockpitUser*> &kusrl, wraddmod mod) = 0;
00165 };
00166
00167 Q_DECLARE_INTERFACE(KockpitIface,"KockpitIfaceUser/1.0")
00168
00169 #endif // KOCKPITIFACES_H