Subversion Repositories svn1

Rev

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

Rev 147 Rev 148
Line 30... Line 30...
30
 
30
 
31
 
31
 
32
    // Process Each line of the file
32
    // Process Each line of the file
33
    QTextStream in(&file);
33
    QTextStream in(&file);
34
    int ii = 0;
34
    int ii = 0;
-
 
35
    int bad_cat = 0;
35
    QRegExp csv_split("\"?,\"?");
36
    QRegExp csv_split("\"?,\"?");
36
    while (!in.atEnd())
37
    while (!in.atEnd())
37
    {
38
    {
38
         QString line = in.readLine();
39
         QString line = in.readLine();
39
         line = line.trimmed();             // Remove leading and training White Space
40
         line = line.trimmed();             // Remove leading and training White Space
Line 56... Line 57...
56
         // Extract Team Name
57
         // Extract Team Name
57
         ui->tableWidget->setItem(ii, 1, new QTableWidgetItem( parts.value(0) ) );
58
         ui->tableWidget->setItem(ii, 1, new QTableWidgetItem( parts.value(0) ) );
58
         parts.removeFirst();
59
         parts.removeFirst();
59
 
60
 
60
         // Extract Team Cat
61
         // Extract Team Cat
61
         ui->tableWidget->setItem(ii, 2, new QTableWidgetItem( parts.value(0)));
62
         QTableWidgetItem *item = new QTableWidgetItem( parts.value(0)) ;
-
 
63
         ui->tableWidget->setItem(ii, 2, item );
-
 
64
 
-
 
65
        if (lookup_class(qPrintable(parts.value(0)), &config ) <= 0 )
-
 
66
        {
-
 
67
            item->setBackgroundColor(QColor(200,0,0,50));
-
 
68
            bad_cat++;
-
 
69
        }
62
         parts.removeFirst();
70
        parts.removeFirst();
63
 
71
 
64
         int yy = 0;
72
         int yy = 0;
65
         while ( parts.count() > 0)
73
         while ( parts.count() > 0)
66
         {
74
         {
67
             // Name of competitor
75
             // Name of competitor
Line 78... Line 86...
78
             yy += 2;
86
             yy += 2;
79
         }
87
         }
80
         ii++;
88
         ii++;
81
     }
89
     }
82
 
90
 
-
 
91
    // Report errors
-
 
92
    if (bad_cat)
-
 
93
    {
-
 
94
        MainWindow::showMessage("Invalid Categories in data");
-
 
95
    }
-
 
96
 
83
    // Connect up buttons
97
    // Connect up buttons
84
 
98
 
85
    connect (ui->buttonBox, SIGNAL(accepted()), this, SLOT(loadData()));
99
    connect (ui->load, SIGNAL(clicked()), this, SLOT(loadData()));
86
}
100
}
87
 
101
 
88
QmDialogLoadExternalTeams::~QmDialogLoadExternalTeams()
102
QmDialogLoadExternalTeams::~QmDialogLoadExternalTeams()
89
{
103
{
90
    delete ui;
104
    delete ui;
Line 92... Line 106...
92
 
106
 
93
void QmDialogLoadExternalTeams::loadData(void)
107
void QmDialogLoadExternalTeams::loadData(void)
94
{
108
{
95
    qDebug ("LoadData");
109
    qDebug ("LoadData");
96
    team_type team_buf;
110
    team_type team_buf;
-
 
111
    int bad_cat = 0;
97
    for ( int ii = 0; ii < ui->tableWidget->rowCount(); ii++)
112
    for ( int ii = 0; ii < ui->tableWidget->rowCount(); ii++)
98
    {
113
    {
-
 
114
        if ( ui->tableWidget->isRowHidden(ii))
-
 
115
        {
-
 
116
            continue;
-
 
117
        }
-
 
118
        bool bad = false;
99
        QTableWidgetItem *item;
119
        QTableWidgetItem *item;
100
        item = ui->tableWidget->item(ii,0);
120
        item = ui->tableWidget->item(ii,0);
101
        if (item)
121
        if (item)
102
        {
122
        {
103
            int team = item->data(Qt::EditRole).toInt();
123
            int team = item->data(Qt::EditRole).toInt();
Line 119... Line 139...
119
                    int category = lookup_class(qPrintable(item->data(Qt::EditRole).toString()), &config );
139
                    int category = lookup_class(qPrintable(item->data(Qt::EditRole).toString()), &config );
120
                    if (category)
140
                    if (category)
121
                    {
141
                    {
122
                        team_buf.teamclass = category;
142
                        team_buf.teamclass = category;
123
                    }
143
                    }
-
 
144
                    else
-
 
145
                    {
-
 
146
                        bad_cat++;
-
 
147
                        bad = true;
-
 
148
                    }
124
                }
149
                }
125
 
150
 
126
                // Team member names and ages
151
                // Team member names and ages
127
                int member = 0;
152
                int member = 0;
128
                for (int yy = 3; yy < ui->tableWidget->columnCount(); yy+= 2, member++)
153
                for (int yy = 3; yy < ui->tableWidget->columnCount(); yy+= 2, member++)
Line 147... Line 172...
147
                    }
172
                    }
148
                }
173
                }
149
 
174
 
150
                put_team_record( team, &team_buf );
175
                put_team_record( team, &team_buf );
151
            }
176
            }
-
 
177
            else
-
 
178
            {
-
 
179
                bad = true;
-
 
180
            }
-
 
181
        }
-
 
182
        else
-
 
183
        {
-
 
184
            bad = true;
152
        }
185
        }
-
 
186
        if (!bad)
-
 
187
        {
-
 
188
            ui->tableWidget->hideRow(ii);
-
 
189
        }
-
 
190
    }
-
 
191
 
-
 
192
    // Report errors
-
 
193
    if (bad_cat)
-
 
194
    {
-
 
195
        MainWindow::showMessage("Invalid Categories in data");
153
    }
196
    }
154
}
197
}