? po
Index: interfaces/Makefile.am
===================================================================
RCS file: /home/kde/kdepim/kontact/interfaces/Makefile.am,v
retrieving revision 1.12
diff -u -p -b -r1.12 Makefile.am
--- interfaces/Makefile.am	26 Sep 2003 00:32:45 -0000	1.12
+++ interfaces/Makefile.am	4 Jan 2004 11:30:14 -0000
@@ -2,7 +2,7 @@ INCLUDES = -I$(top_srcdir) $(all_include
 
 lib_LTLIBRARIES = libkpinterfaces.la
 
-libkpinterfaces_la_SOURCES = core.cpp plugin.cpp summary.cpp
+libkpinterfaces_la_SOURCES = core.cpp plugin.cpp summary.cpp uniqueapphandler.cpp
 libkpinterfaces_la_LDFLAGS = $(all_libraries) -no-undefined -version-info 1:0:0
 libkpinterfaces_la_LIBADD = $(LIB_KPARTS) ../../libkdepim/libkdepim.la 
 
Index: interfaces/plugin.cpp
===================================================================
RCS file: /home/kde/kdepim/kontact/interfaces/plugin.cpp,v
retrieving revision 1.29
diff -u -p -b -r1.29 plugin.cpp
--- interfaces/plugin.cpp	25 Oct 2003 11:24:00 -0000	1.29
+++ interfaces/plugin.cpp	4 Jan 2004 11:30:14 -0000
@@ -187,8 +187,9 @@ void Plugin::partDestroyed()
 
 void Plugin::bringToForeground()
 {
-  if (!d->executableName.isEmpty())
-    KRun::runCommand(d->executableName);
+  kdDebug() << "############ Plugin::bringToForeground" << endl;
+  //if (!d->executableName.isEmpty())
+  //  KRun::runCommand(d->executableName);
 }
 
 #include "plugin.moc"
Index: plugins/korganizer/korganizerplugin.cpp
===================================================================
RCS file: /home/kde/kdepim/kontact/plugins/korganizer/korganizerplugin.cpp,v
retrieving revision 1.13
diff -u -p -b -r1.13 korganizerplugin.cpp
--- plugins/korganizer/korganizerplugin.cpp	1 Dec 2003 22:11:52 -0000	1.13
+++ plugins/korganizer/korganizerplugin.cpp	4 Jan 2004 11:30:14 -0000
@@ -47,7 +47,8 @@ K_EXPORT_COMPONENT_FACTORY( libkontact_k
 
 KOrganizerPlugin::KOrganizerPlugin( Kontact::Core *core, const char *, const QStringList& )
   : Kontact::Plugin( core, core, "korganizer" ), 
-    mIface( 0 )
+    mIface( 0 ),
+    m_uniqueAppHandler()
 {
   setInstance( KOrganizerPluginFactory::instance() );
 
@@ -57,6 +58,7 @@ KOrganizerPlugin::KOrganizerPlugin( Kont
   insertNewAction( new KAction( i18n( "New Event" ), pm,
                    0, this, SLOT( slotNewEvent() ), actionCollection(),
                    "new_event" ) );
+  dcopClient(); // ensure that we register to DCOP as "korganizer"
 }
 
 KOrganizerPlugin::~KOrganizerPlugin()
@@ -75,7 +77,6 @@ KParts::Part *KOrganizerPlugin::createPa
   if ( !part )
     return 0;
 
-  dcopClient(); // ensure that we register to DCOP as "korganizer"
   mIface = new KCalendarIface_stub( dcopClient(), "kontact", "CalendarIface" );
 
   return part;
Index: plugins/korganizer/korganizerplugin.h
===================================================================
RCS file: /home/kde/kdepim/kontact/plugins/korganizer/korganizerplugin.h,v
retrieving revision 1.7
diff -u -p -b -r1.7 korganizerplugin.h
--- plugins/korganizer/korganizerplugin.h	1 Dec 2003 22:11:52 -0000	1.7
+++ plugins/korganizer/korganizerplugin.h	4 Jan 2004 11:30:14 -0000
@@ -30,6 +30,25 @@
 
 #include "kcalendariface_stub.h"
 #include "plugin.h"
+#include <uniqueapphandler.h>
+
+#include "../../korganizer/korganizer_options.h"
+
+class KOrganizerUniqueAppHandler : public Kontact::UniqueAppHandler
+{
+public:
+    KOrganizerUniqueAppHandler() : Kontact::UniqueAppHandler( "korganizer" ){
+    }
+    virtual void loadCommandLineOptions() {
+        kdDebug() << k_funcinfo << endl;
+        KCmdLineArgs::addCmdLineOptions( korganizer_options );
+    }
+    virtual int newInstance() {
+        kdDebug() << k_funcinfo << endl;
+        // TODO handle command line options
+        return Kontact::UniqueAppHandler::newInstance();
+    }
+};
 
 class KOrganizerPlugin : public Kontact::Plugin
 {
@@ -62,6 +81,7 @@ class KOrganizerPlugin : public Kontact:
 
   private:
     KCalendarIface_stub *mIface;
+    KOrganizerUniqueAppHandler m_uniqueAppHandler;
 };
 
 #endif
