kalarm
templatelistview.cpp00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #include "kalarm.h"
00022
00023 #include <klocale.h>
00024 #include <kdebug.h>
00025
00026 #include "alarmcalendar.h"
00027 #include "functions.h"
00028 #include "templatelistview.moc"
00029
00030
00031
00032
00033
00034
00035 QValueList<EventListViewBase*> TemplateListView::mInstanceList;
00036
00037
00038 TemplateListView::TemplateListView(bool includeCmdAlarms, const QString& whatsThisText, QWidget* parent, const char* name)
00039 : EventListViewBase(parent, name),
00040 mWhatsThisText(whatsThisText),
00041 mIconColumn(0),
00042 mNameColumn(1),
00043 mExcludeCmdAlarms(!includeCmdAlarms)
00044 {
00045 addColumn(QString::null);
00046 addLastColumn(i18n("Name"));
00047 setSorting(mNameColumn);
00048 setColumnAlignment(mIconColumn, Qt::AlignHCenter);
00049 setColumnWidthMode(mIconColumn, QListView::Maximum);
00050
00051 mInstanceList.append(this);
00052 }
00053
00054 TemplateListView::~TemplateListView()
00055 {
00056 mInstanceList.remove(this);
00057 }
00058
00059
00060
00061
00062 void TemplateListView::populate()
00063 {
00064 QValueList<KAEvent> templates = KAlarm::templateList();
00065 for (QValueList<KAEvent>::Iterator it = templates.begin(); it != templates.end(); ++it)
00066 addEntry(*it);
00067 }
00068
00069
00070
00071
00072 EventListViewItemBase* TemplateListView::createItem(const KAEvent& event)
00073 {
00074 return new TemplateListViewItem(this, event);
00075 }
00076
00077
00078
00079
00080 QString TemplateListView::whatsThisText(int column) const
00081 {
00082 if (column == mIconColumn)
00083 return i18n("Alarm type");
00084 if (column == mNameColumn)
00085 return i18n("Name of the alarm template");
00086 return mWhatsThisText;
00087 }
00088
00089
00090
00091
00092
00093
00094
00095 TemplateListViewItem::TemplateListViewItem(TemplateListView* parent, const KAEvent& event)
00096 : EventListViewItemBase(parent, event)
00097 {
00098 setLastColumnText();
00099
00100 int index;
00101 switch (event.action())
00102 {
00103 case KAAlarm::FILE: index = 2; break;
00104 case KAAlarm::COMMAND: index = 3; break;
00105 case KAAlarm::EMAIL: index = 4; break;
00106 case KAAlarm::MESSAGE:
00107 default: index = 1; break;
00108 }
00109 mIconOrder.sprintf("%01u", index);
00110 setPixmap(templateListView()->iconColumn(), *eventIcon());
00111 }
00112
00113
00114
00115
00116 QString TemplateListViewItem::lastColumnText() const
00117 {
00118 return event().templateName();
00119 }
00120
00121
00122
00123
00124 QString TemplateListViewItem::key(int column, bool) const
00125 {
00126 TemplateListView* listView = templateListView();
00127 if (column == listView->iconColumn())
00128 return mIconOrder;
00129 return text(column).lower();
00130 }
00131
|