31 #include <kcmdlineargs.h>
38 #include <libkcal/calformat.h>
41 #include "korganizer.h"
44 #include "alarmclient.h"
45 #include "koglobals.h"
46 #include "actionmanager.h"
47 #include "importdialog.h"
49 #include "calendarview.h"
50 #include "stdcalendar.h"
53 #include <kstartupinfo.h>
57 KOrganizerApp::KOrganizerApp() : KUniqueApplication()
59 TQString prodId =
"-//K Desktop Environment//NONSGML KOrganizer %1//EN";
60 CalFormat::setApplication(
"KOrganizer", prodId.arg( korgVersion ) );
63 KOrganizerApp::~KOrganizerApp()
67 int KOrganizerApp::newInstance()
69 kdDebug(5850) <<
"KOApp::newInstance()" << endl;
70 static bool first =
true;
71 if ( isRestored() && first ) {
74 KOrg::StdCalendar::self()->load();
75 korg->view()->updateCategories();
76 korg->view()->updateView();
83 KCmdLineArgs *args = KCmdLineArgs::parsedArgs();
85 KOGlobals::self()->alarmClient()->startDaemon();
88 if ( args->count() <= 0 ) {
89 processCalendar( KURL() );
94 if ( args->isSet(
"open" ) ) {
95 for(
int i = 0; i < args->count(); ++i ) {
96 processCalendar( args->url( i ) );
100 processCalendar( KURL() );
103 kdError() <<
"Unable to find default calendar resources view." << endl;
107 if ( args->isSet(
"import" ) ) {
108 for(
int i = 0; i < args->count(); ++i ) {
111 }
else if ( args->isSet(
"merge" ) ) {
112 for(
int i = 0; i < args->count(); ++i ) {
116 for(
int i = 0; i < args->count(); ++i ) {
122 kdDebug(5850) <<
"KOApp::newInstance() done" << endl;
128 void KOrganizerApp::processCalendar(
const KURL &url )
132 bool hasDocument = !url.isEmpty();
133 korg =
new KOrganizer(
"KOrganizer MainWindow" );
134 korg->init( hasDocument );
137 kdDebug(5850) <<
"KOrganizerApp::processCalendar(): '" << url.url()
143 KOrg::StdCalendar::self()->load();
144 korg->view()->updateCategories();
145 korg->view()->updateView();
152 #if defined TQ_WS_X11 && ! defined K_WS_TQTONLY
153 KStartupInfo::setNewStartupId( korg->
topLevelWidget(), startupId() );