X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/5c36011cf1f2fb65f59a9f3410240146c1cb0a44..8eb9b508ca87fb1d634d8b8ba62c054ed04466d2:/src/main.cpp diff --git a/src/main.cpp b/src/main.cpp index 484ccab8e..2cc9ff5d9 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -20,23 +20,27 @@ #include "dolphinapplication.h" +#include "dolphinmainwindow.h" + #include -#include -#include +#include +#include +#include +#include -int main(int argc, char **argv) +extern "C" +KDE_EXPORT int kdemain(int argc, char **argv) { KAboutData about("dolphin", 0, ki18nc("@title", "Dolphin"), - "0.9.1", + "1.6.9", ki18nc("@title", "File Manager"), KAboutData::License_GPL, - ki18nc("@info:credit", "(C) 2006, 2007 Peter Penz")); - about.setHomepage("http://enzosworld.gmxhome.de"); - about.setBugAddress("http://bugs.kde.org"); + ki18nc("@info:credit", "(C) 2006-2011 Peter Penz")); + about.setHomepage("http://dolphin.kde.org"); about.addAuthor(ki18nc("@info:credit", "Peter Penz"), ki18nc("@info:credit", "Maintainer and developer"), - "peter.penz@gmx.at"); + "peter.penz19@gmail.com"); about.addAuthor(ki18nc("@info:credit", "David Faure"), ki18nc("@info:credit", "Developer"), "faure@kde.org"); @@ -45,7 +49,7 @@ int main(int argc, char **argv) "aseigo@kde.org"); about.addAuthor(ki18nc("@info:credit", "Rafael Fernández López"), ki18nc("@info:credit", "Developer"), - "ereslibre@gmail.com"); + "ereslibre@kde.org"); about.addAuthor(ki18nc("@info:credit", "Kevin Ottens"), ki18nc("@info:credit", "Developer"), "ervin@kde.org"); @@ -58,10 +62,16 @@ int main(int argc, char **argv) about.addAuthor(ki18nc("@info:credit", "Michael Austin"), ki18nc("@info:credit", "Documentation"), "tuxedup@users.sourceforge.net"); + // the .desktop file is not taken into account when launching manually, so + // set the icon precautionally: + about.setProgramIconName("system-file-manager"); KCmdLineArgs::init(argc, argv, &about); KCmdLineOptions options; + + options.add("select", ki18nc("@info:shell", "The files and directories passed as arguments " + "will be selected.")); options.add("+[Url]", ki18nc("@info:shell", "Document to open")); KCmdLineArgs::addCmdLineOptions(options); @@ -70,17 +80,22 @@ int main(int argc, char **argv) } DolphinApplication app; -#ifdef __GNUC__ -#warning TODO, SessionManagement -#endif -#if 0 - if (false /* KDE4-TODO: app.isSessionRestored() */) { + KGlobal::locale()->insertCatalog("libkonq"); // needed for applications using libkonq + + if (app.isSessionRestored()) { int n = 1; while (KMainWindow::canBeRestored(n)) { - Dolphin::mainWin().restore(n); + const QString className = KXmlGuiWindow::classNameOfToplevel(n); + if (className == QLatin1String("DolphinMainWindow")) { + DolphinMainWindow* win = app.createMainWindow(); + win->restore(n); + } else { + kWarning() << "Unknown class " << className << " in session saved data!"; + } ++n; } - } else { -#endif - return app.exec(); } + app.exec(); // krazy:exclude=crashy + + return 0; +}