Subversion Repositories svn1-original

Rev

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

Rev 148 Rev 181
Line 36... Line 36...
36
    QWidget(parent),
36
    QWidget(parent),
37
    ui(new Ui::QmTeamDisplay)
37
    ui(new Ui::QmTeamDisplay)
38
{
38
{
39
    ui->setupUi(this);
39
    ui->setupUi(this);
40
    team = 0;
40
    team = 0;
-
 
41
    dirty = true;
-
 
42
    populating = true;
41
 
43
 
42
    /*
44
    /*
43
    ** Populate the Combo Box
45
    ** Populate the Combo Box
44
    ** Should do more often
46
    ** Should do more often
45
    */
47
    */
Line 71... Line 73...
71
    ui->legTime_layout->addWidget(lt[0]);
73
    ui->legTime_layout->addWidget(lt[0]);
72
 
74
 
73
    /*
75
    /*
74
    **  Connect up various signals
76
    **  Connect up various signals
75
    */
77
    */
76
    connect(ui->buttonBox, SIGNAL(accepted()), this, SLOT(save()) );
78
    connect(ui->pushButtonSave, SIGNAL(clicked()), this, SLOT(save()) );
77
    connect(ui->buttonBox, SIGNAL(rejected()), this, SLOT(cancel()) );
79
    connect(ui->pushButtonRestore, SIGNAL(clicked()), this, SLOT(cancel()) );
78
    connect(ui->teamNumber, SIGNAL(valueChanged(int)), this, SLOT(populate(int)) );
80
    connect(ui->teamNumber, SIGNAL(valueChanged(int)), this, SLOT(populate(int)) );
-
 
81
 
-
 
82
    connect(ui->name, SIGNAL(editingFinished()), this, SLOT(changed()));
-
 
83
    connect(ui->category , SIGNAL(currentIndexChanged(int)), this, SLOT(changed()));
-
 
84
    connect(ui->members , SIGNAL(cellChanged(int,int)), this, SLOT(changed()));
-
 
85
    connect(ui->disqualified , SIGNAL(clicked(bool)), this, SLOT(changed()));
-
 
86
    connect(ui->nonEquestrian , SIGNAL(clicked(bool)), this, SLOT(changed()));
-
 
87
    connect(ui->disabled , SIGNAL(clicked(bool)), this, SLOT(changed()));
-
 
88
 
-
 
89
    updateChanged(false);
-
 
90
    populating = false;
79
}
91
}
80
 
92
 
81
/*----------------------------------------------------------------------------
93
/*----------------------------------------------------------------------------
82
** FUNCTION           : ~qmTeamDisplay
94
** FUNCTION           : ~qmTeamDisplay
83
**
95
**
Line 110... Line 122...
110
void qmTeamDisplay::populate(int team_number)
122
void qmTeamDisplay::populate(int team_number)
111
{
123
{
112
    /*
124
    /*
113
    **  Update the spinner that describes the current team number
125
    **  Update the spinner that describes the current team number
114
    */
126
    */
-
 
127
    populating = true;
115
 
128
 
116
    ui->teamNumber->setMaximum(config.max_team);
129
    ui->teamNumber->setMaximum(config.max_team);
117
    ui->teamNumber->setValue(team_number);
130
    ui->teamNumber->setValue(team_number);
118
    team = team_number;
131
    team = team_number;
119
 
132
 
Line 201... Line 214...
201
    */
214
    */
202
    for ( int ii = 0 ; ii <= config.num_legs; ii++)
215
    for ( int ii = 0 ; ii <= config.num_legs; ii++)
203
    {
216
    {
204
        lt[ii]->setData(&team_buf.leg[ii]);
217
        lt[ii]->setData(&team_buf.leg[ii]);
205
    }
218
    }
-
 
219
 
-
 
220
    updateChanged(false);
-
 
221
    populating = false;
206
}
222
}
207
 
223
 
208
/*----------------------------------------------------------------------------
224
/*----------------------------------------------------------------------------
209
** FUNCTION           : recalculateTimes
225
** FUNCTION           : recalculateTimes
210
**
226
**
Line 227... Line 243...
227
    test_times( &team_buf, 0 );
243
    test_times( &team_buf, 0 );
228
    for ( int ii = 0 ; ii <= config.num_legs; ii++)
244
    for ( int ii = 0 ; ii <= config.num_legs; ii++)
229
    {
245
    {
230
        lt[ii]->setData(&team_buf.leg[ii]);
246
        lt[ii]->setData(&team_buf.leg[ii]);
231
    }
247
    }
-
 
248
 
-
 
249
    // Flag data as changed
-
 
250
    changed();
232
}
251
}
233
 
252
 
234
/*----------------------------------------------------------------------------
253
/*----------------------------------------------------------------------------
235
** FUNCTION           : save
254
** FUNCTION           : save
236
**
255
**
Line 303... Line 322...
303
void qmTeamDisplay::cancel(void)
322
void qmTeamDisplay::cancel(void)
304
{
323
{
305
    populate(team);
324
    populate(team);
306
}
325
}
307
 
326
 
-
 
327
void qmTeamDisplay::changed(void)
-
 
328
{
-
 
329
    if (populating)
-
 
330
        return;
-
 
331
    updateChanged(true);
-
 
332
//qDebug ("Changed");
-
 
333
}
-
 
334
 
-
 
335
void qmTeamDisplay::updateChanged(bool newDirty)
-
 
336
{
-
 
337
    if (newDirty != dirty)
-
 
338
    {
-
 
339
        dirty = newDirty;
-
 
340
        if (dirty)
-
 
341
        {
-
 
342
            ui->Changed->setVisible(true);
-
 
343
            ui->teamNumber->setEnabled(false);
-
 
344
            ui->pushButtonSave->setEnabled(true);
-
 
345
        }
-
 
346
        else
-
 
347
        {
-
 
348
            ui->Changed->setVisible(false);
-
 
349
            ui->teamNumber->setEnabled(true);
-
 
350
            ui->pushButtonSave->setEnabled(false);
-
 
351
        }
-
 
352
    }
-
 
353
}
-
 
354
 
308
/*----------------------------------------------------------------------------
355
/*----------------------------------------------------------------------------
309
** FUNCTION           : changeEvent
356
** FUNCTION           : changeEvent
310
**
357
**
311
** DESCRIPTION        :
358
** DESCRIPTION        :
312
**
359
**
Line 317... Line 364...
317
**
364
**
318
----------------------------------------------------------------------------*/
365
----------------------------------------------------------------------------*/
319
 
366
 
320
void qmTeamDisplay::changeEvent(QEvent *e)
367
void qmTeamDisplay::changeEvent(QEvent *e)
321
{
368
{
322
//qDebug("ChangeEvent: %d",e->type());
369
qDebug("qmTeamDisplay ChangeEvent: %d",e->type());
323
    QWidget::changeEvent(e);
370
    QWidget::changeEvent(e);
324
    switch (e->type()) {
371
    switch (e->type()) {
325
    case QEvent::LanguageChange:
372
    case QEvent::LanguageChange:
326
        ui->retranslateUi(this);
373
        ui->retranslateUi(this);
327
        break;
374
        break;