source: tspsg-svn/trunk/src/mainwindow.h @ 54

Last change on this file since 54 was 54, checked in by laleppa, 15 years ago
  • mainwindow.ui and mainwindow.ce.ui had differences only in printing actions and statusbar, so I merged them into one. Differences are now applied in source code. This will simplify Main Window maintenance.
  • Changed #ifndef Q_OS_WINCE to #ifndef QT_NO_PRINTER where relevant.
  • Now using method at() instead of operator [] in solving algorithm. This change dramatically decreased solution time (from 13 seconds to 10-40 milliseconds for 20 cities on my PC).
  • Increased maximum number of cities to 30. Setting more makes no sense at this moment, because generated solution output is big and inserting it to QTextEdit takes veeeeery long time.
  • Translations were updated.
  • Property svn:keywords set to Id URL
File size: 2.4 KB
RevLine 
[1]1/*
[42]2 *  TSPSG: TSP Solver and Generator
[17]3 *  Copyright (C) 2007-2009 Lёppa <contacts[at]oleksii[dot]name>
[1]4 *
[6]5 *  $Id: mainwindow.h 54 2009-08-08 23:45:19Z laleppa $
6 *  $URL: https://tspsg.svn.sourceforge.net/svnroot/tspsg/trunk/src/mainwindow.h $
[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#ifndef MAINWINDOW_H
25#define MAINWINDOW_H
26
[31]27#include "globals.h"
[54]28#include "ui_mainwindow.h"
[1]29#include "settingsdialog.h"
[12]30#include "tspsolver.h"
[15]31#include "tspmodel.h"
[1]32
33class MainWindow: public QMainWindow, Ui::MainWindow
34{
35        Q_OBJECT
[47]36
[1]37public:
38        MainWindow(QWidget *parent = 0);
[31]39        void closeEvent(QCloseEvent *);
[47]40
[1]41private slots:
[29]42        void actionFileNewTriggered();
[31]43        void actionFileOpenTriggered();
[50]44        void actionFileSaveTriggered();
[42]45        void actionFileSaveAsTaskTriggered();
46        void actionFileSaveAsSolutionTriggered();
[29]47        void actionSettingsPreferencesTriggered();
[31]48        void actionSettingsLanguageAutodetectTriggered(bool);
49        void groupSettingsLanguageListTriggered(QAction *);
[29]50        void actionHelpAboutTriggered();
[37]51        void dataChanged();
[54]52#ifndef QT_NO_PRINTER
[52]53        void printPreview(QPrinter *);
54        void actionFilePrintPreviewTriggered();
55        void actionFilePrintTriggered();
[54]56#endif // QT_NO_PRINTER
[29]57        void buttonSolveClicked();
58        void buttonRandomClicked();
[50]59        void buttonBackToTaskClicked();
[31]60        void spinCitiesValueChanged(int);
61        void numCitiesChanged(int);
[47]62
[6]63private:
[23]64        QSettings *settings;
[54]65#ifndef QT_NO_PRINTER
[29]66        QPrinter *printer;
[54]67#endif // QT_NO_PRINTER
[15]68        CTSPModel *tspmodel;
[47]69        QString fileName;
[29]70        QActionGroup *groupSettingsLanguageList;
[42]71        QStringList output;
[47]72        void enableSolutionActions(bool enable = true);
73        void initDocStyleSheet();
[30]74        bool loadLanguage(QString lang = "");
[29]75        void loadLangList();
[47]76        bool maybeSave();
77        void outputMatrix(tMatrix, QStringList &, int nRow = -1, int nCol = -1);
78        void setFileName(QString fileName = trUtf8("Untitled") + ".tspt");
[37]79        bool saveTask();
[1]80};
81
82#endif // MAINWINDOW_H
Note: See TracBrowser for help on using the repository browser.