42 pWidget->setLayout(pLayout); |
42 pWidget->setLayout(pLayout); |
43 ui->fermentablesTable->setCellWidget(row, 10, pWidget); |
43 ui->fermentablesTable->setCellWidget(row, 10, pWidget); |
44 } else { |
44 } else { |
45 ui->fermentablesTable->removeCellWidget(row, 10); |
45 ui->fermentablesTable->removeCellWidget(row, 10); |
46 } |
46 } |
|
47 } |
|
48 |
|
49 |
|
50 bool EditProduct::block_fermentable(int stage, int added) |
|
51 { |
|
52 if (stage > PROD_STAGE_PACKAGE) |
|
53 return true; |
|
54 if (stage > PROD_STAGE_TERTIARY && added < FERMENTABLE_ADDED_BOTTLE) |
|
55 return true; |
|
56 if (stage > PROD_STAGE_PRIMARY && added < FERMENTABLE_ADDED_LAGERING) |
|
57 return true; |
|
58 if (stage > PROD_STAGE_BREW && added < FERMENTABLE_ADDED_FERMENTATION) |
|
59 return true; |
|
60 return false; |
47 } |
61 } |
48 |
62 |
49 |
63 |
50 void EditProduct::refreshFermentables() |
64 void EditProduct::refreshFermentables() |
51 { |
65 { |
105 |
119 |
106 item = new QTableWidgetItem(QString("%1 Kg").arg(product->fermentables.at(i).amount, 4, 'f', 3, '0')); |
120 item = new QTableWidgetItem(QString("%1 Kg").arg(product->fermentables.at(i).amount, 4, 'f', 3, '0')); |
107 item->setTextAlignment(Qt::AlignRight|Qt::AlignVCenter); |
121 item->setTextAlignment(Qt::AlignRight|Qt::AlignVCenter); |
108 ui->fermentablesTable->setItem(i, 7, item); |
122 ui->fermentablesTable->setItem(i, 7, item); |
109 |
123 |
110 item = new QTableWidgetItem(QString("%1 Kg").arg(product->fermentables.at(i).inventory, 4, 'f', 3, '0')); |
124 if (block_fermentable(product->stage, product->fermentables.at(i).added)) { |
111 item->setTextAlignment(Qt::AlignRight|Qt::AlignVCenter); |
125 item = new QTableWidgetItem(QString("")); |
112 if (product->fermentables.at(i).inventory < product->fermentables.at(i).amount) |
126 } else { |
113 item->setForeground(QBrush(QColor(Qt::red))); |
127 item = new QTableWidgetItem(QString("%1 Kg").arg(product->fermentables.at(i).inventory, 4, 'f', 3, '0')); |
|
128 item->setTextAlignment(Qt::AlignRight|Qt::AlignVCenter); |
|
129 if (product->fermentables.at(i).inventory < product->fermentables.at(i).amount) |
|
130 item->setForeground(QBrush(QColor(Qt::red))); |
|
131 } |
114 ui->fermentablesTable->setItem(i, 8, item); |
132 ui->fermentablesTable->setItem(i, 8, item); |
115 |
133 |
116 if (product->fermentables.at(i).added < FERMENTABLE_ADDED_BOTTLE) { |
134 if (product->fermentables.at(i).added < FERMENTABLE_ADDED_BOTTLE) { |
117 item = new QTableWidgetItem(QString("%1%").arg(product->fermentables.at(i).percentage, 2, 'f', 1, '0')); |
135 item = new QTableWidgetItem(QString("%1%").arg(product->fermentables.at(i).percentage, 2, 'f', 1, '0')); |
118 } else { |
136 } else { |
121 item->setTextAlignment(Qt::AlignRight|Qt::AlignVCenter); |
139 item->setTextAlignment(Qt::AlignRight|Qt::AlignVCenter); |
122 ui->fermentablesTable->setItem(i, 9, item); |
140 ui->fermentablesTable->setItem(i, 9, item); |
123 |
141 |
124 to100Fermentables(i); |
142 to100Fermentables(i); |
125 |
143 |
126 /* Add the Delete row button */ |
144 /* Add the Delete and Edit row buttons if allowed. */ |
127 if (product->fermentables.at(i).added < FERMENTABLE_ADDED_BOTTLE) { |
145 if (product->fermentables.at(i).added >= FERMENTABLE_ADDED_BOTTLE) { |
|
146 item = new QTableWidgetItem(""); |
|
147 item->setToolTip(tr("Edit this from the package tab")); |
|
148 ui->fermentablesTable->setItem(i, 11, item); |
|
149 item = new QTableWidgetItem(""); |
|
150 item->setToolTip(tr("Edit this from the package tab")); |
|
151 ui->fermentablesTable->setItem(i, 12, item); |
|
152 } else if (block_fermentable(product->stage, product->fermentables.at(i).added)) { |
|
153 item = new QTableWidgetItem(""); |
|
154 item->setToolTip(tr("Fermentable already used")); |
|
155 ui->fermentablesTable->setItem(i, 11, item); |
|
156 item = new QTableWidgetItem(""); |
|
157 item->setToolTip(tr("Fermentable already used")); |
|
158 ui->fermentablesTable->setItem(i, 12, item); |
|
159 } else { |
128 pWidget = new QWidget(); |
160 pWidget = new QWidget(); |
129 QPushButton* btn_dele = new QPushButton(); |
161 QPushButton* btn_dele = new QPushButton(); |
130 btn_dele->setObjectName(QString("%1").arg(i)); /* Send row with the button */ |
162 btn_dele->setObjectName(QString("%1").arg(i)); /* Send row with the button */ |
131 btn_dele->setText(tr("Delete")); |
163 btn_dele->setText(tr("Delete")); |
132 connect(btn_dele, SIGNAL(clicked()), this, SLOT(deleteFermentRow_clicked())); |
164 connect(btn_dele, SIGNAL(clicked()), this, SLOT(deleteFermentRow_clicked())); |
144 pLayout = new QHBoxLayout(pWidget); |
176 pLayout = new QHBoxLayout(pWidget); |
145 pLayout->addWidget(btn_edit); |
177 pLayout->addWidget(btn_edit); |
146 pLayout->setContentsMargins(5, 0, 5, 0); |
178 pLayout->setContentsMargins(5, 0, 5, 0); |
147 pWidget->setLayout(pLayout); |
179 pWidget->setLayout(pLayout); |
148 ui->fermentablesTable->setCellWidget(i, 12, pWidget); |
180 ui->fermentablesTable->setCellWidget(i, 12, pWidget); |
149 } else { |
|
150 item = new QTableWidgetItem(""); |
|
151 item->setToolTip(tr("Edit this from the package tab")); |
|
152 ui->fermentablesTable->setItem(i, 11, item); |
|
153 item = new QTableWidgetItem(""); |
|
154 item->setToolTip(tr("Edit this from the package tab")); |
|
155 ui->fermentablesTable->setItem(i, 12, item); |
|
156 } |
181 } |
157 } |
182 } |
158 } |
183 } |
159 |
184 |
160 |
185 |