Mercurial > octave-nkf
diff gui/src/octavegui.cc @ 14703:f86884be20fc gui
Renamed all source files of the gui to lowercase and .cc to be conform with the octave sources.
author | Jacob Dawid <jacob.dawid@googlemail.com> |
---|---|
date | Thu, 31 May 2012 20:53:56 +0200 |
parents | gui/src/OctaveGUI.cpp@79c9a6d06590 |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/gui/src/octavegui.cc Thu May 31 20:53:56 2012 +0200 @@ -0,0 +1,90 @@ +/* OctaveGUI - A graphical user interface for Octave + * Copyright (C) 2011 Jacob Dawid (jacob.dawid@googlemail.com) + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as + * published by the Free Software Foundation, either version 3 of the + * License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + */ + +#include <QtGui/QApplication> +#include <QTranslator> +#include <QSettings> +#include "welcomewizard.h" +#include "resourcemanager.h" +#include "mainwindow.h" + +int +main (int argc, char *argv[]) +{ + QApplication application (argc, argv); + while (true) + { + if (ResourceManager::instance ()->isFirstRun ()) + { + WelcomeWizard welcomeWizard; + int returnCode = welcomeWizard.exec (); + + QSettings *settings = ResourceManager::instance ()->settings (); + settings->setValue ("connectOnStartup", true); + settings->setValue ("showMessageOfTheDay", true); + settings->setValue ("showTopic", true); + settings->setValue ("autoIdentification", false); + settings->setValue ("nickServPassword", ""); + settings->setValue ("useCustomFileEditor", false); + settings->setValue ("customFileEditor", "emacs"); + settings->setValue ("editor/showLineNumbers", true); + settings->setValue ("editor/highlightCurrentLine", true); + settings->setValue ("editor/codeCompletion", true); + settings->setValue ("editor/fontName", "Monospace"); + settings->setValue ("editor/fontSize", 10); + settings->setValue ("editor/shortWindowTitle", true); + settings->setValue ("showFilenames", true); + settings->setValue ("showFileSize", false); + settings->setValue ("showFileType", false); + settings->setValue ("showLastModified", false); + settings->setValue ("showHiddenFiles", false); + settings->setValue ("useAlternatingRowColors", true); + settings->setValue ("useProxyServer", false); + settings->setValue ("proxyType", "Sock5Proxy"); + settings->setValue ("proxyHostName", "none"); + settings->setValue ("proxyPort", 8080); + settings->setValue ("proxyUserName", ""); + settings->setValue ("proxyPassword", ""); + settings->sync (); + ResourceManager::instance ()->reloadSettings (); + + application.quit (); + // We are in an infinite loop, so everything else than a return + // will cause the application to restart from the very beginning. + if (returnCode == QDialog::Rejected) + return 0; + } + else + { + QSettings *settings = ResourceManager::instance ()->settings (); + QString language = settings->value ("language").toString (); + + QString translatorFile = ResourceManager::instance ()->findTranslatorFile (language); + QTranslator translator; + translator.load (translatorFile); + application.installTranslator (&translator); + + ResourceManager::instance ()->updateNetworkSettings (); + ResourceManager::instance ()->loadIcons (); + + MainWindow w; + w.show (); + //w.activateWindow(); + return application.exec (); + } + } +}