예제 #1
0
Incidence *ICalFormat::fromString(const QString &text)
{
    CalendarLocal cal(mTimeZoneId);
    fromString(&cal, text);

    Incidence *ical = 0;
    Event::List elist = cal.events();
    if(elist.count() > 0)
    {
        ical = elist.first();
    }
    else
    {
        Todo::List tlist = cal.todos();
        if(tlist.count() > 0)
        {
            ical = tlist.first();
        }
        else
        {
            Journal::List jlist = cal.journals();
            if(jlist.count() > 0)
            {
                ical = jlist.first();
            }
        }
    }

    return ical ? ical->clone() : 0;
}
예제 #2
0
void KOTodoEditor::loadTemplate(/*const*/ CalendarLocal &cal)
{
    Todo::List todos = cal.todos();
    if(todos.count() == 0)
    {
        KMessageBox::error(this,
                           i18n("Template does not contain a valid to-do."));
    }
    else
    {
        readTodo(todos.first(), 0);
    }
}
예제 #3
0
Todo::Ptr DndFactory::createDropTodo( const QMimeData *mimeData )
{
  //kDebug();
  Todo::Ptr todo;
  MemoryCalendar::Ptr calendar( createDropCalendar( mimeData ) );

  if ( calendar ) {
    Todo::List todos = calendar->todos();
    if ( !todos.isEmpty() ) {
      todo = Todo::Ptr( new Todo( *todos.first() ) );
    }
  }

  return todo;
}
예제 #4
0
Todo *DndFactory::createDropTodo( const QMimeData *md )
{
  kDebug();
  Todo *todo = 0;
  Calendar *cal = createDropCalendar( md );

  if ( cal ) {
    Todo::List todos = cal->todos();
    if ( !todos.isEmpty() ) {
      todo = new Todo( *todos.first() );
    }
    delete cal;
  }

  return todo;
}