agendainterface/agendautil/src/agendautil_p.cpp
changeset 77 b0711afde476
parent 68 a5a1242fd2e8
equal deleted inserted replaced
68:a5a1242fd2e8 77:b0711afde476
  1787 
  1787 
  1788 	\return QDateTime holding the maximum supported time.
  1788 	\return QDateTime holding the maximum supported time.
  1789  */
  1789  */
  1790 QDateTime AgendaUtilPrivate::maxTime()
  1790 QDateTime AgendaUtilPrivate::maxTime()
  1791 {
  1791 {
  1792 	TTime maxTime = TCalTime::MaxTime();
  1792 	// Returns maximum time allowed, 31.12.2100 0:00 is max so 30.12.2100 is
       
  1793 	// last actual date to be used.
       
  1794 	TTime maxTime = TCalTime::MaxTime() - TTimeIntervalMinutes( 1 );
  1793 
  1795 
  1794 	// Convert it to QT
  1796 	// Convert it to QT
  1795 	QDate date(
  1797 	QDate date(
  1796 			maxTime.DateTime().Year(), maxTime.DateTime().Month() + 1,
  1798 			maxTime.DateTime().Year(), maxTime.DateTime().Month() + 1,
  1797 			maxTime.DateTime().Day() + 1);
  1799 			maxTime.DateTime().Day() + 1);
  2960 
  2962 
  2961 	RArray<TInt> monthDays;
  2963 	RArray<TInt> monthDays;
  2962 	calRRule.GetByMonthDayL(monthDays);
  2964 	calRRule.GetByMonthDayL(monthDays);
  2963 	QList<int> qMonthDays;
  2965 	QList<int> qMonthDays;
  2964 	for (int i = 0; i < monthDays.Count(); i++) {
  2966 	for (int i = 0; i < monthDays.Count(); i++) {
  2965 		qMonthDays.append(monthDays[i]);
  2967 		qMonthDays.append(monthDays[i] + 1);
  2966 	}
  2968 	}
  2967 	agendaRepeatRule.setByMonthDay(qMonthDays);
  2969 	agendaRepeatRule.setByMonthDay(qMonthDays);
  2968 
  2970 
  2969 	agendaRepeatRule.setType((AgendaRepeatRule::RuleType) (calRRule.Type()));
  2971 	agendaRepeatRule.setType((AgendaRepeatRule::RuleType) (calRRule.Type()));
  2970 	agendaRepeatRule.setInterval(calRRule.Interval());
  2972 	agendaRepeatRule.setInterval(calRRule.Interval());
  2971 	TCalTime time = calRRule.Until();
  2973 	TCalTime time = calRRule.Until();
  2972 	TTime untilTime = time.TimeUtcL();
  2974 	TTime untilTime = time.TimeLocalL();
  2973 	QDateTime repeatUntil(QDate(untilTime.DateTime().Year(), 
  2975 	QDateTime repeatUntil(QDate(untilTime.DateTime().Year(), 
  2974 	                     untilTime.DateTime().Month() + 1, 
  2976 	                     untilTime.DateTime().Month() + 1, 
  2975 	                     untilTime.DateTime().Day() + 1),
  2977 	                     untilTime.DateTime().Day() + 1),
  2976 	                     QTime(untilTime.DateTime().Hour(),
  2978 	                     QTime(untilTime.DateTime().Hour(),
  2977 	                     untilTime.DateTime().Minute()));
  2979 	                     untilTime.DateTime().Minute()));
  2978 	agendaRepeatRule.setUntil(repeatUntil);
  2980 	agendaRepeatRule.setUntil(repeatUntil);
  2979 
  2981 
  2980 	TCalTime dayStart = calRRule.DtStart();
  2982 	TCalTime dayStart = calRRule.DtStart();
  2981 	TDateTime ruleStart = dayStart.TimeUtcL().DateTime();
  2983 	TDateTime ruleStart = dayStart.TimeLocalL().DateTime();
  2982 	QDateTime qRuleStart(QDate(ruleStart.Year(), ruleStart.Month() + 1, 
  2984 	QDateTime qRuleStart(QDate(ruleStart.Year(), ruleStart.Month() + 1, 
  2983 	          ruleStart.Day() + 1),QTime(ruleStart.Hour(), ruleStart.Minute()));
  2985 	          ruleStart.Day() + 1),QTime(ruleStart.Hour(), ruleStart.Minute()));
  2984 	agendaRepeatRule.setRepeatRuleStart(qRuleStart);
  2986 	agendaRepeatRule.setRepeatRuleStart(qRuleStart);
  2985 
  2987 
  2986 	TDay wkDay = calRRule.WkSt();
  2988 	TDay wkDay = calRRule.WkSt();
  3027 	    ruleRepeatTillTime.SetTimeLocalFloatingL(TTime(repeatTill));
  3029 	    ruleRepeatTillTime.SetTimeLocalFloatingL(TTime(repeatTill));
  3028 	}
  3030 	}
  3029 	repeatRule.SetDtStart(ruleStartCalTime);
  3031 	repeatRule.SetDtStart(ruleStartCalTime);
  3030 	repeatRule.SetInterval(agendaRRule.interval());
  3032 	repeatRule.SetInterval(agendaRRule.interval());
  3031 	repeatRule.SetUntil(ruleRepeatTillTime);
  3033 	repeatRule.SetUntil(ruleRepeatTillTime);
       
  3034 	repeatRule.SetWkSt((TDay)agendaRRule.weekStart());
  3032 
  3035 
  3033 	QList<AgendaRepeatRule::Day> qDays = agendaRRule.byDay();
  3036 	QList<AgendaRepeatRule::Day> qDays = agendaRRule.byDay();
  3034 	RArray<TDay> days;
  3037 	RArray<TDay> days;
  3035 	for (int i = 0; i < qDays.count(); i++) {
  3038 	for (int i = 0; i < qDays.count(); i++) {
  3036 		days.Append(TDay(qDays[i]));
  3039 		days.Append(TDay(qDays[i]));