source: tspsg-svn/trunk/src/main.cpp @ 105

Last change on this file since 105 was 99, checked in by laleppa, 15 years ago
  • Fixed a bug when a solution couldn't be found for some tasks while the task had at least one solution (mostly, tasks with a lot of restrictions).
  • Fixed a bug when Save As dialog always appeared (even for non-Untitled files) when selecting Save in Unsaved Changes dialog.
  • Improved the solution algorithm.
  • Moved progress dialog from CTSPSolver to MainWindow?. CTSPSolver doesn't contain any GUI related code now.

+ Added routePartFound() signal to CTSPSolver which is emitted once every time a part of the route is found.
+ Added cancel() slot and wasCanceled() public function to CTSPSolver to be able to cancel a solution process and to know whether it was canceled.
+ Progress is now shown when generating a solution output.
+ Check for updates functionality (only in Windows version at this moment).

  • Property svn:keywords set to Id URL
File size: 2.2 KB
RevLine 
[1]1/*
[42]2 *  TSPSG: TSP Solver and Generator
[87]3 *  Copyright (C) 2007-2010 Lёppa <contacts[at]oleksii[dot]name>
[1]4 *
[6]5 *  $Id: main.cpp 99 2010-03-22 20:45:16Z laleppa $
6 *  $URL: https://tspsg.svn.sourceforge.net/svnroot/tspsg/trunk/src/main.cpp $
[4]7 *
[6]8 *  This file is part of TSPSG.
[1]9 *
[6]10 *  TSPSG is free software: you can redistribute it and/or modify
11 *  it under the terms of the GNU General Public License as published by
12 *  the Free Software Foundation, either version 3 of the License, or
13 *  (at your option) any later version.
[1]14 *
[6]15 *  TSPSG is distributed in the hope that it will be useful,
16 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
17 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18 *  GNU General Public License for more details.
[1]19 *
[6]20 *  You should have received a copy of the GNU General Public License
21 *  along with TSPSG.  If not, see <http://www.gnu.org/licenses/>.
[1]22 */
23
24#include "mainwindow.h"
[35]25#if QT_VERSION < 0x040500
26        #ifdef _MSC_VER
27                #pragma message("WARNING: You are using Qt version < 4.5. Application will not support some non-critical features.")
28        #elif (defined(__GNUC__) || defined(__MINGW32__))
[45]29                #warning WARNING: You are using Qt version < 4.5. Application will not support some non-critical features.
30        #else
31                #error You are using Qt version < 4.5. Application will not support some non-critical features. To continue, please, comment line 31 at main.cpp.
[35]32        #endif
33#endif
[9]34
[71]35#ifdef STATIC_BUILD
[98]36//      Q_IMPORT_PLUGIN(qjpeg)
37//      Q_IMPORT_PLUGIN(qsvg)
[71]38#endif
39
[1]40int main(int argc, char *argv[])
41{
42QApplication app(argc, argv);
[45]43        app.setOverrideCursor(QCursor(Qt::WaitCursor));
[33]44        QTextCodec::setCodecForLocale(QTextCodec::codecForName("utf8"));
45        QTextCodec::setCodecForCStrings(QTextCodec::codecForName("utf8"));
46        QTextCodec::setCodecForTr(QTextCodec::codecForName("utf8"));
[99]47        app.setOrganizationName("Oleksii \"Lёppa\" Serdiuk");
48        app.setOrganizationDomain("oleksii.name");
[21]49        app.setApplicationName("TSPSG");
[57]50        app.setApplicationVersion(BUILD_VERSION);
[70]51
52        // Seeding random number generator
53        qsrand(QDateTime::currentDateTime().toTime_t() ^ QCursor::pos().x() ^ QCursor::pos().y());
54
[80]55QTranslator en;
[96]56        if (en.load("tspsg_en", PATH_L10N))
[80]57                app.installTranslator(&en);
58
[1]59MainWindow mainwindow;
60        mainwindow.show();
[45]61        app.restoreOverrideCursor();
[1]62        return app.exec();
63}
Note: See TracBrowser for help on using the repository browser.