Subversion Repositories svn1-original

Rev

Rev 215 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 215 Rev 216
Line -... Line 1...
-
 
1
#include <QFileDialog>
1
#include "qmdownloadlegtimes.h"
2
#include "qmdownloadlegtimes.h"
2
#include "ui_qmdownloadlegtimes.h"
3
#include "ui_qmdownloadlegtimes.h"
3
#include "mainwindow.h"
4
#include "mainwindow.h"
4
 
5
 
5
#include    "consts.h"
6
#include    "consts.h"
Line 12... Line 13...
12
{
13
{
13
    ui->setupUi(this);
14
    ui->setupUi(this);
14
    connect(ui->cancel, SIGNAL(clicked()), this, SLOT(close()));
15
    connect(ui->cancel, SIGNAL(clicked()), this, SLOT(close()));
15
    connect(ui->save, SIGNAL(clicked()), this, SLOT(save()));
16
    connect(ui->save, SIGNAL(clicked()), this, SLOT(save()));
16
    connect(ui->legNumber, SIGNAL(valueChanged(int)), this, SLOT(legNumberChanged(int)));
17
    connect(ui->legNumber, SIGNAL(valueChanged(int)), this, SLOT(legNumberChanged(int)));
-
 
18
    connect(ui->legStart, SIGNAL(clicked()), this, SLOT(updateFileName()));
-
 
19
    connect(ui->legEnd, SIGNAL(clicked()), this, SLOT(updateFileName()));
17
 
20
 
18
    ui->legNumber->setMaximum(config.num_legs);
21
    ui->legNumber->setMaximum(config.num_legs);
19
    legNumberChanged(0);
22
    legNumberChanged(0);
20
}
23
}
21
 
24
 
Line 25... Line 28...
25
}
28
}
26
 
29
 
27
void QmDownloadLegTimes::legNumberChanged(int leg)
30
void QmDownloadLegTimes::legNumberChanged(int leg)
28
{
31
{
29
    ui->save->setEnabled(leg != 0);
32
    ui->save->setEnabled(leg != 0);
-
 
33
    updateFileName();
30
}
34
}
31
 
35
 
32
void QmDownloadLegTimes::save(void)
36
void QmDownloadLegTimes::save(void)
33
{
37
{
34
    bool manstart = !ui->legEnd->isChecked();
38
    bool manstart = !ui->legEnd->isChecked();
35
    int leg = ui->legNumber->value();
39
    int leg = ui->legNumber->value();
36
 
40
 
37
        /*
41
        /*
38
         * Locate the required data file and prepare for processing
42
         * Locate the required data file and prepare for processing
39
         */
43
         */
40
    QString filename;
44
    QString filename = ui->fileName->text();
41
    filename = QString("%1leg%2.txt").arg(manstart ? "S" : "").arg(QString::number(leg));
-
 
42
    MainWindow::showMessage(QString("Using: ") + filename);
45
    MainWindow::showMessage(QString("Using: ") + filename);
43
    filename.prepend(filepath);
46
    filename.prepend(filepath);
44
    qDebug("Using:%s", qPrintable(filename));
47
    qDebug("Using:%s", qPrintable(filename));
45
 
48
 
-
 
49
    filename = QFileDialog::getSaveFileName(this, tr("Store Leg Data to File"),
-
 
50
                                                     filename,
-
 
51
                                                     tr("Data (*.txt);;All (*.*)"),
-
 
52
                                                     0
-
 
53
                                                     );
-
 
54
    if ( filename.isEmpty() )
-
 
55
    {
-
 
56
        return;
-
 
57
    }
-
 
58
 
-
 
59
 
46
    QFile file;
60
    QFile file;
47
    file.setFileName(filename);
61
    file.setFileName(filename);
48
    if ( ! file.open(QIODevice::WriteOnly | QIODevice::Truncate | QIODevice::Text) )
62
    if ( ! file.open(QIODevice::WriteOnly | QIODevice::Truncate | QIODevice::Text) )
49
    {
63
    {
50
        MainWindow::showMessage("Cannot open external leg file");
64
        MainWindow::showMessage("Cannot open external leg file");
Line 71... Line 85...
71
                out << " ";
85
                out << " ";
72
                out <<  time_a( ptime );
86
                out <<  time_a( ptime );
73
                out << endl;
87
                out << endl;
74
            }
88
            }
75
        }
89
        }
-
 
90
    }
-
 
91
}
76
 
92
 
-
 
93
void QmDownloadLegTimes::updateFileName(void)
-
 
94
{
-
 
95
    bool manstart = !ui->legEnd->isChecked();
-
 
96
    int leg = ui->legNumber->value();
-
 
97
    if (leg)
-
 
98
    {
-
 
99
        ui->fileName->setText(QString("%1leg%2.txt").arg(manstart ? "S" : "").arg(QString::number(leg)) );
-
 
100
    }
-
 
101
    else
-
 
102
    {
-
 
103
        ui->fileName->clear();
77
    }
104
    }
78
}
105
}
79
 
106