Update for release.
[konversation:argonel-konversation.git] / src / main.cpp
1 /*
2   This program is free software; you can redistribute it and/or modify
3   it under the terms of the GNU General Public License as published by
4   the Free Software Foundation; either version 2 of the License, or
5   (at your option) any later version.
6 */
7
8 /*
9   Where it all began ...
10   begin:     Die Jan 15 05:59:05 CET 2002
11   copyright: (C) 2002 by Dario Abatianni
12   email:     eisfuchs@tigress.com
13 */
14
15
16 #include "application.h"
17 #include "version.h"
18 #include "commit.h"
19
20 #include <KCmdLineArgs>
21 #include <KAboutData>
22
23 /*
24   Don't use i18n() here, use ki18n() instead!
25   i18n() will only work as soon as a kapplication object was made.
26 */
27
28 int main(int argc, char* argv[])
29 {
30     KAboutData aboutData("konversation",
31         "",
32         ki18n("Konversation"),
33         KONVI_VERSION,
34         ki18n("A user friendly IRC client"),
35         KAboutData::License_GPL,
36         ki18n("(C) 2002-2009 by the Konversation team"),
37         ki18n("Konversation is a client for the Internet Relay Chat (IRC) protocol.\n"
38         "Meet friends on the net, make new acquaintances and lose yourself in\n"
39         "talk about your favorite subject."),
40         "http://konversation.kde.org/");
41
42     aboutData.addAuthor(ki18n("Dario Abatianni"),ki18n("Original Author, Project Founder"),"eisfuchs@tigress.com");
43     aboutData.addAuthor(ki18n("Peter Simonsson"),ki18n("Maintainer"),"psn@linux.se");
44     aboutData.addAuthor(ki18n("Eike Hein"),ki18n("Maintainer, Release Manager, User interface, Connection management, Protocol handling, Auto-away"),"hein@kde.org");
45     aboutData.addAuthor(ki18n("Shintaro Matsuoka"),ki18n("DCC, Encoding handling, OSD positioning"),"shin@shoegazed.org");
46     aboutData.addAuthor(ki18n("Eli MacKenzie"),ki18n("Protocol handling, Input line"),"argonel@gmail.com");
47     aboutData.addAuthor(ki18n("İsmail Dönmez"),ki18n("Blowfish, SSL support, KNetwork port, Colored nicks, Nicklist themes"),"ismail@kde.org");
48     aboutData.addAuthor(ki18n("John Tapsell"),ki18n("Refactoring, KAddressBook/Kontact integration"), "john@geola.co.uk");
49     aboutData.addAuthor(ki18n("Bernd Buschinski"),ki18n("DCC port to KDE 4, various DCC improvements"), "b.buschinski@web.de");
50
51     aboutData.addCredit(ki18n("Olivier Bédard"),ki18n("Website hosting"));
52     aboutData.addCredit(ki18n("Jędrzej Lisowski"),ki18n("Website maintenance"),"yesoos@gmail.com");
53     aboutData.addCredit(ki18n("Christian Muehlhaeuser"),ki18n("Multiple modes extension, Close widget placement, OSD functionality"),"chris@chris.de");
54     aboutData.addCredit(ki18n("Gary Cramblitt"),ki18n("Documentation, Watched nicks online improvements, Custom web browser extension"),"garycramblitt@comcast.net");
55     aboutData.addCredit(ki18n("Matthias Gierlings"),ki18n("Color configurator, Highlight dialog"),"gismore@users.sourceforge.net");
56     aboutData.addCredit(ki18n("Alex Zepeda"),ki18n("DCOP interface"),"garbanzo@hooked.net");
57     aboutData.addCredit(ki18n("Stanislav Karchebny"),ki18n("Non-Latin1-Encodings"),"berkus@users.sourceforge.net");
58     aboutData.addCredit(ki18n("Mickael Marchand"),ki18n("Konsole part view"),"marchand@kde.org");
59     aboutData.addCredit(ki18n("Michael Goettsche"),ki18n("Quick connect, Ported new OSD, other features and bugfixes"),"michael.goettsche@kdemail.net");
60     aboutData.addCredit(ki18n("Benjamin Meyer"),ki18n("A Handful of fixes and code cleanup"),"ben+konversation@meyerhome.net");
61     aboutData.addCredit(ki18n("Jakub Stachowski"),ki18n("Drag&Drop improvements"),"qbast@go2.pl");
62     aboutData.addCredit(ki18n("Sebastian Sariego"),ki18n("Artwork"),"segfault@kde.cl");
63     aboutData.addCredit(ki18n("Renchi Raju"),ki18n("Firefox style searchbar"));
64     aboutData.addCredit(ki18n("Michael Kreitzer"),ki18n("Raw modes, Tab grouping per server, Ban list"),"mrgrim@gr1m.org");
65     aboutData.addCredit(ki18n("Frauke Oster"),ki18n("System tray patch"),"frauke@frsv.de");
66     aboutData.addCredit(ki18n("Lucijan Busch"),ki18n("Bug fixes"),"lucijan@kde.org");
67     aboutData.addCredit(ki18n("Sascha Cunz"),ki18n("Extended user modes patch"),"mail@sacu.de");
68     aboutData.addCredit(ki18n("Steve Wollkind"),ki18n("Close visible tab with shortcut patch"),"steve@njord.org");
69     aboutData.addCredit(ki18n("Thomas Nagy"),ki18n("Cycle tabs with mouse scroll wheel"),"thomas.nagy@eleve.emn.fr");
70     aboutData.addCredit(ki18n("Tobias Olry"),ki18n("Channel ownership mode patch"),"tobias.olry@web.de");
71     aboutData.addCredit(ki18n("Ruud Nabben"),ki18n("Option to enable IRC color filtering"),"r.nabben@gawab.com");
72     aboutData.addCredit(ki18n("Lothar Braun"),ki18n("Bug fixes"),"mail@lobraun.de");
73     aboutData.addCredit(ki18n("Ivor Hewitt"),ki18n("Bug fixes, OSD work, clearing topics"),"ivor@ivor.org");
74     aboutData.addCredit(ki18n("Emil Obermayr"),ki18n("Sysinfo script"),"nobs@tigress.com");
75     aboutData.addCredit(ki18n("Stanislav Nikolov"),ki18n("Bug fixes"),"valsinats@gmail.com");
76     aboutData.addCredit(ki18n("Juan Carlos Torres"),ki18n("Auto-join context menu"),"carlosdgtorres@gmail.com");
77     aboutData.addCredit(ki18n("Travis McHenry"),ki18n("Various fixes, ported encryption to QCA2, added DH1080 key exchange support."),"tmchenryaz@cox.net");
78     aboutData.addCredit(ki18n("Modestas Vainius"),ki18n("Bug fixes and enhancements."),"modestas@vainius.eu");
79
80     KCmdLineArgs::init(argc, argv, &aboutData);
81     KCmdLineOptions options;
82     options.add( "+[url]", ki18n("irc:// URL or server hostname"), 0);
83     options.add( "server <server>", ki18n("Server to connect"), 0 );
84     options.add( "port <port>", ki18n("Port to use"), "6667");
85     options.add( "channel <channel>", ki18n("Channel to join after connection"), "");
86     options.add( "nick <nickname>", ki18n("Nickname to use"),"");
87     options.add( "password <password>", ki18n("Password for connection"),"");
88     options.add( "ssl", ki18n("Use SSL for connection"),"false");
89
90
91     KCmdLineArgs::addCmdLineOptions(options);
92     KCmdLineArgs::addStdCmdLineOptions();
93
94     if (!KUniqueApplication::start()) return 0;
95
96     Application app;
97
98     return app.exec();
99 }