diff -r 5ee863f2f568 -r 38bdde6a54c1 QTfrontend/main.cpp.in --- a/QTfrontend/main.cpp.in Sat Sep 15 13:01:44 2007 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,104 +0,0 @@ -/* - * Hedgewars, a worms-like game - * Copyright (c) 2005-2007 Andrey Korotaev - * - * 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; version 2 of the License - * - * 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, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - */ - -#include -#include -#include -#include -#include -#include -#include -#include "hwform.h" -#include "hwconsts.h" - -QDir * bindir; -QDir * cfgdir; -QDir * datadir; -QStringList * Themes; - -bool checkForDir(const QString & dir) -{ - QDir tmpdir; - if (!tmpdir.exists(dir)) - if (!tmpdir.mkdir(dir)) - { - QMessageBox::critical(0, - QObject::tr("Error"), - QObject::tr("Cannot create directory %1").arg(dir), - QObject::tr("OK")); - return false; - } - return true; -} - -int main(int argc, char *argv[]) -{ - QApplication app(argc, argv); - - QDateTime now = QDateTime::currentDateTime(); - QDateTime zero; - srand(now.secsTo(zero)); - - Q_INIT_RESOURCE(hedgewars); - - QDir mydir("${HEDGEWARS_BINDIR}"); - mydir.cd("bin"); - - bindir = new QDir(mydir); - cfgdir = new QDir(); - - cfgdir->setPath(cfgdir->homePath()); - if (checkForDir(cfgdir->absolutePath() + "/.hedgewars")) - { - checkForDir(cfgdir->absolutePath() + "/.hedgewars/Demos"); - checkForDir(cfgdir->absolutePath() + "/.hedgewars/Saves"); - } - cfgdir->cd(".hedgewars"); - - datadir = new QDir(mydir); - datadir->cd("${HEDGEWARS_DATADIR}"); - if(!datadir->cd("hedgewars/Data")) { - QMessageBox::critical(0, QMessageBox::tr("Error"), - QMessageBox::tr("Failed to open data directory:\n%1\n" - "Please check your installation"). - arg(datadir->absolutePath()+"/hedgewars/Data")); - return 1; - } - - QTranslator Translator; - Translator.load(datadir->absolutePath() + "/Locale/hedgewars_" + QLocale::system().name()); - app.installTranslator(&Translator); - - Themes = new QStringList(); - QFile themesfile(datadir->absolutePath() + "/Themes/themes.cfg"); - if (themesfile.open(QIODevice::ReadOnly)) { - QTextStream stream(&themesfile); - QString str; - while (!stream.atEnd()) - { - Themes->append(stream.readLine()); - } - themesfile.close(); - } else { - QMessageBox::critical(0, "Error", "Cannot access themes.cfg", "OK"); - } - - HWForm *Form = new HWForm(); - Form->show(); - return app.exec(); -}