src/EditProduct.h

changeset 175
f1ed3a2a94e9
child 176
69a033e099a2
equal deleted inserted replaced
174:ceb8aa4ebd25 175:f1ed3a2a94e9
1 #ifndef _EDITPRODUCT_H
2 #define _EDITPRODUCT_H
3
4 #include <QDialog>
5 #include <QStringList>
6 #include <QJsonDocument>
7 #include <QJsonObject>
8 #include <QDoubleSpinBox>
9 #include <QCheckBox>
10 #include <QComboBox>
11 #include <QLineEdit>
12 #include <QDialogButtonBox>
13 #include <QList>
14 #include <QLabel>
15
16 #include "global.h"
17
18 namespace Ui {
19 class EditProduct;
20 }
21
22 class EditProduct : public QDialog
23 {
24 Q_OBJECT
25
26 signals:
27 void entry_changed();
28
29 public:
30 explicit EditProduct(int id, QWidget *parent = 0);
31 ~EditProduct();
32
33 private slots:
34 void on_saveButton_clicked();
35 void on_quitButton_clicked();
36 void on_deleteButton_clicked();
37 void on_exportButton_clicked();
38 void on_printButton_clicked();
39 void is_changed();
40 void name_changed(QString);
41 void notes_changed();
42 void style_changed(int val);
43 void colormethod_changed(int val);
44 void ibumethod_changed(int val);
45 void est_og_changed(double val);
46 void efficiency_changed(double val);
47 void boil_time_changed(int val);
48 void batch_size_changed(double val);
49 void brew_type_changed(int val);
50 void locked_changed(bool val);
51 void refreshFermentables();
52 void refreshHops();
53 void refreshMiscs();
54 void refreshYeasts();
55 void refreshMashs();
56 void refreshWaters();
57 void refreshAll();
58 void ferment_amount_changed(double val);
59 void ferment_pct_changed(double val);
60 void ferment_to100_changed(bool val);
61 void ferment_select_changed(int val);
62 void ferment_instock_changed(bool val);
63 void ferment_added_changed(int val);
64 void hop_amount_changed(double val);
65 void hop_time_changed(int val);
66 void hop_select_changed(int val);
67 void hop_instock_changed(bool val);
68 void hop_useat_changed(int val);
69 void misc_amount_changed(double val);
70 void misc_time_changed(int val);
71 void misc_select_changed(int val);
72 void misc_instock_changed(bool val);
73 void misc_useat_changed(int val);
74 void yeast_amount_changed(double val);
75 void yeast_select_changed(int val);
76 void yeast_instock_changed(bool val);
77 void yeast_useat_changed(int val);
78 void addFermentRow_clicked();
79 void deleteFermentRow_clicked();
80 void editFermentRow_clicked();
81 void addHopRow_clicked();
82 void deleteHopRow_clicked();
83 void editHopRow_clicked();
84 void addMiscRow_clicked();
85 void deleteMiscRow_clicked();
86 void editMiscRow_clicked();
87 void addYeastRow_clicked();
88 void deleteYeastRow_clicked();
89 void editYeastRow_clicked();
90 void addMashRow_clicked();
91 void deleteMashRow_clicked();
92 void editMashRow_clicked();
93 void upMashRow_clicked();
94 void downMashRow_clicked();
95
96 void w1_name_changed(int val);
97 void w2_name_changed(int val);
98 void w2_volume_changed(double val);
99 void wb_cacl2_changed(double val);
100 void wb_caso4_changed(double val);
101 void wb_mgso4_changed(double val);
102 void wb_nacl_changed(double val);
103 void wb_mgcl2_changed(double val);
104 void wb_nahco3_changed(double val);
105 void wb_caco3_changed(double val);
106 void mw_calc_acid_clicked();
107 void wt_target_changed(int val);
108 void mw_ph_changed(double val);
109 void mw_acid_changed(double val);
110 void mw_type_changed(int val);
111 void sp_source_changed(int val);
112 void sp_type_changed(int val);
113 void sp_ph_changed(double val);
114 void step_name_changed(QString val);
115 void step_type_changed(int val);
116 void step_temp_changed(double val);
117 void end_temp_changed(double val);
118 void step_time_changed(double val);
119 void ramp_time_changed(double val);
120 void infuse_changed(double val);
121 void mash_select_changed(int val);
122 void mash_name_changed(QString);
123
124 /* Modified progress bars */
125 void ferment_perc_mash_valueChanged(int value);
126 void ferment_perc_sugars_valueChanged(int value);
127 void ferment_perc_cara_valueChanged(int value);
128 void ferment_lintner_valueChanged(int value);
129 void hop_Flavour_valueChanged(int value);
130 void hop_Aroma_valueChanged(int value);
131
132 private:
133 Ui::EditProduct *ui;
134 QString bar_red = "QProgressBar::chunk {background: #FF0000;}";
135 QString bar_orange = "QProgressBar::chunk {background: #EB7331;}";
136 QString bar_green = "QProgressBar::chunk {background: #008C00;}";
137 QString bar_20 = "QProgressBar::chunk {background: #004D00;}";
138 QString bar_40 = "QProgressBar::chunk {background: #008C00;}";
139 QString bar_60 = "QProgressBar::chunk {background: #00BF00;}";
140 QString bar_80 = "QProgressBar::chunk {background: #00FF00;}";
141 QString bar_100 = "QProgressBar::chunk {background: #80FF80;}";
142 int recno;
143 bool textIsChanged = false;
144 /*
145 * Variables for popup ingredients editing.
146 */
147 QComboBox *fselectEdit, *faddedEdit, *hselectEdit,*haddedEdit, *useatEdit, *mselectEdit, *yselectEdit;
148 QLineEdit *fnameEdit, *fsupplierEdit, *hnameEdit, *horiginEdit, *mnameEdit, *ynameEdit, *ylaboratoryEdit, *yproduct_idEdit, *stepnameEdit;
149 QDoubleSpinBox *famountEdit, *pctEdit, *fmaxEdit, *hamountEdit, *ibuEdit, *mamountEdit, *yamountEdit;
150 QDoubleSpinBox *steptempEdit, *endtempEdit, *steptimeEdit, *ramptimeEdit, *stepivolEdit, *stepitmpEdit;
151 QSpinBox *htimeEdit, *mtimeEdit;
152 QCheckBox *to100Edit, *finstockEdit, *hinstockEdit, *minstockEdit, *yinstockEdit;
153 QLabel *htimeLabel, *mtimeLabel, *mamountLabel, *yamountLabel, *ivolLabel, *itmpLabel;
154
155 void to100Fermentables(int row);
156 static bool ferment_sort_test(const Fermentables &D1, const Fermentables &D2);
157 static bool hop_sort_test(const Hops &D1, const Hops &D2);
158 static bool misc_sort_test(const Miscs &D1, const Miscs &D2);
159 static bool yeast_sort_test(const Yeasts &D1, const Yeasts &D2);
160 void WindowTitle();
161 void setLocked(bool val);
162 void brewing_salt_sub(QString salt, double val);
163 void set_brewing_salt(QString salt, double val);
164 void calcFermentables();
165 void calcFermentablesFromOG(double og);
166 void calcIBUs();
167 void adjustHops(double factor);
168 void adjustMiscs(double factor);
169 double ZAlkalinity(double pHZ);
170 double ZRA(double pHZ);
171 double BufferCapacity(Fermentables F);
172 double AcidRequired(double ZpH, Fermentables F);
173 double ProtonDeficit(double pHZ);
174 double MashpH();
175 void calcWater();
176 void calcSparge();
177 double GetBUGU();
178 double GetOptSO4Clratio();
179 void calcYeast();
180 void adjustYeasts(double factor);
181 double infusionVol(double step_infused, double step_mashkg, double infuse_temp, double step_temp, double last_temp);
182 double decoctionVol(double step_volume, double step_temp, double prev_temp);
183 void calcMash();
184 void adjustWaters(double factor);
185 };
186
187 #endif

mercurial