kexi
main.cpp00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025 #include <kapplication.h>
00026 #include <dcopclient.h>
00027 #include <klocale.h>
00028 #include <kdebug.h>
00029 #include <kmessagebox.h>
00030 #include <kmimetype.h>
00031 #include <kiconloader.h>
00032 #include <kstandarddirs.h>
00033
00034 #include "core/kexiproject.h"
00035 #include "core/kexidialogbase.h"
00036 #include "core/kexi.h"
00037 #include "main/keximainwindowimpl.h"
00038 #include "main/startup/KexiStartup.h"
00039
00040 extern "C" int kdemain(int argc, char *argv[])
00041 {
00042 Kexi::initCmdLineArgs( argc, argv );
00043
00044 bool GUIenabled = true;
00045 QWidget *dummyWidget = 0;
00047 KApplication app(true, GUIenabled);
00048 #ifdef KEXI_STANDALONE
00049 KGlobal::locale()->removeCatalogue("kexi");
00050 KGlobal::locale()->insertCatalogue("standalone_kexi");
00051 #endif
00052 KGlobal::locale()->insertCatalogue("koffice");
00053 KGlobal::locale()->insertCatalogue("koproperty");
00054
00055 if (GUIenabled) {
00056 dummyWidget = new QWidget();
00057 dummyWidget->setIcon( DesktopIcon( "kexi" ) );
00058 app.setMainWidget(dummyWidget);
00059 }
00060
00061 tristate res = Kexi::startupHandler().init(argc, argv);
00062 if (!res)
00063 return 1;
00064 if (~res)
00065 return 0;
00066
00067 kdDebug() << "startupActions OK" <<endl;
00068
00069
00070 if (Kexi::startupHandler().action() == KexiStartupData::Exit)
00071 return 0;
00072
00073 #ifdef CUSTOM_VERSION
00074 # include "custom_exec.h"
00075 #endif
00076
00077 KexiMainWindowImpl *win = new KexiMainWindowImpl();
00078 app.setMainWidget(win);
00079 delete dummyWidget;
00080
00081 if (true != win->startup()) {
00082 delete win;
00083 return 1;
00084 }
00085
00086 win->show();
00087 app.processEvents();
00088
00089 return app.exec();
00090 }
00091
|