-
Notifications
You must be signed in to change notification settings - Fork 0
/
eraser.cpp
71 lines (59 loc) · 1.36 KB
/
eraser.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
// Copyright 2020 VMware, Inc.
// SPDX-License-Identifier: MIT
#include "eraser.h"
#include "ui_eraser.h"
#include <qdebug.h>
#include <QTableWidget>
Eraser::Eraser(QWidget *parent) :
QDialog(parent),
ui(new Ui::Eraser)
{
ui->setupUi(this);
}
Eraser::~Eraser()
{
delete ui;
}
void Eraser::setTable(QTableWidget *t)
{
table = t;
counter_to_delete = 0;
counter_deleted = 0;
int nb = table->rowCount();
for (int i=0; i<nb; i++)
{
if (table->item(i,5)->text() == "X") {
counter_to_delete++;
}
}
ui->lcdNumber_to_delete->display(counter_to_delete);
update_progressbar();
}
void Eraser::update_progressbar()
{
if (counter_to_delete == 0) {
ui->progressBar->setValue(100);
ui->pushButton_delete->setEnabled(false);
} else {
ui->progressBar->setValue(counter_deleted/counter_to_delete);
}
}
void Eraser::delete_sensor(int id)
{
qDebug() << "Delete sensor id = " << id;
counter_deleted--;
}
void Eraser::on_pushButton_delete_clicked()
{
counter_to_delete = 0;
counter_deleted = 0;
int nb = table->rowCount();
for (int i=0; i<nb; i++)
{
if (table->item(i,5)->text() == "X") {
delete_sensor(table->item(i,0)->text().toInt());
}
}
ui->lcdNumber_to_delete->display(counter_to_delete);
update_progressbar();
}