Subversion Repositories svn1-original

Rev

Rev 255 | Rev 324 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed

#include "qmdialoglegstarttimes.h"
#include "ui_qmdialoglegstarttimes.h"
#include "QPushButton"
#include    "consts.h"
#include    "structs.h"
#include    "proto.h"

QmDialogLegStartTimes::QmDialogLegStartTimes(const QString &title, QWidget *parent) :
    QDialog(parent),
    ui(new Ui::QmDialogLegStartTimes)
{
    ui->setupUi( this );
    this->setWindowTitle(title);
    enableDone(0);
    ui->legNumber->setMaximum(config.num_legs);
    ui->deltaTimeEdit->setEnabled(false);
    ui->deltaTimeSecs->setEnabled(false);
    ui->timeEdit->setEnabled(false);

    connect (ui->legNumber, SIGNAL(valueChanged(int)), this, SLOT(enableDone(int)));
    connect (ui->deltaTimeEdit, SIGNAL(dateTimeChanged(QDateTime)), this, SLOT(updateSecs()) );
}

void QmDialogLegStartTimes::enableDone(int val)
{
    QPushButton *okb = ui->buttonBox->button ( QDialogButtonBox::Ok );
    if ( okb )
    {
        okb->setEnabled( val != 0 );
        if ( val )
        {
            ui->legName->setText(config.leg_name[val - 1] );
        }
        else
        {
            ui->legName->clear();
        }
    }
    else
    {
        qDebug ("Can't find OK button");
    }
}

void QmDialogLegStartTimes::updateSecs(void)
{
    time_t t = getDeltaTime();
    ui->deltaTimeSecs->setText(QString::number(t) + " Secs");
}

void QmDialogLegStartTimes::setTimeLabel(const QString &label)
{
    ui->label_time->setText(label);
    ui->timeEdit->setEnabled(true);
}

void QmDialogLegStartTimes::setDeltaTimeLabel(const QString &label)
{
    ui->label_delta_time->setText(label);
    ui->deltaTimeEdit->setEnabled(true);
}

int QmDialogLegStartTimes::getLeg ( void )
{
    return ui->legNumber->value();
}

time_t QmDialogLegStartTimes::getTime ( void )
{
    return QTime(0,0,0).secsTo(ui->timeEdit->time());
}

time_t QmDialogLegStartTimes::getDeltaTime ( void )
{
    return QTime(0,0,0).secsTo(ui->deltaTimeEdit->time());
}

bool QmDialogLegStartTimes::getReport(void)
{
    return ui->genLegStartReport->checkState();
}

bool QmDialogLegStartTimes::getClear(void)
{
    return ui->invalidateTimes->checkState();
}

void QmDialogLegStartTimes::setDescription(const QString &text)
{
    ui->description->setText(text);
}

QmDialogLegStartTimes::~QmDialogLegStartTimes()
{
    delete ui;
}