-rw-r--r-- | korganizer/calendarview.cpp | 36 |
1 files changed, 25 insertions, 11 deletions
diff --git a/korganizer/calendarview.cpp b/korganizer/calendarview.cpp index 7566b22..d51187a 100644 --- a/korganizer/calendarview.cpp +++ b/korganizer/calendarview.cpp @@ -863,244 +863,258 @@ void CalendarView::checkAlarms() Incidence* inL = el.first(); QDateTime cur = QDateTime::currentDateTime().addSecs(-59); qDebug("KO: Checking alarm until %s ", cur.toString().latin1()); while ( inL ) { bool ok = false; int offset = 0; QDateTime next = inL->getNextAlarmDateTime(& ok, &offset, latest ) ; if ( ok ) { //qDebug("OK %s",next.toString().latin1()); if ( next < cur ) { al.append( inL ); //qDebug("found missed alarm: %s ", inL->summary().latin1() ); } } inL = el.next(); } if ( al.count() ) { QDialog* dia = new QDialog( this, "huhu", false, WDestructiveClose | WStyle_StaysOnTop ); dia->setCaption( i18n("KO/Pi: Missing alarms!") ); QVBoxLayout* lay = new QVBoxLayout( dia ); lay->setSpacing( 0 ); lay->setMargin( 0 ); MissedAlarmTextBrowser* matb = new MissedAlarmTextBrowser ( dia, al, latest ); connect( matb, SIGNAL( showIncidence( QString ) ),SLOT( showIncidence( QString ) )); lay->addWidget( matb ); if ( QApplication::desktop()->width() == 480 || QApplication::desktop()->width() == 640 ) { int wid = 210; int x = QApplication::desktop()->width() - wid - 7; int y = QApplication::desktop()->height() - wid - 70; dia->setGeometry ( x,y,wid,wid); } else { int si = 220; if ( QApplication::desktop()->width() > 470 ) si = 400; dia->resize(si,si/2); } dia->setBackgroundColor( QColor( 255, 255, 255 ) ); dia->show(); } #if 0 // for creating timetracker test data qDebug("CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCc "); Todo * nt; mCalendar->close(); { Todo * root1 = new Todo; mCalendar->addTodo( root1 ); - root1->setSummary( "Project_1"); + root1->setSummary( "Project1"); root1->setPriority( 1 ); + root1->setCategories( QString( "Cat_Pro1") ); root1->setDescription( "This is a test description of a root Project" ); root1->setPercentComplete( 20 ); updateView(); QDateTime start = QDateTime ( QDate( 2004,11,1), QTime ( 7,30,0) ); - QDateTime end = QDateTime ( QDate( 2005,8,1), QTime ( 0,0,0) ); + QDateTime end = QDateTime ( QDate( 2005,8,5), QTime ( 0,0,0) ); nt = new Todo; mCalendar->addTodo( nt ); - nt->setSummary( "Planning_Project_1"); + nt->setSummary( "Planning Project1"); nt->setPriority( 1 ); - nt->setDescription( "This is a test description of Planning_Project_1" ); + nt->setDescription( "This is a test description of Planning Project1" ); nt->setPercentComplete( 20 ); + nt->setCategories( QString( "Cat_Pro1,Cat_Plan_Pro1") ); Todo * sub1 = nt; sub1->setRelatedTo( root1 ); nt = new Todo; mCalendar->addTodo( nt ); - nt->setSummary( "Planning_Project_1: Lutz"); + nt->setSummary( "Planning Project1: Lutz"); nt->setPriority( 1 ); nt->setDescription( "This todo counts the actual work of a person on a project" ); nt->setPercentComplete( 20 ); + nt->setCategories( QString( "Cat_Pro1,Cat_Plan_Pro1,Cat_Work_Lutz") ); Todo * workLutz11 = nt; workLutz11->setRelatedTo( sub1 ); nt = new Todo; mCalendar->addTodo( nt ); - nt->setSummary( "Planning_Project_1: Norbert"); + nt->setSummary( "Planning Project1: Norbert"); nt->setPriority( 1 ); nt->setDescription( "This todo counts the actual work of a person on a project" ); nt->setPercentComplete( 20 ); + nt->setCategories( QString( "Cat_Pro1,Cat_Plan_Pro1,Cat_Work_Norbert") ); Todo * workNorbert11 = nt; workNorbert11->setRelatedTo( sub1 ); nt = new Todo; mCalendar->addTodo( nt ); nt->setSummary( "Work on 1"); nt->setPriority( 1 ); nt->setDescription( "This is a test description of Work Project_1" ); + nt->setCategories( QString( "Cat_Pro1,Cat_Work_Pro1") ); nt->setPercentComplete( 20 ); Todo * sub2 = nt; sub2->setRelatedTo( root1 ); nt = new Todo; mCalendar->addTodo( nt ); nt->setSummary( "Work on 1: Lutz"); nt->setPriority( 1 ); nt->setDescription( "This todo counts the actual work of a person on a project" ); + nt->setCategories( QString( "Cat_Pro1,Cat_Work_Pro1,Cat_Work_Lutz") ); nt->setPercentComplete( 20 ); Todo * workLutz12 = nt; workLutz12->setRelatedTo( sub2 ); nt = new Todo; mCalendar->addTodo( nt ); nt->setSummary( "Work on 1: Norbert"); nt->setPriority( 1 ); nt->setDescription( "This todo counts the actual work of a person on a project" ); + nt->setCategories( QString( "Cat_Pro1,Cat_Work_Pro1,Cat_Work_Norbert") ); nt->setPercentComplete( 20 ); Todo * workNorbert12 = nt; workNorbert12->setRelatedTo( sub2 ); int secLenRunning = 7200; int secLenPausing = 3600 * 3; int dayInterval = 1; //createRunningDate4Todo( root1, start, end, secLenRunning, secLenPausing, dayInterval ); createRunningDate4Todo( root1, start, end, secLenRunning*24, secLenPausing, 14 ); createRunningDate4Todo( sub1, start.addSecs( secLenRunning ), start.addDays( 10 ), secLenRunning*4, secLenPausing, 1); createRunningDate4Todo( sub2, start.addDays( 8 ), end, secLenRunning*4, secLenPausing, 3); createRunningDate4Todo( workLutz11, start, start.addDays( 8 ), secLenRunning, secLenPausing, 0); createRunningDate4Todo( workNorbert11, start, start.addDays( 8 ), secLenRunning*2, secLenPausing, 1); createRunningDate4Todo( workLutz12, start.addDays( 8 ),end, secLenRunning*5, secLenPausing, 3); createRunningDate4Todo( workNorbert12, start.addDays( 8 ), end, secLenRunning, secLenPausing*3, 0); } { Todo * root1 = new Todo; mCalendar->addTodo( root1 ); - root1->setSummary( "Project_2"); + root1->setSummary( "Project2"); root1->setPriority( 1 ); root1->setDescription( "This is a test description of a root Project 2" ); root1->setPercentComplete( 20 ); + root1->setCategories( QString( "Cat_Pro2") ); updateView(); QDateTime start = QDateTime ( QDate( 2004,11,1), QTime ( 7,30,0) ); - QDateTime end = QDateTime ( QDate( 2005,8,1), QTime ( 0,0,0) ); + QDateTime end = QDateTime ( QDate( 2005,8,5), QTime ( 0,0,0) ); int secLenRunning = 7200; int secLenPausing = 3600 * 3; int dayInterval = 1; nt = new Todo; mCalendar->addTodo( nt ); - nt->setSummary( "Planning_Project_2"); + nt->setSummary( "Planning Project2"); nt->setPriority( 1 ); nt->setDescription( "This is a test description of Planning_Project_2" ); + nt->setCategories( QString( "Cat_Pro2,Cat_Plan_Pro2") ); nt->setPercentComplete( 20 ); Todo * sub1 = nt; sub1->setRelatedTo( root1 ); nt = new Todo; mCalendar->addTodo( nt ); - nt->setSummary( "Planning_Project_2: Lutz"); + nt->setSummary( "Planning Project2: Lutz"); nt->setPriority( 1 ); nt->setDescription( "This todo counts the actual work of a person on a project" ); + nt->setCategories( QString( "Cat_Pro2,Cat_Plan_Pro2,Cat_Work_Lutz") ); nt->setPercentComplete( 20 ); Todo * workLutz11 = nt; workLutz11->setRelatedTo( sub1 ); nt = new Todo; mCalendar->addTodo( nt ); - nt->setSummary( "Planning_Project_2: Norbert"); + nt->setSummary( "Planning Project2: Norbert"); nt->setPriority( 1 ); nt->setDescription( "This todo counts the actual work of a person on a project" ); + nt->setCategories( QString( "Cat_Pro2,Cat_Plan_Pro2,Cat_Work_Norbert") ); nt->setPercentComplete( 20 ); Todo * workNorbert11 = nt; workNorbert11->setRelatedTo( sub1 ); nt = new Todo; mCalendar->addTodo( nt ); nt->setSummary( "Work on 2"); nt->setPriority( 1 ); nt->setDescription( "This is a test description of Work Project_2" ); + nt->setCategories( QString( "Cat_Pro2,Cat_Work_Pro2") ); nt->setPercentComplete( 20 ); Todo * sub2 = nt; sub2->setRelatedTo( root1 ); nt = new Todo; mCalendar->addTodo( nt ); nt->setSummary( "Work on 2: Lutz"); nt->setPriority( 1 ); nt->setDescription( "This todo counts the actual work of a person on a project" ); + nt->setCategories( QString( "Cat_Pro2,Cat_Work_Pro2,Cat_Work_Lutz") ); nt->setPercentComplete( 20 ); Todo * workLutz12 = nt; workLutz12->setRelatedTo( sub2 ); nt = new Todo; mCalendar->addTodo( nt ); nt->setSummary( "Work on 2: Norbert"); nt->setPriority( 1 ); nt->setDescription( "This todo counts the actual work of a person on a project" ); + nt->setCategories( QString( "Cat_Pro2,Cat_Work_Pro2,Cat_Work_Norbert") ); nt->setPercentComplete( 20 ); Todo * workNorbert12 = nt; workNorbert12->setRelatedTo( sub2 ); createRunningDate4Todo( root1, start, end, secLenRunning, secLenPausing, 10 ); createRunningDate4Todo( sub1, start.addSecs( secLenRunning*3 ), start.addDays( 20 ), secLenRunning*2, secLenPausing, 2); createRunningDate4Todo( sub2, start.addDays( 8 ), end, secLenRunning*3, secLenPausing, 7); createRunningDate4Todo( workLutz11, start, start.addDays( 18 ), secLenRunning/2, secLenPausing*5, 0); createRunningDate4Todo( workNorbert11, start.addDays( 8 ), start.addDays( 18 ), secLenRunning*5, secLenPausing*5, 1); createRunningDate4Todo( workLutz12, start.addDays( 8 ),end, secLenRunning, secLenPausing*8, 0); createRunningDate4Todo( workNorbert12, start.addDays( 28 ), end, secLenRunning/8, secLenPausing*6, 0); } updateView(); #endif } void CalendarView::createRunningDate4Todo( Todo * runT, QDateTime start , QDateTime end, int secLenRunning, int secLenPausing,int dayInterval ) { static int ccc = 0; ++ccc; QDateTime t_start = start; runT->setPriority( 5 ); runT->setPercentComplete( 0 ); int count = 0; int prio = 5; int complete = 0; while ( t_start < end ) { ++count; if ( count > ccc ) { count = 0; --prio; if ( prio == 0 ) prio = 5; complete += 20; if ( complete > 100 ) complete = 0; runT->setPriority( prio ); runT->setPercentComplete( complete ); } runT->setRunning( true ); runT->saveRunningInfo( "Additional tt comment: running on "+ t_start.toString(), t_start, t_start.addSecs( secLenRunning ) ); if ( dayInterval ) t_start = t_start.addDays( dayInterval ); else { t_start = t_start.addSecs( secLenRunning + secLenPausing ); } } } void CalendarView::showDay( QDate d ) { |