kplato
kptcalendarlistdialog.h00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef KPTCALENDARLISTDIALOG_H
00021 #define KPTCALENDARLISTDIALOG_H
00022
00023 #include "kptcalendarlistdialogbase.h"
00024 #include "kptcalendaredit.h"
00025 #include "kptcalendar.h"
00026
00027 #include <kdialogbase.h>
00028
00029 #include <qstring.h>
00030
00031 class KCommand;
00032
00033 namespace KPlato
00034 {
00035
00036 class CalendarListViewItem;
00037 class Project;
00038 class Part;
00039
00040 class CalendarListDialogImpl : public CalendarListDialogBase {
00041 Q_OBJECT
00042 public:
00043 CalendarListDialogImpl(Project &project, QWidget *parent);
00044
00045 void setBaseCalendars();
00046
00047 Calendar *getCalendar() { return calendar->getCalendar(); }
00048 void setCalendar(Calendar *cal);
00049
00050 QPtrList<CalendarListViewItem> &deletedItems();
00051
00052 void renameStopped(QListViewItem *item);
00053
00054 public slots:
00055 void slotSelectionChanged();
00056 void slotSelectionChanged(QListViewItem *listItem);
00057
00058 private slots:
00059 void slotBaseCalendarActivated(int id);
00060 void slotCalendarModified();
00061 void slotDeleteClicked();
00062 void slotAddClicked();
00063 void slotEnableButtonOk(bool on);
00064 void slotItemRenamed(QListViewItem *item, int col);
00065 void slotListDoubleClicked(QListViewItem *item, const QPoint&, int col);
00066 void slotStartRename(QListViewItem *item, int col);
00067 void slotRenameStarted(QListViewItem *item, int col);
00068
00069 signals:
00070 void obligatedFieldsFilled(bool yes);
00071 void calendarModified();
00072 void calendarChanged();
00073 void enableButtonOk(bool on);
00074
00075
00076 void renameStarted(QListViewItem *, int);
00077 void startRename(QListViewItem *item, int col);
00078 void selectionChanged();
00079
00080 protected:
00081 CalendarListViewItem *findItem(Calendar *cal);
00082
00083 private:
00084 Project &project;
00085 QPtrList<CalendarListViewItem> m_deletedItems;
00086 QPtrList<CalendarListViewItem> baseCalendarList;
00087 QListViewItem *m_renameItem;
00088 };
00089
00090 class CalendarListDialog : public KDialogBase {
00091 Q_OBJECT
00092 public:
00093 CalendarListDialog(Project &project, QWidget *parent=0, const char *name=0);
00094
00095 KCommand *buildCommand(Part *part);
00096
00097 protected slots:
00098 void slotOk();
00099
00100 private:
00101 Project &project;
00102 CalendarListDialogImpl *dia;
00103 };
00104
00105 }
00106
00107 #endif // CALENDARLISTDIALOG_H
|