-rw-r--r-- | libkcal/icalformatimpl.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/libkcal/icalformatimpl.cpp b/libkcal/icalformatimpl.cpp index 964ffe3..3437f45 100644 --- a/libkcal/icalformatimpl.cpp +++ b/libkcal/icalformatimpl.cpp | |||
@@ -1454,143 +1454,143 @@ void ICalFormatImpl::readRecurrence( const struct icalrecurrencetype &r, Recurre | |||
1454 | if (r.by_day[0] != ICAL_RECURRENCE_ARRAY_MAX) { | 1454 | if (r.by_day[0] != ICAL_RECURRENCE_ARRAY_MAX) { |
1455 | if (!icaltime_is_null_time(r.until)) { | 1455 | if (!icaltime_is_null_time(r.until)) { |
1456 | recur->setMonthly(Recurrence::rMonthlyPos,interv, | 1456 | recur->setMonthly(Recurrence::rMonthlyPos,interv, |
1457 | readICalDate(r.until)); | 1457 | readICalDate(r.until)); |
1458 | } else { | 1458 | } else { |
1459 | if (r.count == 0) | 1459 | if (r.count == 0) |
1460 | recur->setMonthly(Recurrence::rMonthlyPos,interv,-1); | 1460 | recur->setMonthly(Recurrence::rMonthlyPos,interv,-1); |
1461 | else | 1461 | else |
1462 | recur->setMonthly(Recurrence::rMonthlyPos,interv,r.count); | 1462 | recur->setMonthly(Recurrence::rMonthlyPos,interv,r.count); |
1463 | } | 1463 | } |
1464 | bool useSetPos = false; | 1464 | bool useSetPos = false; |
1465 | short pos = 0; | 1465 | short pos = 0; |
1466 | while((day = r.by_day[index++]) != ICAL_RECURRENCE_ARRAY_MAX) { | 1466 | while((day = r.by_day[index++]) != ICAL_RECURRENCE_ARRAY_MAX) { |
1467 | // kdDebug(5800) << "----a " << index << ": " << day << endl; | 1467 | // kdDebug(5800) << "----a " << index << ": " << day << endl; |
1468 | pos = icalrecurrencetype_day_position(day); | 1468 | pos = icalrecurrencetype_day_position(day); |
1469 | if (pos) { | 1469 | if (pos) { |
1470 | day = icalrecurrencetype_day_day_of_week(day); | 1470 | day = icalrecurrencetype_day_day_of_week(day); |
1471 | QBitArray ba(7); // don't wipe qba | 1471 | QBitArray ba(7); // don't wipe qba |
1472 | ba.setBit((day+5)%7); // convert from Sunday=1 to Monday=0 | 1472 | ba.setBit((day+5)%7); // convert from Sunday=1 to Monday=0 |
1473 | recur->addMonthlyPos(pos,ba); | 1473 | recur->addMonthlyPos(pos,ba); |
1474 | } else { | 1474 | } else { |
1475 | qba.setBit((day+5)%7); // convert from Sunday=1 to Monday=0 | 1475 | qba.setBit((day+5)%7); // convert from Sunday=1 to Monday=0 |
1476 | useSetPos = true; | 1476 | useSetPos = true; |
1477 | } | 1477 | } |
1478 | } | 1478 | } |
1479 | if (useSetPos) { | 1479 | if (useSetPos) { |
1480 | if (r.by_set_pos[0] != ICAL_RECURRENCE_ARRAY_MAX) { | 1480 | if (r.by_set_pos[0] != ICAL_RECURRENCE_ARRAY_MAX) { |
1481 | recur->addMonthlyPos(r.by_set_pos[0],qba); | 1481 | recur->addMonthlyPos(r.by_set_pos[0],qba); |
1482 | } | 1482 | } |
1483 | } | 1483 | } |
1484 | } else if (r.by_month_day[0] != ICAL_RECURRENCE_ARRAY_MAX) { | 1484 | } else if (r.by_month_day[0] != ICAL_RECURRENCE_ARRAY_MAX) { |
1485 | if (!icaltime_is_null_time(r.until)) { | 1485 | if (!icaltime_is_null_time(r.until)) { |
1486 | recur->setMonthly(Recurrence::rMonthlyDay,interv, | 1486 | recur->setMonthly(Recurrence::rMonthlyDay,interv, |
1487 | readICalDate(r.until)); | 1487 | readICalDate(r.until)); |
1488 | } else { | 1488 | } else { |
1489 | if (r.count == 0) | 1489 | if (r.count == 0) |
1490 | recur->setMonthly(Recurrence::rMonthlyDay,interv,-1); | 1490 | recur->setMonthly(Recurrence::rMonthlyDay,interv,-1); |
1491 | else | 1491 | else |
1492 | recur->setMonthly(Recurrence::rMonthlyDay,interv,r.count); | 1492 | recur->setMonthly(Recurrence::rMonthlyDay,interv,r.count); |
1493 | } | 1493 | } |
1494 | while((day = r.by_month_day[index++]) != ICAL_RECURRENCE_ARRAY_MAX) { | 1494 | while((day = r.by_month_day[index++]) != ICAL_RECURRENCE_ARRAY_MAX) { |
1495 | // kdDebug(5800) << "----b " << day << endl; | 1495 | // kdDebug(5800) << "----b " << day << endl; |
1496 | recur->addMonthlyDay(day); | 1496 | recur->addMonthlyDay(day); |
1497 | } | 1497 | } |
1498 | } | 1498 | } |
1499 | break; | 1499 | break; |
1500 | case ICAL_YEARLY_RECURRENCE: | 1500 | case ICAL_YEARLY_RECURRENCE: |
1501 | if (r.by_year_day[0] != ICAL_RECURRENCE_ARRAY_MAX) { | 1501 | if (r.by_year_day[0] != ICAL_RECURRENCE_ARRAY_MAX) { |
1502 | qDebug(" YEARLY DAY OF YEAR"); | 1502 | //qDebug(" YEARLY DAY OF YEAR"); |
1503 | if (!icaltime_is_null_time(r.until)) { | 1503 | if (!icaltime_is_null_time(r.until)) { |
1504 | recur->setYearly(Recurrence::rYearlyDay,interv, | 1504 | recur->setYearly(Recurrence::rYearlyDay,interv, |
1505 | readICalDate(r.until)); | 1505 | readICalDate(r.until)); |
1506 | } else { | 1506 | } else { |
1507 | if (r.count == 0) | 1507 | if (r.count == 0) |
1508 | recur->setYearly(Recurrence::rYearlyDay,interv,-1); | 1508 | recur->setYearly(Recurrence::rYearlyDay,interv,-1); |
1509 | else | 1509 | else |
1510 | recur->setYearly(Recurrence::rYearlyDay,interv,r.count); | 1510 | recur->setYearly(Recurrence::rYearlyDay,interv,r.count); |
1511 | } | 1511 | } |
1512 | while((day = r.by_year_day[index++]) != ICAL_RECURRENCE_ARRAY_MAX) { | 1512 | while((day = r.by_year_day[index++]) != ICAL_RECURRENCE_ARRAY_MAX) { |
1513 | recur->addYearlyNum(day); | 1513 | recur->addYearlyNum(day); |
1514 | } | 1514 | } |
1515 | } else if ( true /*r.by_month[0] != ICAL_RECURRENCE_ARRAY_MAX*/) { | 1515 | } else if ( true /*r.by_month[0] != ICAL_RECURRENCE_ARRAY_MAX*/) { |
1516 | if (r.by_day[0] != ICAL_RECURRENCE_ARRAY_MAX) { | 1516 | if (r.by_day[0] != ICAL_RECURRENCE_ARRAY_MAX) { |
1517 | qDebug("YEARLY POS NOT SUPPORTED BY GUI"); | 1517 | qDebug("YEARLY POS NOT SUPPORTED BY GUI"); |
1518 | if (!icaltime_is_null_time(r.until)) { | 1518 | if (!icaltime_is_null_time(r.until)) { |
1519 | recur->setYearly(Recurrence::rYearlyPos,interv, | 1519 | recur->setYearly(Recurrence::rYearlyPos,interv, |
1520 | readICalDate(r.until)); | 1520 | readICalDate(r.until)); |
1521 | } else { | 1521 | } else { |
1522 | if (r.count == 0) | 1522 | if (r.count == 0) |
1523 | recur->setYearly(Recurrence::rYearlyPos,interv,-1); | 1523 | recur->setYearly(Recurrence::rYearlyPos,interv,-1); |
1524 | else | 1524 | else |
1525 | recur->setYearly(Recurrence::rYearlyPos,interv,r.count); | 1525 | recur->setYearly(Recurrence::rYearlyPos,interv,r.count); |
1526 | } | 1526 | } |
1527 | bool useSetPos = false; | 1527 | bool useSetPos = false; |
1528 | short pos = 0; | 1528 | short pos = 0; |
1529 | while((day = r.by_day[index++]) != ICAL_RECURRENCE_ARRAY_MAX) { | 1529 | while((day = r.by_day[index++]) != ICAL_RECURRENCE_ARRAY_MAX) { |
1530 | // kdDebug(5800) << "----a " << index << ": " << day << endl; | 1530 | // kdDebug(5800) << "----a " << index << ": " << day << endl; |
1531 | pos = icalrecurrencetype_day_position(day); | 1531 | pos = icalrecurrencetype_day_position(day); |
1532 | if (pos) { | 1532 | if (pos) { |
1533 | day = icalrecurrencetype_day_day_of_week(day); | 1533 | day = icalrecurrencetype_day_day_of_week(day); |
1534 | QBitArray ba(7); // don't wipe qba | 1534 | QBitArray ba(7); // don't wipe qba |
1535 | ba.setBit((day+5)%7); // convert from Sunday=1 to Monday=0 | 1535 | ba.setBit((day+5)%7); // convert from Sunday=1 to Monday=0 |
1536 | recur->addYearlyMonthPos(pos,ba); | 1536 | recur->addYearlyMonthPos(pos,ba); |
1537 | } else { | 1537 | } else { |
1538 | qba.setBit((day+5)%7); // convert from Sunday=1 to Monday=0 | 1538 | qba.setBit((day+5)%7); // convert from Sunday=1 to Monday=0 |
1539 | useSetPos = true; | 1539 | useSetPos = true; |
1540 | } | 1540 | } |
1541 | } | 1541 | } |
1542 | if (useSetPos) { | 1542 | if (useSetPos) { |
1543 | if (r.by_set_pos[0] != ICAL_RECURRENCE_ARRAY_MAX) { | 1543 | if (r.by_set_pos[0] != ICAL_RECURRENCE_ARRAY_MAX) { |
1544 | recur->addYearlyMonthPos(r.by_set_pos[0],qba); | 1544 | recur->addYearlyMonthPos(r.by_set_pos[0],qba); |
1545 | } | 1545 | } |
1546 | } | 1546 | } |
1547 | } else { | 1547 | } else { |
1548 | qDebug("YEARLY MONTH "); | 1548 | //qDebug("YEARLY MONTH "); |
1549 | if (!icaltime_is_null_time(r.until)) { | 1549 | if (!icaltime_is_null_time(r.until)) { |
1550 | recur->setYearly(Recurrence::rYearlyMonth,interv, | 1550 | recur->setYearly(Recurrence::rYearlyMonth,interv, |
1551 | readICalDate(r.until)); | 1551 | readICalDate(r.until)); |
1552 | } else { | 1552 | } else { |
1553 | if (r.count == 0) | 1553 | if (r.count == 0) |
1554 | recur->setYearly(Recurrence::rYearlyMonth,interv,-1); | 1554 | recur->setYearly(Recurrence::rYearlyMonth,interv,-1); |
1555 | else | 1555 | else |
1556 | recur->setYearly(Recurrence::rYearlyMonth,interv,r.count); | 1556 | recur->setYearly(Recurrence::rYearlyMonth,interv,r.count); |
1557 | } | 1557 | } |
1558 | if ( r.by_month[0] != ICAL_RECURRENCE_ARRAY_MAX ) { | 1558 | if ( r.by_month[0] != ICAL_RECURRENCE_ARRAY_MAX ) { |
1559 | index = 0; | 1559 | index = 0; |
1560 | while((day = r.by_month[index++]) != ICAL_RECURRENCE_ARRAY_MAX) { | 1560 | while((day = r.by_month[index++]) != ICAL_RECURRENCE_ARRAY_MAX) { |
1561 | recur->addYearlyNum(day); | 1561 | recur->addYearlyNum(day); |
1562 | } | 1562 | } |
1563 | } else { | 1563 | } else { |
1564 | recur->addYearlyNum(incidence->dtStart().date().month()); | 1564 | recur->addYearlyNum(incidence->dtStart().date().month()); |
1565 | } | 1565 | } |
1566 | } | 1566 | } |
1567 | 1567 | ||
1568 | } | 1568 | } |
1569 | break; | 1569 | break; |
1570 | default: | 1570 | default: |
1571 | ; | 1571 | ; |
1572 | break; | 1572 | break; |
1573 | } | 1573 | } |
1574 | } | 1574 | } |
1575 | 1575 | ||
1576 | void ICalFormatImpl::readAlarm(icalcomponent *alarm,Incidence *incidence) | 1576 | void ICalFormatImpl::readAlarm(icalcomponent *alarm,Incidence *incidence) |
1577 | { | 1577 | { |
1578 | //kdDebug(5800) << "Read alarm for " << incidence->summary() << endl; | 1578 | //kdDebug(5800) << "Read alarm for " << incidence->summary() << endl; |
1579 | 1579 | ||
1580 | Alarm* ialarm = incidence->newAlarm(); | 1580 | Alarm* ialarm = incidence->newAlarm(); |
1581 | ialarm->setRepeatCount(0); | 1581 | ialarm->setRepeatCount(0); |
1582 | ialarm->setEnabled(true); | 1582 | ialarm->setEnabled(true); |
1583 | 1583 | ||
1584 | // Determine the alarm's action type | 1584 | // Determine the alarm's action type |
1585 | icalproperty *p = icalcomponent_get_first_property(alarm,ICAL_ACTION_PROPERTY); | 1585 | icalproperty *p = icalcomponent_get_first_property(alarm,ICAL_ACTION_PROPERTY); |
1586 | if ( !p ) { | 1586 | if ( !p ) { |
1587 | return; | 1587 | return; |
1588 | } | 1588 | } |
1589 | 1589 | ||
1590 | icalproperty_action action = icalproperty_get_action(p); | 1590 | icalproperty_action action = icalproperty_get_action(p); |
1591 | Alarm::Type type = Alarm::Display; | 1591 | Alarm::Type type = Alarm::Display; |
1592 | switch ( action ) { | 1592 | switch ( action ) { |
1593 | case ICAL_ACTION_DISPLAY: type = Alarm::Display; break; | 1593 | case ICAL_ACTION_DISPLAY: type = Alarm::Display; break; |
1594 | case ICAL_ACTION_AUDIO: type = Alarm::Audio; break; | 1594 | case ICAL_ACTION_AUDIO: type = Alarm::Audio; break; |
1595 | case ICAL_ACTION_PROCEDURE: type = Alarm::Procedure; break; | 1595 | case ICAL_ACTION_PROCEDURE: type = Alarm::Procedure; break; |
1596 | case ICAL_ACTION_EMAIL: type = Alarm::Email; break; | 1596 | case ICAL_ACTION_EMAIL: type = Alarm::Email; break; |