summaryrefslogtreecommitdiffstats
path: root/src/main_assistant.cpp
blob: d851447f1b29a6dfa72c9e72a438db07e1e58504 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
#include <config.h>

#include <kaboutdata.h>
#include <kapplication.h>
#include <kcmdlineargs.h>
#include <klocale.h>
#include <kmainwindow.h>
#include <kstandarddirs.h>
#include <kdebug.h>
#include <dcopclient.h>

#include <tqfileinfo.h>

#include "splashscreen.h"
#include "toplevel.h"
#include "plugincontroller.h"
#include "partcontroller.h"
#include "core.h"
#include "projectmanager.h"

#include "kdevassistantextension.h"

static KCmdLineOptions options[] =
{
    { "profile <profile>",	I18N_NOOP("Profile to load"), 0 },
/*    { "+file(s)",		I18N_NOOP("Files to load"), 0 },*/
    { 0,0,0 }
};

int main(int argc, char *argv[])
{
  static const char description[] = I18N_NOOP("The KDevelop Integrated Development Environment:\nassistant and documentation viewer");
  KAboutData aboutData("kdevassistant", I18N_NOOP("KDevelop Assistant"),
                       VERSION, description, KAboutData::License_GPL,
                       I18N_NOOP("(c) 1999-2007, The KDevelop developers"), "", "http://www.kdevelop.org");
  aboutData.addAuthor("Alexander Dymo", I18N_NOOP("Release coordinator, Overall improvements, Pascal support, C++ support, New File and Documentation parts"), "[email protected]");
  aboutData.addAuthor("Amilcar do Carmo Lucas", I18N_NOOP("Release coordinator, API documentation, Doxygen and autoproject patches"), "[email protected]");
  aboutData.addAuthor("Bernd Gehrmann", I18N_NOOP("Initial idea, basic architecture, much initial source code"), "[email protected]");
  aboutData.addAuthor("Caleb Tennis", I18N_NOOP("KTabBar, bugfixes"), "[email protected]");
  aboutData.addAuthor("Richard Dale", I18N_NOOP("Java & Objective C support"), "[email protected]");
  aboutData.addAuthor("John Birch", I18N_NOOP("Debugger frontend"), "[email protected]");
  aboutData.addAuthor("Sandy Meier", I18N_NOOP("PHP support, context menu stuff"), "[email protected]");
  aboutData.addAuthor("Kurt Granroth", I18N_NOOP("KDE application templates"), "[email protected]");
  aboutData.addAuthor("Ian Reinhart Geiser", I18N_NOOP("Dist part, bash support, application templates"), "[email protected]");
  aboutData.addAuthor("Matthias Hoelzer-Kluepfel", I18N_NOOP("Several components, htdig indexing"), "[email protected]");
  aboutData.addAuthor("Victor Roeder", I18N_NOOP("Help with Automake manager and persistent class store"), "[email protected]");
  aboutData.addAuthor("Harald Fernengel", I18N_NOOP("Ported to Qt 3, patches, valgrind, diff and perforce support"), "[email protected]");
  aboutData.addAuthor("Roberto Raggi", I18N_NOOP("QEditor component, code completion, Abbrev component, C++ support, Java support"), "[email protected]");
  aboutData.addAuthor("Simon Hausmann", I18N_NOOP("Help with KParts infrastructure"), "[email protected]");
  aboutData.addAuthor("Oliver Kellogg", I18N_NOOP("Ada support"), "[email protected]");
  aboutData.addAuthor("Jakob Simon-Gaarde", I18N_NOOP("QMake projectmanager"), "[email protected]");
  aboutData.addAuthor("F@lk Brettschneider", I18N_NOOP("MDI modes, QEditor, bugfixes"), "[email protected]");
  aboutData.addAuthor("Mario Scalas", I18N_NOOP("PartExplorer, redesign of CvsPart, patches, bugs(fixes)"), "[email protected]");
  aboutData.addAuthor("Jens Dagerbo", I18N_NOOP("Replace, Bookmarks, FileList and CTags2 plugins. Overall improvements and patches"), "[email protected]");
  aboutData.addAuthor("Julian Rockey", I18N_NOOP("Filecreate part and other bits and patches"), "[email protected]");
  aboutData.addCredit("Ajay Guleria", I18N_NOOP("ClearCase support"), "[email protected]");
  aboutData.addCredit("Marek Janukowicz", I18N_NOOP("Ruby support"), "[email protected]");

  aboutData.addCredit("The KWrite authors", I18N_NOOP("Kate editor component"), "[email protected]");
  aboutData.addCredit("The KHTML authors", I18N_NOOP("HTML documentation component"), "[email protected]");
  aboutData.addCredit("Robert Moniot", I18N_NOOP("Fortran documentation"), "[email protected]");
  aboutData.addCredit("Ka-Ping Yee", I18N_NOOP("Python documentation utility"), "[email protected]");
  aboutData.addCredit("Dimitri van Heesch", I18N_NOOP("Doxygen wizard"), "[email protected]");
  aboutData.addCredit("Hugo Varotto", I18N_NOOP("Fileselector component"), "[email protected]");
  aboutData.addCredit("Matt Newell", I18N_NOOP("Fileselector component"), "[email protected]");
  aboutData.addCredit("Trolltech AS", I18N_NOOP("Designer code"), "[email protected]");
  aboutData.addCredit("Daniel Engelschalt", I18N_NOOP("C++ code completion, persistent class store"), "[email protected]");
  aboutData.addCredit("Stephane ANCELOT", I18N_NOOP("Patches"), "[email protected]");
  aboutData.addCredit("Jens Zurheide", I18N_NOOP("Patches"), "[email protected]");
  aboutData.addCredit("Luc Willems", I18N_NOOP("Help with Perl support"), "[email protected]");
  aboutData.addCredit("Marcel Turino", I18N_NOOP("Documentation index view"), "[email protected]");
  aboutData.addCredit("Yann Hodique", I18N_NOOP("Patches"), "[email protected]");
  aboutData.addCredit("Tobias Gl\303\244\303\237er" , I18N_NOOP("Documentation Finder,  qmake projectmanager patches, usability improvements, bugfixes ... "), "[email protected]");
  aboutData.addCredit("Andreas Koepfle" , I18N_NOOP("QMake project manager patches"), "[email protected]");
  aboutData.addCredit("Sascha Cunz" , I18N_NOOP("Cleanup and bugfixes for qEditor, AutoMake and much other stuff"), "[email protected]");

  KCmdLineArgs::init(argc, argv, &aboutData);
  KCmdLineArgs::addCmdLineOptions( options );
//  KCmdLineArgs* args = KCmdLineArgs::parsedArgs();

  KApplication app;

  KDevAssistantExtension::init();

  KDevSplashScreen *splash = 0;
  TQString splashFile = locate("data", "kdevelop/pics/kdevassistant-splash.png");
  if (!splashFile.isEmpty())
  {
    TQPixmap pm;
    pm.load(splashFile);
    splash = new KDevSplashScreen( pm );
  }
  if (splash) splash->show();

  app.processEvents();

  TQObject::connect(PluginController::getInstance(), TQT_SIGNAL(loadingPlugin(const TQString &)),
		   splash, TQT_SLOT(showMessage(const TQString &)));

  if (splash) splash->message( i18n( "Loading Settings" ) );
  TopLevel::getInstance()->loadSettings();

  PluginController::getInstance()->loadInitialPlugins();

  if (splash) splash->message( i18n( "Starting GUI" ) );
  TopLevel::getInstance()->main()->show();

  Core::getInstance()->doEmitCoreInitialized();

  if (splash) delete splash;

  kapp->dcopClient()->registerAs("kdevassistant");

  return app.exec();
}