src/EditProduct.h

changeset 175
f1ed3a2a94e9
child 176
69a033e099a2
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/EditProduct.h	Thu Apr 28 22:49:13 2022 +0200
@@ -0,0 +1,187 @@
+#ifndef _EDITPRODUCT_H
+#define _EDITPRODUCT_H
+
+#include <QDialog>
+#include <QStringList>
+#include <QJsonDocument>
+#include <QJsonObject>
+#include <QDoubleSpinBox>
+#include <QCheckBox>
+#include <QComboBox>
+#include <QLineEdit>
+#include <QDialogButtonBox>
+#include <QList>
+#include <QLabel>
+
+#include "global.h"
+
+namespace Ui {
+class EditProduct;
+}
+
+class EditProduct : public QDialog
+{
+    Q_OBJECT
+
+signals:
+    void entry_changed();
+
+public:
+    explicit EditProduct(int id, QWidget *parent = 0);
+    ~EditProduct();
+
+private slots:
+    void on_saveButton_clicked();
+    void on_quitButton_clicked();
+    void on_deleteButton_clicked();
+    void on_exportButton_clicked();
+    void on_printButton_clicked();
+    void is_changed();
+    void name_changed(QString);
+    void notes_changed();
+    void style_changed(int val);
+    void colormethod_changed(int val);
+    void ibumethod_changed(int val);
+    void est_og_changed(double val);
+    void efficiency_changed(double val);
+    void boil_time_changed(int val);
+    void batch_size_changed(double val);
+    void brew_type_changed(int val);
+    void locked_changed(bool val);
+    void refreshFermentables();
+    void refreshHops();
+    void refreshMiscs();
+    void refreshYeasts();
+    void refreshMashs();
+    void refreshWaters();
+    void refreshAll();
+    void ferment_amount_changed(double val);
+    void ferment_pct_changed(double val);
+    void ferment_to100_changed(bool val);
+    void ferment_select_changed(int val);
+    void ferment_instock_changed(bool val);
+    void ferment_added_changed(int val);
+    void hop_amount_changed(double val);
+    void hop_time_changed(int val);
+    void hop_select_changed(int val);
+    void hop_instock_changed(bool val);
+    void hop_useat_changed(int val);
+    void misc_amount_changed(double val);
+    void misc_time_changed(int val);
+    void misc_select_changed(int val);
+    void misc_instock_changed(bool val);
+    void misc_useat_changed(int val);
+    void yeast_amount_changed(double val);
+    void yeast_select_changed(int val);
+    void yeast_instock_changed(bool val);
+    void yeast_useat_changed(int val);
+    void addFermentRow_clicked();
+    void deleteFermentRow_clicked();
+    void editFermentRow_clicked();
+    void addHopRow_clicked();
+    void deleteHopRow_clicked();
+    void editHopRow_clicked();
+    void addMiscRow_clicked();
+    void deleteMiscRow_clicked();
+    void editMiscRow_clicked();
+    void addYeastRow_clicked();
+    void deleteYeastRow_clicked();
+    void editYeastRow_clicked();
+    void addMashRow_clicked();
+    void deleteMashRow_clicked();
+    void editMashRow_clicked();
+    void upMashRow_clicked();
+    void downMashRow_clicked();
+
+    void w1_name_changed(int val);
+    void w2_name_changed(int val);
+    void w2_volume_changed(double val);
+    void wb_cacl2_changed(double val);
+    void wb_caso4_changed(double val);
+    void wb_mgso4_changed(double val);
+    void wb_nacl_changed(double val);
+    void wb_mgcl2_changed(double val);
+    void wb_nahco3_changed(double val);
+    void wb_caco3_changed(double val);
+    void mw_calc_acid_clicked();
+    void wt_target_changed(int val);
+    void mw_ph_changed(double val);
+    void mw_acid_changed(double val);
+    void mw_type_changed(int val);
+    void sp_source_changed(int val);
+    void sp_type_changed(int val);
+    void sp_ph_changed(double val);
+    void step_name_changed(QString val);
+    void step_type_changed(int val);
+    void step_temp_changed(double val);
+    void end_temp_changed(double val);
+    void step_time_changed(double val);
+    void ramp_time_changed(double val);
+    void infuse_changed(double val);
+    void mash_select_changed(int val);
+    void mash_name_changed(QString);
+
+    /* Modified progress bars */
+    void ferment_perc_mash_valueChanged(int value);
+    void ferment_perc_sugars_valueChanged(int value);
+    void ferment_perc_cara_valueChanged(int value);
+    void ferment_lintner_valueChanged(int value);
+    void hop_Flavour_valueChanged(int value);
+    void hop_Aroma_valueChanged(int value);
+
+private:
+    Ui::EditProduct *ui;
+    QString bar_red = "QProgressBar::chunk {background: #FF0000;}";
+    QString bar_orange = "QProgressBar::chunk {background: #EB7331;}";
+    QString bar_green = "QProgressBar::chunk {background: #008C00;}";
+    QString bar_20 = "QProgressBar::chunk {background: #004D00;}";
+    QString bar_40 = "QProgressBar::chunk {background: #008C00;}";
+    QString bar_60 = "QProgressBar::chunk {background: #00BF00;}";
+    QString bar_80 = "QProgressBar::chunk {background: #00FF00;}";
+    QString bar_100 = "QProgressBar::chunk {background: #80FF80;}";
+    int recno;
+    bool textIsChanged = false;
+    /*
+     * Variables for popup ingredients editing.
+     */
+    QComboBox *fselectEdit, *faddedEdit, *hselectEdit,*haddedEdit, *useatEdit, *mselectEdit, *yselectEdit;
+    QLineEdit *fnameEdit, *fsupplierEdit, *hnameEdit, *horiginEdit, *mnameEdit, *ynameEdit, *ylaboratoryEdit, *yproduct_idEdit, *stepnameEdit;
+    QDoubleSpinBox *famountEdit, *pctEdit, *fmaxEdit, *hamountEdit, *ibuEdit, *mamountEdit, *yamountEdit;
+    QDoubleSpinBox *steptempEdit, *endtempEdit, *steptimeEdit, *ramptimeEdit, *stepivolEdit, *stepitmpEdit;
+    QSpinBox *htimeEdit, *mtimeEdit;
+    QCheckBox *to100Edit, *finstockEdit, *hinstockEdit, *minstockEdit, *yinstockEdit;
+    QLabel *htimeLabel, *mtimeLabel, *mamountLabel, *yamountLabel, *ivolLabel, *itmpLabel;
+
+    void to100Fermentables(int row);
+    static bool ferment_sort_test(const Fermentables &D1, const Fermentables &D2);
+    static bool hop_sort_test(const Hops &D1, const Hops &D2);
+    static bool misc_sort_test(const Miscs &D1, const Miscs &D2);
+    static bool yeast_sort_test(const Yeasts &D1, const Yeasts &D2);
+    void WindowTitle();
+    void setLocked(bool val);
+    void brewing_salt_sub(QString salt, double val);
+    void set_brewing_salt(QString salt, double val);
+    void calcFermentables();
+    void calcFermentablesFromOG(double og);
+    void calcIBUs();
+    void adjustHops(double factor);
+    void adjustMiscs(double factor);
+    double ZAlkalinity(double pHZ);
+    double ZRA(double pHZ);
+    double BufferCapacity(Fermentables F);
+    double AcidRequired(double ZpH, Fermentables F);
+    double ProtonDeficit(double pHZ);
+    double MashpH();
+    void calcWater();
+    void calcSparge();
+    double GetBUGU();
+    double GetOptSO4Clratio();
+    void calcYeast();
+    void adjustYeasts(double factor);
+    double infusionVol(double step_infused, double step_mashkg, double infuse_temp, double step_temp, double last_temp);
+    double decoctionVol(double step_volume, double step_temp, double prev_temp);
+    void calcMash();
+    void adjustWaters(double factor);
+};
+
+#endif

mercurial