Subversion Repositories svn1-original

Rev

Rev 107 | Rev 178 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 107 Rev 108
Line 1... Line 1...
1
#include "qmconfwinners.h"
1
#include "qmconfwinners.h"
2
#include "ui_qmconfwinners.h"
2
#include "ui_qmconfwinners.h"
3
 
3
 
-
 
4
#include    "consts.h"
-
 
5
#include    "structs.h"
-
 
6
#include    "proto.h"
-
 
7
 
-
 
8
#include "QTableWidgetItem"
-
 
9
 
4
QmConfWinners::QmConfWinners(QWidget *parent) :
10
QmConfWinners::QmConfWinners(QWidget *parent) :
5
    QWidget(parent),
11
    QWidget(parent),
6
    ui(new Ui::QmConfWinners)
12
    ui(new Ui::QmConfWinners)
7
{
13
{
8
    ui->setupUi(this);
14
    ui->setupUi(this);
-
 
15
    connect(ui->buttonBox, SIGNAL(accepted()), this, SLOT(save()) );
-
 
16
    connect(ui->buttonBox, SIGNAL(rejected()), this, SLOT(cancel()) );
-
 
17
 
-
 
18
    ui->tableWidget->setRowCount(MAX_FAME);
-
 
19
    populate();
9
}
20
}
10
 
21
 
11
QmConfWinners::~QmConfWinners()
22
QmConfWinners::~QmConfWinners()
12
{
23
{
13
    delete ui;
24
    delete ui;
14
}
25
}
15
 
26
 
-
 
27
void QmConfWinners::populate(void)
-
 
28
{
-
 
29
    for ( int ii = 0; ii < MAX_FAME; ii++)
-
 
30
    {
-
 
31
        ui->tableWidget->setItem(ii, 0, new QTableWidgetItem(config.hall_fame[ii] ));
-
 
32
    }
-
 
33
}
-
 
34
 
-
 
35
void QmConfWinners::save(void)
-
 
36
{
-
 
37
    int error = 0;
-
 
38
 
-
 
39
    /*
-
 
40
    **    Copy original data
-
 
41
    */
-
 
42
    MARA_CFG    newcfg = config;
-
 
43
 
-
 
44
    /*
-
 
45
    **  Extract the data from the Widgets
-
 
46
    */
-
 
47
    for ( int ii = 0; ii < MAX_FAME; ii++)
-
 
48
    {
-
 
49
        QTableWidgetItem *item = ui->tableWidget->item ( ii, 0 );
-
 
50
        if ( item )
-
 
51
        {
-
 
52
            strncpy(newcfg.hall_fame[ii], qPrintable(item->text()), sizeof(newcfg.hall_fame[ii])-1);
-
 
53
        }
-
 
54
    }
-
 
55
 
-
 
56
    newcfg.num_fame = 0;
-
 
57
    for( int i = 0; i < MAX_FAME; i++ )
-
 
58
        if( newcfg.hall_fame[i][0] )
-
 
59
            newcfg.num_fame++;
-
 
60
 
-
 
61
    for( int i = newcfg.num_fame; i < MAX_FAME; i++ )
-
 
62
        if( newcfg.hall_fame[i][0] )
-
 
63
        {
-
 
64
            printf( "Configuration error: Missing Fame name. Gaps not allowed\n" );
-
 
65
            error++;
-
 
66
            break;
-
 
67
        }
-
 
68
    
-
 
69
    if ( error == 0 )
-
 
70
    {
-
 
71
        config = newcfg;
-
 
72
        wt_config();
-
 
73
    }
-
 
74
}
-
 
75
 
-
 
76
void QmConfWinners::cancel(void)
-
 
77
{
-
 
78
    populate();
-
 
79
}
16
void QmConfWinners::changeEvent(QEvent *e)
80
void QmConfWinners::changeEvent(QEvent *e)
17
{
81
{
18
    QWidget::changeEvent(e);
82
    QWidget::changeEvent(e);
19
    switch (e->type()) {
83
    switch (e->type()) {
20
    case QEvent::LanguageChange:
84
    case QEvent::LanguageChange: