Development/Tutorials/PIM/ical

From KDE TechBase
Revision as of 19:35, 16 November 2008 by Tstaerk (talk | contribs) (New page: = Loading a calendar = Here is the easiest test case: A program that loads /tmp/test.ics. == CMakeLists.txt == <pre> PROJECT( kde4start ) FIND_PACKAGE(KDE4 REQUIRED) INCLUDE_DIRECTORIES( ...)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Loading a calendar

Here is the easiest test case: A program that loads /tmp/test.ics.

CMakeLists.txt

PROJECT( kde4start )
FIND_PACKAGE(KDE4 REQUIRED)
INCLUDE_DIRECTORIES( ${KDE4_INCLUDES} . )


SET(kde4startSources main.cpp )

KDE4_ADD_EXECUTABLE(kde4start ${kde4startSources} )

TARGET_LINK_LIBRARIES(kde4start ${KDE4_KDEUI_LIBS} ${KDE4_KCAL_LIBS} ${KDE4_KPARTS_LIBS} kdepim kcal_resourceremote )

main.cpp

/*
This is a test case for KDE's iCalendar functionality.
(c) 2008 by Thorsten Staerk
*/

#include <QString>
#include <kapplication.h>
#include <kaboutdata.h>
#include <kmessagebox.h>
#include <kcmdlineargs.h>
#include <KMainWindow>
#include <kcal/resourcecalendar.h>
#include <kcal/resourcecached.h>
#include <kcal/resourcelocal.h>

int main (int argc, char *argv[])
{
  const QByteArray& ba=QByteArray("test");
  const KLocalizedString name=ki18n("myName");
  KAboutData aboutData( ba, ba, name, ba, name);
  KCmdLineArgs::init( argc, argv, &aboutData );
  KApplication khello;
  KCal::ResourceCalendar* cal;
  KCal::ResourceCached* resource;
  resource=new KCal::ResourceLocal("/tmp/test.ics");
  cal=resource;
  cal->load();
  KABC::Lock *lock = cal->lock();
  cal->save();
  lock->unlock();
}