// Populate the table widget with the products
int row = 0;
while (query.next()) {
ui->tableWidget->setCellWidget(row,3, sb);
connect(sb, SIGNAL(valueChanged(int)), signalMapper, SLOT(map()));
signalMapper->setMapping(sb, row);
ui->tableWidget->setItem(row, 0, item);
ui->tableWidget->setItem(row, 1, item2);
ui->tableWidget->setItem(row, 2, item3);
ui->tableWidget->setItem(row, 3, item4);
row++;
}
ui->tableWidget->resizeColumnsToContents();
ui->tableWidget->setAlternatingRowColors(true);
ui->tableWidget->horizontalHeader()->setStretchLastSection(true);
connect(signalMapper, SIGNAL(mapped(int)), this, SLOT(recalculate(int)));
calculateTotals();
// Populate the table widget with the products
int row = 0;
while (query.next()) {
QSpinBox *sb = new QSpinBox();
ui->tableWidget->setCellWidget(row,3, sb);
connect(sb, SIGNAL(valueChanged(int)), signalMapper, SLOT(map()));
signalMapper->setMapping(sb, row);
QTableWidgetItem *item = new QTableWidgetItem(tr("%1").arg(query.value(3).toString()));
QTableWidgetItem *item2 = new QTableWidgetItem(tr("%1").arg(itemSizes[query.value(6).toInt()]));
QTableWidgetItem *item3 = new QTableWidgetItem(tr("%1").arg(query.value(8).toInt()));
QTableWidgetItem *item4 = new QTableWidgetItem(tr("%1").arg(0));
ui->tableWidget->setItem(row, 0, item);
ui->tableWidget->setItem(row, 1, item2);
ui->tableWidget->setItem(row, 2, item3);
ui->tableWidget->setItem(row, 3, item4);
row++;
}
ui->tableWidget->resizeColumnsToContents();
ui->tableWidget->setAlternatingRowColors(true);
ui->tableWidget->horizontalHeader()->setStretchLastSection(true);
connect(signalMapper, SIGNAL(mapped(int)), this, SLOT(recalculate(int)));
calculateTotals();
To copy to clipboard, switch view to plain text mode
void PackageDialog::calculateTotals()
{
int remains = 0;
int packaged = 0;
// Find the total remaining stock which is not yet packaged
for (int i=0; i < ui->tableWidget->rowCount(); i++)
{
int itabtext = itab->text().toInt();
remains += itabtext;
qDebug() << "Remaining Value was" << itabtext << "Remaining is now" << remains;
}
ui
->remainingLineEdit
->setText
(QString::number(remains
));
// Find the total packaged stock
for (int i=0; i < ui->tableWidget->rowCount(); i++)
{
int itabtext = itab->text().toInt();
packaged += itabtext;
qDebug() << "Packaged Value was" << itabtext << "Packaged is now" << packaged;
}
ui
->packagedLineEdit
->setText
(QString::number(packaged
));
}
void PackageDialog::calculateTotals()
{
int remains = 0;
int packaged = 0;
// Find the total remaining stock which is not yet packaged
for (int i=0; i < ui->tableWidget->rowCount(); i++)
{
QTableWidgetItem *itab = ui->tableWidget->item(i,2);
int itabtext = itab->text().toInt();
remains += itabtext;
qDebug() << "Remaining Value was" << itabtext << "Remaining is now" << remains;
}
ui->remainingLineEdit->setText(QString::number(remains));
// Find the total packaged stock
for (int i=0; i < ui->tableWidget->rowCount(); i++)
{
QTableWidgetItem *itab = ui->tableWidget->item(i,3);
int itabtext = itab->text().toInt();
packaged += itabtext;
qDebug() << "Packaged Value was" << itabtext << "Packaged is now" << packaged;
}
ui->packagedLineEdit->setText(QString::number(packaged));
}
To copy to clipboard, switch view to plain text mode
Bookmarks