2 Copyright (C) 2010 Casey Link <unnamedrambler@gmail.com>
3 Copyright (C) 2009-2010 Klaralvdalens Datakonsult AB, a KDAB Group company <info@kdab.net>
5 This library is free software; you can redistribute it and/or modify it
6 under the terms of the GNU Library General Public License as published by
7 the Free Software Foundation; either version 2 of the License, or (at your
8 option) any later version.
10 This library is distributed in the hope that it will be useful, but WITHOUT
11 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
12 FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public
13 License for more details.
15 You should have received a copy of the GNU Library General Public License
16 along with this library; see the file COPYING.LIB. If not, write to the
17 Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
21 #ifndef INCIDENCEEDITOR_ATTENDEEEDITOR_H
22 #define INCIDENCEEDITOR_ATTENDEEEDITOR_H
24 #include "attendeeline.h"
25 #include "attendeedata.h"
27 #include <Libkdepim/MultiplyingLineEditor>
29 namespace IncidenceEditorNG
32 class AttendeeLineFactory
: public KPIM::MultiplyingLineFactory
36 explicit AttendeeLineFactory(QObject
*parent
) : KPIM::MultiplyingLineFactory(parent
)
40 KPIM::MultiplyingLine
*newLine(QWidget
*parent
) Q_DECL_OVERRIDE
{
41 return new AttendeeLine(parent
);
45 class AttendeeEditor
: public KPIM::MultiplyingLineEditor
49 explicit AttendeeEditor(QWidget
*parent
= Q_NULLPTR
);
51 AttendeeData::List
attendees() const;
53 void addAttendee(const KCalCore::Attendee::Ptr
&attendee
);
54 void removeAttendee(const AttendeeData::Ptr
&attendee
);
56 void setActions(AttendeeLine::AttendeeActions actions
);
59 void countChanged(int);
60 void changed(const KCalCore::Attendee::Ptr
&oldAttendee
,
61 const KCalCore::Attendee::Ptr
&newAttendee
);
62 void editingFinished(KPIM::MultiplyingLine
*);
65 void slotLineAdded(KPIM::MultiplyingLine
*);
66 void slotCalculateTotal();