192 |
191 |
193 void EditProduct::setStage() |
192 void EditProduct::setStage() |
194 { |
193 { |
195 int stage = product->stage; |
194 int stage = product->stage; |
196 bool locked = product->locked; |
195 bool locked = product->locked; |
|
196 |
|
197 /* |
|
198 * See if we need to set a new stage. |
|
199 */ |
|
200 if ((stage == PROD_STAGE_PLAN) && (product->est_og > 1.005) && (product->est_color > 3) && (product->est_ibu > 3)) |
|
201 stage = 1; |
|
202 |
|
203 if (product->stage != stage) { |
|
204 qDebug() << "setStage() change state:" << prod_stages[product->stage] << "to:" << prod_stages[stage]; |
|
205 product->stage = stage; |
|
206 is_changed(); |
|
207 } else { |
|
208 qDebug() << "setStage() stage:" << prod_stages[stage]; |
|
209 } |
197 |
210 |
198 ui->stageEdit->setText(prod_stages[stage]); |
211 ui->stageEdit->setText(prod_stages[stage]); |
199 |
212 |
200 /* Tab 1, generic */ |
213 /* Tab 1, generic */ |
201 ui->typeEdit->setDisabled(stage > PROD_STAGE_WAIT); |
214 ui->typeEdit->setDisabled(stage > PROD_STAGE_WAIT); |
213 ui->boil_timeEdit->setButtonSymbols((stage > PROD_STAGE_WAIT) ? QAbstractSpinBox::NoButtons : QAbstractSpinBox::UpDownArrows); |
226 ui->boil_timeEdit->setButtonSymbols((stage > PROD_STAGE_WAIT) ? QAbstractSpinBox::NoButtons : QAbstractSpinBox::UpDownArrows); |
214 ui->efficiencyEdit->setReadOnly(stage > PROD_STAGE_WAIT); |
227 ui->efficiencyEdit->setReadOnly(stage > PROD_STAGE_WAIT); |
215 ui->efficiencyEdit->setButtonSymbols((stage > PROD_STAGE_WAIT) ? QAbstractSpinBox::NoButtons : QAbstractSpinBox::UpDownArrows); |
228 ui->efficiencyEdit->setButtonSymbols((stage > PROD_STAGE_WAIT) ? QAbstractSpinBox::NoButtons : QAbstractSpinBox::UpDownArrows); |
216 ui->est_ogEdit->setReadOnly(stage > PROD_STAGE_WAIT); |
229 ui->est_ogEdit->setReadOnly(stage > PROD_STAGE_WAIT); |
217 ui->est_ogEdit->setButtonSymbols((stage > PROD_STAGE_WAIT) ? QAbstractSpinBox::NoButtons : QAbstractSpinBox::UpDownArrows); |
230 ui->est_ogEdit->setButtonSymbols((stage > PROD_STAGE_WAIT) ? QAbstractSpinBox::NoButtons : QAbstractSpinBox::UpDownArrows); |
218 |
231 // Block locked if stage <= PROD_STAGE_TASTE |
219 /* Tab 2, fermentables */ |
232 |
|
233 /* Tab 2, equipment */ |
|
234 ui->tabWidget->setTabEnabled(1, stage < PROD_STAGE_BREW); |
|
235 |
|
236 /* Tab 3, fermentables */ |
220 ui->est_og2Edit->setReadOnly(stage > PROD_STAGE_WAIT); |
237 ui->est_og2Edit->setReadOnly(stage > PROD_STAGE_WAIT); |
221 ui->est_og2Edit->setButtonSymbols((stage > PROD_STAGE_WAIT) ? QAbstractSpinBox::NoButtons : QAbstractSpinBox::UpDownArrows); |
238 ui->est_og2Edit->setButtonSymbols((stage > PROD_STAGE_WAIT) ? QAbstractSpinBox::NoButtons : QAbstractSpinBox::UpDownArrows); |
222 ui->addFermentable->setEnabled(stage <= PROD_STAGE_PACKAGE); |
239 ui->addFermentable->setEnabled(stage <= PROD_STAGE_PACKAGE); |
223 |
240 |
224 /* Tab 3, hops */ |
241 /* Tab 4, hops */ |
225 ui->addHop->setEnabled(stage <= PROD_STAGE_PACKAGE); |
242 ui->addHop->setEnabled(stage <= PROD_STAGE_PACKAGE); |
226 |
243 |
227 /* Tab 4, miscs */ |
244 /* Tab 5, miscs */ |
228 ui->addMisc->setEnabled(stage <= PROD_STAGE_PACKAGE); |
245 ui->addMisc->setEnabled(stage <= PROD_STAGE_PACKAGE); |
229 |
246 |
230 /* Tab 5, yeasts */ |
247 /* Tab 6, yeasts */ |
231 ui->addYeast->setEnabled(stage <= PROD_STAGE_PACKAGE); |
248 ui->addYeast->setEnabled(stage <= PROD_STAGE_PACKAGE); |
232 |
249 |
233 /* Tab 6, mash */ |
250 /* Tab 7, mash */ |
234 ui->addMash->setEnabled(stage <= PROD_STAGE_BREW); |
251 ui->addMash->setEnabled(stage <= PROD_STAGE_BREW); |
235 ui->mash_nameEdit->setReadOnly(stage > PROD_STAGE_BREW); |
252 ui->mash_nameEdit->setReadOnly(stage > PROD_STAGE_BREW); |
236 ui->mash_pickEdit->setDisabled(stage > PROD_STAGE_BREW); |
253 ui->mash_pickEdit->setDisabled(stage > PROD_STAGE_BREW); |
237 |
254 |
238 /* Tab 7, water */ |
255 /* Tab 8, water */ |
239 ui->sp_sourceEdit->setDisabled(stage > PROD_STAGE_BREW); |
256 ui->sp_sourceEdit->setDisabled(stage > PROD_STAGE_BREW); |
240 ui->wt_sourceEdit->setDisabled(stage > PROD_STAGE_BREW); |
257 ui->wt_sourceEdit->setDisabled(stage > PROD_STAGE_BREW); |
241 ui->w1_nameEdit->setDisabled(stage > PROD_STAGE_BREW); |
258 ui->w1_nameEdit->setDisabled(stage > PROD_STAGE_BREW); |
242 ui->w2_nameEdit->setDisabled(stage > PROD_STAGE_BREW); |
259 ui->w2_nameEdit->setDisabled(stage > PROD_STAGE_BREW); |
243 ui->mw_acidPick->setDisabled(stage > PROD_STAGE_BREW); |
260 ui->mw_acidPick->setDisabled(stage > PROD_STAGE_BREW); |
274 ui->mw_phEdit->setButtonSymbols(product->calc_acid ? QAbstractSpinBox::UpDownArrows : QAbstractSpinBox::NoButtons); |
291 ui->mw_phEdit->setButtonSymbols(product->calc_acid ? QAbstractSpinBox::UpDownArrows : QAbstractSpinBox::NoButtons); |
275 ui->mw_acidvolEdit->setReadOnly(product->calc_acid); |
292 ui->mw_acidvolEdit->setReadOnly(product->calc_acid); |
276 ui->mw_acidvolEdit->setButtonSymbols(product->calc_acid ? QAbstractSpinBox::NoButtons : QAbstractSpinBox::UpDownArrows); |
293 ui->mw_acidvolEdit->setButtonSymbols(product->calc_acid ? QAbstractSpinBox::NoButtons : QAbstractSpinBox::UpDownArrows); |
277 } |
294 } |
278 ui->mw_autoEdit->setDisabled(stage > PROD_STAGE_BREW); |
295 ui->mw_autoEdit->setDisabled(stage > PROD_STAGE_BREW); |
279 } |
296 |
280 |
297 /* Tab 9, brewday */ |
281 |
298 ui->tabWidget->setTabEnabled(8, stage > PROD_STAGE_PLAN); |
|
299 |
|
300 /* Tab 10, fermentation */ |
|
301 ui->tabWidget->setTabEnabled(9, stage > PROD_STAGE_PLAN); |
|
302 |
|
303 |
|
304 /* Tab 11, packaging */ |
|
305 ui->tabWidget->setTabEnabled(10, stage > PROD_STAGE_PLAN); |
|
306 |
|
307 |
|
308 /* Tab 12, tasting */ |
|
309 ui->tabWidget->setTabEnabled(11, stage > PROD_STAGE_PLAN); |
|
310 |
|
311 } |
|
312 |
|
313 |