kplato
kpttaskappointmentsview.ui.h00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030 #include <kdebug.h>
00031
00032 namespace KPlato
00033 {
00034
00035 void TaskAppointmentsView::clear()
00036 {
00037 if (m_appList) m_appList->clear();
00038 if (m_taskName) m_taskName->clear();
00039 if (m_plannedCost) m_plannedCost->clear();
00040 if (m_plannedCostTotal) m_plannedCostTotal->clear();
00041 if (m_actualCost) m_actualCost->clear();
00042 if (m_plannedEffort) m_plannedEffort->clear();
00043 if (m_plannedEffortTotal) m_plannedEffortTotal->clear();
00044 if (m_epi) m_epi->clear();
00045 if (m_cpi) m_cpi->clear();
00046 }
00047
00048 void TaskAppointmentsView::draw(Task *task)
00049 {
00050
00051 m_task = task;
00052 clear();
00053 if (!task)
00054 return;
00055 m_taskName->setText(task->name());
00056
00057 QPtrListIterator<Appointment> it(task->appointments());
00058 for (; it.current(); ++it) {
00059 Resource *r = it.current()->resource();
00060 QListViewItem *item = new QListViewItem(m_appList, r->name());
00061 int i = 1;
00062 item->setText(i++, r->typeToString());
00063 item->setText(i++, it.current()->startTime().date().toString(ISODate));
00064 item->setText(i++, it.current()->endTime().date().toString(ISODate));
00065 item->setText(i++, it.current()->plannedEffort().toString(Duration::Format_HourFraction));
00066 item->setText(i++, KGlobal::locale()->formatMoney(r->normalRate()));
00067 item->setText(i++, KGlobal::locale()->formatMoney(r->overtimeRate()));
00068 item->setText(i++, KGlobal::locale()->formatMoney(r->fixedCost()));
00069 QPtrListIterator<AppointmentInterval> ait = it.current()->intervals();
00070 for (; ait.current(); ++ait) {
00071 QListViewItem *sub = new QListViewItem(item, "");
00072 i = 1;
00073 sub->setText(i++, "");
00074 sub->setText(i++, ait.current()->startTime().date().toString(ISODate));
00075 sub->setText(i++, ait.current()->endTime().date().toString(ISODate));
00076 sub->setText(i++, ait.current()->effort().toString(Duration::Format_HourFraction));
00077 }
00078
00079 }
00080 drawCostEffort();
00081 }
00082
00083
00084 void TaskAppointmentsView::init()
00085 {
00086 m_appList->setColumnAlignment(1, AlignHCenter);
00087 m_appList->setColumnAlignment(3, AlignRight);
00088 m_appList->setColumnAlignment(4, AlignRight);
00089 m_appList->setColumnAlignment(5, AlignRight);
00090 m_appList->setColumnAlignment(6, AlignRight);
00091
00092 m_task = 0;
00093 m_date->setDate(QDate::currentDate());
00094
00095 }
00096
00097 void TaskAppointmentsView::drawCostEffort()
00098 {
00099 if (m_task == 0)
00100 return;
00101 m_actualCost->setText(KGlobal::locale()->formatMoney(m_task->actualCostTo(m_date->date())));
00102 m_plannedCost->setText(KGlobal::locale()->formatMoney(m_task->plannedCostTo(m_date->date())));
00103 m_plannedCostTotal->setText(KGlobal::locale()->formatMoney(m_task->plannedCost()));
00104
00105 m_actualEffort->setText(m_task->actualEffortTo(m_date->date()).toString(Duration::Format_HourFraction));
00106 m_plannedEffort->setText(m_task->plannedEffortTo(m_date->date()).toString(Duration::Format_HourFraction));
00107 m_plannedEffortTotal->setText(m_task->plannedEffort().toString(Duration::Format_HourFraction));
00108
00109 m_epi->setText(QString("%1").arg(m_task->effortPerformanceIndex(m_date->date()),3,'f',2));
00110 m_cpi->setText(QString("%1").arg(m_task->costPerformanceIndex(m_date->date()),3,'f',2));
00111
00112 }
00113
00114 }
|