joachim99@8: /*************************************************************************** joachim99@8: main.cpp - Where everything starts. joachim99@8: ------------------- joachim99@8: begin : Don Jul 11 12:31:29 CEST 2002 joachim99@77: copyright : (C) 2002-2007 by Joachim Eibl joachim99@69: email : joachim.eibl at gmx.de joachim99@8: ***************************************************************************/ joachim99@8: joachim99@8: /*************************************************************************** joachim99@8: * * joachim99@8: * This program is free software; you can redistribute it and/or modify * joachim99@8: * it under the terms of the GNU General Public License as published by * joachim99@8: * the Free Software Foundation; either version 2 of the License, or * joachim99@8: * (at your option) any later version. * joachim99@8: * * joachim99@8: ***************************************************************************/ joachim99@8: joachim99@8: #include joachim99@8: #include joachim99@8: #include joachim99@40: #include "kdiff3_shell.h" joachim99@69: #include friseb123@16: #include "version.h" joachim99@53: #include joachim99@69: #include joachim99@69: #include joachim99@70: #include joachim99@75: #include joachim99@80: #include joachim99@69: #include joachim99@8: joachim99@66: #ifdef KREPLACEMENTS_H joachim99@66: #include "optiondialog.h" joachim99@66: #endif joachim99@69: #include "common.h" joachim99@8: joachim99@92: void initialiseCmdLineArgs( KCmdLineOptions& options ) joachim99@92: { joachim99@92: QString configFileName = KStandardDirs().findResource("config","kdiff3rc"); joachim99@92: QFile configFile( configFileName ); joachim99@92: QString ignorableOptionsLine = "-u;-query;-html;-abort"; joachim99@92: if ( configFile.open( QIODevice::ReadOnly ) ) joachim99@92: { joachim99@92: QTextStream ts( &configFile ); joachim99@92: while(!ts.atEnd()) joachim99@92: { joachim99@92: QString line = ts.readLine(); joachim99@92: if ( line.startsWith("IgnorableCmdLineOptions=") ) joachim99@92: { joachim99@92: int pos = line.indexOf('='); joachim99@92: if (pos>=0) joachim99@92: { joachim99@92: ignorableOptionsLine = line.mid(pos+1); joachim99@92: } joachim99@92: break; joachim99@92: } joachim99@92: } joachim99@92: } joachim99@8: joachim99@92: #ifdef KREPLACEMENTS_H joachim99@92: QStringList sl = ignorableOptionsLine.split( '|' ); joachim99@92: #else joachim99@92: QStringList sl = ignorableOptionsLine.split( ',' ); joachim99@92: #endif joachim99@92: if (!sl.isEmpty()) joachim99@92: { joachim99@92: QStringList ignorableOptions = sl.front().split( ';' ); joachim99@92: for (QStringList::iterator i=ignorableOptions.begin(); i!=ignorableOptions.end(); ++i) joachim99@92: { joachim99@92: (*i).remove('-'); joachim99@92: if (!(*i).isEmpty()) joachim99@92: { joachim99@92: if ( i->length()==1 ) joachim99@92: options.add( i->toLatin1() ).add("ignore", ki18n("Ignored. (User defined.)") ); joachim99@92: else joachim99@92: options.add( i->toLatin1(), ki18n("Ignored. (User defined.)") ); joachim99@92: } joachim99@92: } joachim99@92: } joachim99@92: } joachim99@69: joachim99@8: #ifdef _WIN32 joachim99@8: #include joachim99@8: // This command checks the comm joachim99@8: static bool isOptionUsed(const QString& s, int argc, char* argv[]) joachim99@8: { joachim99@8: for(int j=0; jreadEntry("Language", "Auto"); joachim99@75: int spacePos = locale.indexOf(' '); joachim99@66: if (spacePos>0) locale = locale.left(spacePos); joachim99@80: ContextFreeTranslator kdiff3Translator( 0 ); joachim99@53: QTranslator qtTranslator( 0 ); joachim99@66: if (locale != "en_orig") joachim99@66: { joachim99@66: if ( locale == "Auto" || locale.isEmpty() ) joachim99@75: locale = locale = QLocale::system().name().left(2); joachim99@66: joachim99@92: QString translationDir = getTranslationDir(locale); joachim99@66: kdiff3Translator.load( QString("kdiff3_")+locale, translationDir ); joachim99@66: app.installTranslator( &kdiff3Translator ); joachim99@66: joachim99@66: qtTranslator.load( QString("qt_")+locale, translationDir ); joachim99@66: app.installTranslator( &qtTranslator ); joachim99@66: } joachim99@53: #endif joachim99@8: joachim99@80: if (app.isSessionRestored()) joachim99@8: { joachim99@8: RESTORE(KDiff3Shell); joachim99@8: } joachim99@8: else joachim99@8: { joachim99@80: KDiff3Shell* p = new KDiff3Shell(); joachim99@80: p->show(); joachim99@8: } joachim99@80: //app.installEventFilter( new CFilter ); joachim99@69: int retVal = app.exec(); joachim99@69: return retVal; joachim99@8: } joachim99@53: joachim99@53: // Suppress warning with --enable-final joachim99@53: #undef VERSION