Subversion Repositories svn1

Rev

Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
118 david 1
#include "qmlegtimes.h"
2
#include "ui_qmlegtimes.h"
3
 
119 david 4
QmLegTimes::QmLegTimes(const int legnum, const QString &name, QWidget *parent) :
118 david 5
    QWidget(parent),
6
    ui(new Ui::QmLegTimes)
7
{
8
    ui->setupUi(this);
119 david 9
    leg = legnum;
121 david 10
    inSetData = FALSE;
118 david 11
    ui->legName->setText(name);
119 david 12
 
121 david 13
    connect( ui->checkBox,  SIGNAL(stateChanged(int)),  this, SLOT(enableStartTime(int)) );
14
    connect( ui->startTime, SIGNAL(timeChanged(QTime)), this, SLOT(updateData(void)) );
15
    connect( ui->endTime,   SIGNAL(timeChanged(QTime)), this, SLOT(updateData(void)) );
118 david 16
}
17
 
119 david 18
void QmLegTimes::setData(leg_type *data)
19
{
121 david 20
    inSetData = TRUE;
21
    if (data->start < 0 )
22
    {
23
        ui->startTime->setTime(QTime(0,0,0,0));
24
    }
25
    else
26
    {
27
        ui->startTime->setTime(QTime().addSecs(data->start));
28
    }
29
 
119 david 30
    ui->startTime->setEnabled(data->manual);
121 david 31
    if ( data->end < 0 )
32
    {
33
        ui->endTime->setTime(QTime(0,0,0,0));
34
    }
35
    else
36
    {
37
        ui->endTime->setTime(QTime().addSecs(data->end));
38
    }
39
 
40
    if ( data->elapsed < 0 )
41
    {
42
        ui->elapsedTime->setText(QTime().toString("HH:mm:ss"));
43
    }
44
    else
45
    {
46
        ui->elapsedTime->setText(QTime().addSecs(data->elapsed).toString("HH:mm:ss"));
47
    }
48
    //ui->elapsedTime->setText(QTime().addSecs(data->elapsed).toString("HH:mm:ss"));
119 david 49
    ui->checkBox->setChecked(data->manual);
50
    ui->lc_place->setText(QString::number(data->lc_place));
51
    ui->le_place->setText(QString::number(data->le_place));
52
    ui->l_place->setText(QString::number(data->l_place));
53
    ui->lec_place->setText(QString::number(data->lec_place));
121 david 54
    inSetData = FALSE;
119 david 55
}
56
 
121 david 57
void QmLegTimes::getData(leg_type *data)
58
{
59
    data->manual = ui->checkBox->checkState();
60
    data->start = QTime(0,0,0).secsTo(ui->startTime->time());
61
    data->end = QTime(0,0,0).secsTo(ui->endTime->time());
62
}
63
 
64
 
119 david 65
void QmLegTimes::enableStartTime( int state )
66
{
67
    ui->startTime->setEnabled(state);
121 david 68
    updateData();
119 david 69
}
70
 
121 david 71
void QmLegTimes::updateData(void)
120 david 72
{
121 david 73
    if ( ! inSetData )
74
    {
75
        qDebug("TimeChanged");
76
        emit dataChanged();
77
    }
120 david 78
}
79
 
118 david 80
QmLegTimes::~QmLegTimes()
81
{
82
    delete ui;
83
}
84
 
85
void QmLegTimes::changeEvent(QEvent *e)
86
{
87
    QWidget::changeEvent(e);
88
    switch (e->type()) {
89
    case QEvent::LanguageChange:
90
        ui->retranslateUi(this);
91
        break;
92
    default:
93
        break;
94
    }
95
}