uniqueapp.cpp

00001 /***************************************************************************
00002                           uniqueapp.cpp  -  description
00003                              -------------------
00004     begin                : Mon Nov 19 2001
00005     copyright            : (C) 2001 by Eggert Ehmke
00006     email                : eggert.ehmke@berlin.de
00007  ***************************************************************************/
00008 
00009 /***************************************************************************
00010  *                                                                         *
00011  *   This program is free software; you can redistribute it and/or modify  *
00012  *   it under the terms of the GNU General Public License as published by  *
00013  *   the Free Software Foundation; either version 2 of the License, or     *
00014  *   (at your option) any later version.                                   *
00015  *                                                                         *
00016  ***************************************************************************/
00017 
00018 #include "uniqueapp.h"
00019 #include <iostream>
00020 
00021 
00022 UniqueApp::UniqueApp()
00023 {
00024        m_pApp = NULL;
00025 }
00026 
00027 UniqueApp::~UniqueApp()
00028 {}
00029 
00030 int UniqueApp::newInstance ()
00031 {
00032   //start our application
00033   //---------------------
00034 
00035   //at the first invoke of newInstance() create a new instance of kshowmail
00036   if (m_pApp == NULL)
00037   {
00038     m_pApp = new KShowMailApp ();
00039   }
00040 
00041   //frage das ConfigList-Objekt, ob die KShowMail beim Starten
00042   //normal oder nur in der Taskleiste gezeigt werden soll
00043   if( m_pApp->m_ConfigList.startMinimized() )
00044   {
00045     //lege die App auf die Taskleiste
00046     m_pApp->showMinimized ();
00047     m_pApp->hide();
00048   }
00049   else
00050   {
00051     //zeige das Hauptfenster
00052     m_pApp->showNormal ();
00053     m_pApp->raise();
00054   }
00055 
00056   //Kommandozeile-Argumente auswerten
00057   //---------------------------------
00058 
00059   //die in main() eingelesenen Kommandozeile-Argumente in ein
00060   //KCmdLineArgs-Objekt ablegen
00061   KCmdLineArgs *args = KCmdLineArgs::parsedArgs();
00062 
00063   //wenn als Kommandozeilen-Argument "config" übergeben wurde,
00064   //starte jetzt den Konfigurationsdialog
00065   if ( args->isSet( CMDLINE_CONFIG ) )
00066     m_pApp->slotSetup();
00067 
00068   //wenn als Kommandozeile-Argument "refresh" übergeben wurde,
00069   //schaue sofort nach neue Mails
00070   if ( args->isSet ( CMDLINE_REFRESH ) )
00071     m_pApp->slotRefresh();
00072 
00073   //lösche alle Kommandozeilen-Argumente im Objekt
00074   args->clear ();
00075 
00076   return 0;
00077 }

Generated on Thu Jul 5 19:36:07 2007 for kshowmail by  doxygen 1.5.0