src/MainWindow.h

Fri, 29 Jul 2022 13:12:26 +0200

author
Michiel Broek <mbroek@mbse.eu>
date
Fri, 29 Jul 2022 13:12:26 +0200
changeset 373
b02aca4e926c
parent 323
d053ffbbf3e9
child 386
2e30c9c20d22
permissions
-rw-r--r--

First load of changes for hops. In EditHop load the dropdown buttons from the global table. Use named query fields. Added database utilisation and bu_factor fields for hop extracts. Added edit fields for these new fields. Added post boil SG, utilisation and bu_factor parameters to the toIBU function. Added hops form parameter to the hopFlavourContribution and hopAromaContribution display bars. In the hops inventory list dispay volumes instead of weight for hop extracts. Modified the TinsethIBU function to use utilisation and bu_factor parameters. Add calculations for co2 and iso hop extracts, this is work in progress. The toIBU function makes use of the preSG and postSG values to use the correct SG to caall the TinsethIBU function. This results in a bit lower IBU values mostly affecting the late additions. Added use hop at bottling for iso hop extracts like Tetra hops using the formula from BarthHaas.

3
4b95e33ee476 We have a mainscreen!
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
1 #ifndef _MAINWINDOW_H
4b95e33ee476 We have a mainscreen!
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
2 #define _MAINWINDOW_H
4b95e33ee476 We have a mainscreen!
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
3
81
562ed7d1b74d Added start of the Recipes Tree to select a recipe
Michiel Broek <mbroek@mbse.eu>
parents: 78
diff changeset
4 #include "RecipesTree.h"
6
f8474f2c5db9 We can fetch a list of suppliers and show it in the wrong window. Still a lot to learn about Qt5
Michiel Broek <mbroek@mbse.eu>
parents: 4
diff changeset
5 #include "InventorySuppliers.h"
19
c94edc758a5b Added Inventory Fermentables table.
Michiel Broek <mbroek@mbse.eu>
parents: 15
diff changeset
6 #include "InventoryFermentables.h"
24
684c6e74cc1b Added hops editor.
Michiel Broek <mbroek@mbse.eu>
parents: 19
diff changeset
7 #include "InventoryHops.h"
25
a9da2744609e Added inventory yeasts editor. Fixed resource icons location.
Michiel Broek <mbroek@mbse.eu>
parents: 24
diff changeset
8 #include "InventoryYeasts.h"
28
93a70b1502ca Added the inventory miscs table.
Michiel Broek <mbroek@mbse.eu>
parents: 25
diff changeset
9 #include "InventoryMiscs.h"
29
76846c99f827 Added inventory water editor and table. In Yeasts table make sure the fields without a tickmark are empty. Removed Utils::Round function, not reliable.
Michiel Broek <mbroek@mbse.eu>
parents: 28
diff changeset
10 #include "InventoryWaters.h"
30
0fec6a1abd13 Added inventory equipment table and editor.
Michiel Broek <mbroek@mbse.eu>
parents: 29
diff changeset
11 #include "InventoryEquipments.h"
173
8514932b61aa Added menu entry products in production
Michiel Broek <mbroek@mbse.eu>
parents: 133
diff changeset
12 #include "ProdInprod.h"
228
c859e8efa470 Added archive products on name.
Michiel Broek <mbroek@mbse.eu>
parents: 213
diff changeset
13 #include "ProdOnName.h"
231
54b5abd46958 Added archive products sorted on code.
Michiel Broek <mbroek@mbse.eu>
parents: 228
diff changeset
14 #include "ProdOnCode.h"
234
51aea8b798f0 Add product archive tree by date.
Michiel Broek <mbroek@mbse.eu>
parents: 232
diff changeset
15 #include "ProdOnDate.h"
232
6d3ba9c44f95 Added the product archives tree by styles.
Michiel Broek <mbroek@mbse.eu>
parents: 231
diff changeset
16 #include "ProdOnTree.h"
48
ddd1171ecda5 Added profile water table and editor.
Michiel Broek <mbroek@mbse.eu>
parents: 30
diff changeset
17 #include "ProfileWaters.h"
49
29cf6e350063 Added Mash profiles table and the first part of the Mash profile editor. Edit and write must be written.
Michiel Broek <mbroek@mbse.eu>
parents: 48
diff changeset
18 #include "ProfileMashs.h"
56
eb6c564192f4 Added styles tables and editor.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
19 #include "ProfileStyles.h"
57
75d11cc05ce4 Added profile fermentation tables and editor.
Michiel Broek <mbroek@mbse.eu>
parents: 56
diff changeset
20 #include "ProfileFerments.h"
310
bdaac24b86ed Added monitor nodes overview
Michiel Broek <mbroek@mbse.eu>
parents: 308
diff changeset
21 #include "MonNodes.h"
bdaac24b86ed Added monitor nodes overview
Michiel Broek <mbroek@mbse.eu>
parents: 308
diff changeset
22 #include "MonFermenters.h"
bdaac24b86ed Added monitor nodes overview
Michiel Broek <mbroek@mbse.eu>
parents: 308
diff changeset
23 #include "MonCO2meters.h"
bdaac24b86ed Added monitor nodes overview
Michiel Broek <mbroek@mbse.eu>
parents: 308
diff changeset
24 #include "MoniSpindels.h"
275
f472f9773782 Added import from xml, equipments and beerstyles.
Michiel Broek <mbroek@mbse.eu>
parents: 234
diff changeset
25 #include "ImportXML.h"
15
c58b82549713 Started adding the global setup screen.
Michiel Broek <mbroek@mbse.eu>
parents: 6
diff changeset
26 #include "Setup.h"
6
f8474f2c5db9 We can fetch a list of suppliers and show it in the wrong window. Still a lot to learn about Qt5
Michiel Broek <mbroek@mbse.eu>
parents: 4
diff changeset
27
3
4b95e33ee476 We have a mainscreen!
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
28 #include <QMainWindow>
4b95e33ee476 We have a mainscreen!
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
29 #include <QStandardItemModel>
4b95e33ee476 We have a mainscreen!
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
30 #include <QMenu>
4b95e33ee476 We have a mainscreen!
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
31 #include <QToolButton>
90
2396457a8167 Moved functions from bmsapp.cpp to MainWindow.cpp
Michiel Broek <mbroek@mbse.eu>
parents: 81
diff changeset
32 #include <QApplication>
2396457a8167 Moved functions from bmsapp.cpp to MainWindow.cpp
Michiel Broek <mbroek@mbse.eu>
parents: 81
diff changeset
33 #include <QDateTime>
2396457a8167 Moved functions from bmsapp.cpp to MainWindow.cpp
Michiel Broek <mbroek@mbse.eu>
parents: 81
diff changeset
34 #include <QDebug>
2396457a8167 Moved functions from bmsapp.cpp to MainWindow.cpp
Michiel Broek <mbroek@mbse.eu>
parents: 81
diff changeset
35 #include <QDir>
2396457a8167 Moved functions from bmsapp.cpp to MainWindow.cpp
Michiel Broek <mbroek@mbse.eu>
parents: 81
diff changeset
36 // #include <QDomDocument>
2396457a8167 Moved functions from bmsapp.cpp to MainWindow.cpp
Michiel Broek <mbroek@mbse.eu>
parents: 81
diff changeset
37 #include <QFile>
2396457a8167 Moved functions from bmsapp.cpp to MainWindow.cpp
Michiel Broek <mbroek@mbse.eu>
parents: 81
diff changeset
38 #include <QList>
2396457a8167 Moved functions from bmsapp.cpp to MainWindow.cpp
Michiel Broek <mbroek@mbse.eu>
parents: 81
diff changeset
39 #include <QMetaProperty>
2396457a8167 Moved functions from bmsapp.cpp to MainWindow.cpp
Michiel Broek <mbroek@mbse.eu>
parents: 81
diff changeset
40 #include <QObject>
2396457a8167 Moved functions from bmsapp.cpp to MainWindow.cpp
Michiel Broek <mbroek@mbse.eu>
parents: 81
diff changeset
41 #include <QSettings>
2396457a8167 Moved functions from bmsapp.cpp to MainWindow.cpp
Michiel Broek <mbroek@mbse.eu>
parents: 81
diff changeset
42 #include <QString>
2396457a8167 Moved functions from bmsapp.cpp to MainWindow.cpp
Michiel Broek <mbroek@mbse.eu>
parents: 81
diff changeset
43 #include <QTextStream>
2396457a8167 Moved functions from bmsapp.cpp to MainWindow.cpp
Michiel Broek <mbroek@mbse.eu>
parents: 81
diff changeset
44 #include <QTranslator>
2396457a8167 Moved functions from bmsapp.cpp to MainWindow.cpp
Michiel Broek <mbroek@mbse.eu>
parents: 81
diff changeset
45 #include <QtSql>
2396457a8167 Moved functions from bmsapp.cpp to MainWindow.cpp
Michiel Broek <mbroek@mbse.eu>
parents: 81
diff changeset
46 #include <QUuid>
2396457a8167 Moved functions from bmsapp.cpp to MainWindow.cpp
Michiel Broek <mbroek@mbse.eu>
parents: 81
diff changeset
47 #include <QStyle>
2396457a8167 Moved functions from bmsapp.cpp to MainWindow.cpp
Michiel Broek <mbroek@mbse.eu>
parents: 81
diff changeset
48 #include <QPlainTextEdit>
2396457a8167 Moved functions from bmsapp.cpp to MainWindow.cpp
Michiel Broek <mbroek@mbse.eu>
parents: 81
diff changeset
49 #include <QMessageBox>
2396457a8167 Moved functions from bmsapp.cpp to MainWindow.cpp
Michiel Broek <mbroek@mbse.eu>
parents: 81
diff changeset
50 #include <QLabel>
2396457a8167 Moved functions from bmsapp.cpp to MainWindow.cpp
Michiel Broek <mbroek@mbse.eu>
parents: 81
diff changeset
51 #include <QImage>
2396457a8167 Moved functions from bmsapp.cpp to MainWindow.cpp
Michiel Broek <mbroek@mbse.eu>
parents: 81
diff changeset
52 #include <QImageReader>
2396457a8167 Moved functions from bmsapp.cpp to MainWindow.cpp
Michiel Broek <mbroek@mbse.eu>
parents: 81
diff changeset
53 #include <QImageWriter>
2396457a8167 Moved functions from bmsapp.cpp to MainWindow.cpp
Michiel Broek <mbroek@mbse.eu>
parents: 81
diff changeset
54 #include <QColorSpace>
2396457a8167 Moved functions from bmsapp.cpp to MainWindow.cpp
Michiel Broek <mbroek@mbse.eu>
parents: 81
diff changeset
55 #include <QGraphicsView>
2396457a8167 Moved functions from bmsapp.cpp to MainWindow.cpp
Michiel Broek <mbroek@mbse.eu>
parents: 81
diff changeset
56 #include <QFileDialog>
2396457a8167 Moved functions from bmsapp.cpp to MainWindow.cpp
Michiel Broek <mbroek@mbse.eu>
parents: 81
diff changeset
57 #include <QXmlStreamReader>
2396457a8167 Moved functions from bmsapp.cpp to MainWindow.cpp
Michiel Broek <mbroek@mbse.eu>
parents: 81
diff changeset
58 #include <QXmlStreamWriter>
2396457a8167 Moved functions from bmsapp.cpp to MainWindow.cpp
Michiel Broek <mbroek@mbse.eu>
parents: 81
diff changeset
59 #include <QJsonArray>
2396457a8167 Moved functions from bmsapp.cpp to MainWindow.cpp
Michiel Broek <mbroek@mbse.eu>
parents: 81
diff changeset
60 #include <QJsonDocument>
2396457a8167 Moved functions from bmsapp.cpp to MainWindow.cpp
Michiel Broek <mbroek@mbse.eu>
parents: 81
diff changeset
61 #include <QJsonObject>
2396457a8167 Moved functions from bmsapp.cpp to MainWindow.cpp
Michiel Broek <mbroek@mbse.eu>
parents: 81
diff changeset
62 #include <QMap>
2396457a8167 Moved functions from bmsapp.cpp to MainWindow.cpp
Michiel Broek <mbroek@mbse.eu>
parents: 81
diff changeset
63 #include <QPrinter>
2396457a8167 Moved functions from bmsapp.cpp to MainWindow.cpp
Michiel Broek <mbroek@mbse.eu>
parents: 81
diff changeset
64 #include <QWidget>
91
409d9c7214be Added websocket connection to the bmsd server. Dropped MQTT, not needed. MySQL and webSockets is enough.
Michiel Broek <mbroek@mbse.eu>
parents: 90
diff changeset
65 #include <QWebSocket>
213
a167ee979cac Added brew_log popup window.
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
66 #include <QChart>
a167ee979cac Added brew_log popup window.
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
67 #include <QValueAxis>
a167ee979cac Added brew_log popup window.
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
68 #include <QDateTimeAxis>
a167ee979cac Added brew_log popup window.
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
69 #include <QLineSeries>
296
2f4e250cfed9 Added fermenter and iSpindel graphs.
Michiel Broek <mbroek@mbse.eu>
parents: 275
diff changeset
70 #include <QSplineSeries>
213
a167ee979cac Added brew_log popup window.
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
71 #include <QChartView>
296
2f4e250cfed9 Added fermenter and iSpindel graphs.
Michiel Broek <mbroek@mbse.eu>
parents: 275
diff changeset
72 #include <QAreaSeries>
2f4e250cfed9 Added fermenter and iSpindel graphs.
Michiel Broek <mbroek@mbse.eu>
parents: 275
diff changeset
73
90
2396457a8167 Moved functions from bmsapp.cpp to MainWindow.cpp
Michiel Broek <mbroek@mbse.eu>
parents: 81
diff changeset
74
213
a167ee979cac Added brew_log popup window.
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
75 using namespace QtCharts;
90
2396457a8167 Moved functions from bmsapp.cpp to MainWindow.cpp
Michiel Broek <mbroek@mbse.eu>
parents: 81
diff changeset
76
2396457a8167 Moved functions from bmsapp.cpp to MainWindow.cpp
Michiel Broek <mbroek@mbse.eu>
parents: 81
diff changeset
77 typedef struct IniMySQL
2396457a8167 Moved functions from bmsapp.cpp to MainWindow.cpp
Michiel Broek <mbroek@mbse.eu>
parents: 81
diff changeset
78 {
2396457a8167 Moved functions from bmsapp.cpp to MainWindow.cpp
Michiel Broek <mbroek@mbse.eu>
parents: 81
diff changeset
79 QString host; ///< MySQL host
2396457a8167 Moved functions from bmsapp.cpp to MainWindow.cpp
Michiel Broek <mbroek@mbse.eu>
parents: 81
diff changeset
80 QString port; ///< MySQL port
2396457a8167 Moved functions from bmsapp.cpp to MainWindow.cpp
Michiel Broek <mbroek@mbse.eu>
parents: 81
diff changeset
81 QString name; ///< MySQL database
2396457a8167 Moved functions from bmsapp.cpp to MainWindow.cpp
Michiel Broek <mbroek@mbse.eu>
parents: 81
diff changeset
82 QString user; ///< MySQL username
2396457a8167 Moved functions from bmsapp.cpp to MainWindow.cpp
Michiel Broek <mbroek@mbse.eu>
parents: 81
diff changeset
83 QString pass; ///< MySQL password
2396457a8167 Moved functions from bmsapp.cpp to MainWindow.cpp
Michiel Broek <mbroek@mbse.eu>
parents: 81
diff changeset
84 QString charset; ///< MySQL character encoding
2396457a8167 Moved functions from bmsapp.cpp to MainWindow.cpp
Michiel Broek <mbroek@mbse.eu>
parents: 81
diff changeset
85 } IniMySQL;
2396457a8167 Moved functions from bmsapp.cpp to MainWindow.cpp
Michiel Broek <mbroek@mbse.eu>
parents: 81
diff changeset
86
2396457a8167 Moved functions from bmsapp.cpp to MainWindow.cpp
Michiel Broek <mbroek@mbse.eu>
parents: 81
diff changeset
87 static IniMySQL dbProd;
2396457a8167 Moved functions from bmsapp.cpp to MainWindow.cpp
Michiel Broek <mbroek@mbse.eu>
parents: 81
diff changeset
88 static IniMySQL dbDev;
2396457a8167 Moved functions from bmsapp.cpp to MainWindow.cpp
Michiel Broek <mbroek@mbse.eu>
parents: 81
diff changeset
89
91
409d9c7214be Added websocket connection to the bmsd server. Dropped MQTT, not needed. MySQL and webSockets is enough.
Michiel Broek <mbroek@mbse.eu>
parents: 90
diff changeset
90
409d9c7214be Added websocket connection to the bmsd server. Dropped MQTT, not needed. MySQL and webSockets is enough.
Michiel Broek <mbroek@mbse.eu>
parents: 90
diff changeset
91 typedef struct IniWS
90
2396457a8167 Moved functions from bmsapp.cpp to MainWindow.cpp
Michiel Broek <mbroek@mbse.eu>
parents: 81
diff changeset
92 {
2396457a8167 Moved functions from bmsapp.cpp to MainWindow.cpp
Michiel Broek <mbroek@mbse.eu>
parents: 81
diff changeset
93 QString host; ///< MQTT host
2396457a8167 Moved functions from bmsapp.cpp to MainWindow.cpp
Michiel Broek <mbroek@mbse.eu>
parents: 81
diff changeset
94 QString port; ///< MQTT port
91
409d9c7214be Added websocket connection to the bmsd server. Dropped MQTT, not needed. MySQL and webSockets is enough.
Michiel Broek <mbroek@mbse.eu>
parents: 90
diff changeset
95 } IniWS;
90
2396457a8167 Moved functions from bmsapp.cpp to MainWindow.cpp
Michiel Broek <mbroek@mbse.eu>
parents: 81
diff changeset
96
91
409d9c7214be Added websocket connection to the bmsd server. Dropped MQTT, not needed. MySQL and webSockets is enough.
Michiel Broek <mbroek@mbse.eu>
parents: 90
diff changeset
97 static IniWS wsProd;
409d9c7214be Added websocket connection to the bmsd server. Dropped MQTT, not needed. MySQL and webSockets is enough.
Michiel Broek <mbroek@mbse.eu>
parents: 90
diff changeset
98 static IniWS wsDev;
125
2e79e0975e58 Start hops table display. The calculated preboil_sg value is stored global in memory. Added calculations for IBU, hop flavour and aroma.
Michiel Broek <mbroek@mbse.eu>
parents: 102
diff changeset
99
2e79e0975e58 Start hops table display. The calculated preboil_sg value is stored global in memory. Added calculations for IBU, hop flavour and aroma.
Michiel Broek <mbroek@mbse.eu>
parents: 102
diff changeset
100
3
4b95e33ee476 We have a mainscreen!
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
101 namespace Ui {
4b95e33ee476 We have a mainscreen!
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
102 class MainWindow;
4b95e33ee476 We have a mainscreen!
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
103 }
4b95e33ee476 We have a mainscreen!
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
104
4b95e33ee476 We have a mainscreen!
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
105 class MainWindow : public QMainWindow
4b95e33ee476 We have a mainscreen!
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
106 {
4
fe106c497b75 Added About dialog
Michiel Broek <mbroek@mbse.eu>
parents: 3
diff changeset
107 Q_OBJECT
3
4b95e33ee476 We have a mainscreen!
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
108
4b95e33ee476 We have a mainscreen!
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
109 public:
90
2396457a8167 Moved functions from bmsapp.cpp to MainWindow.cpp
Michiel Broek <mbroek@mbse.eu>
parents: 81
diff changeset
110 explicit MainWindow(bool useDevelopOption, bool startConfigOption, QWidget *parent = 0);
4
fe106c497b75 Added About dialog
Michiel Broek <mbroek@mbse.eu>
parents: 3
diff changeset
111 ~MainWindow();
3
4b95e33ee476 We have a mainscreen!
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
112
68
abac28effb21 Inventory Fermentables now on the mainscreen.
Michiel Broek <mbroek@mbse.eu>
parents: 65
diff changeset
113 // Keep pointers to new windows.
81
562ed7d1b74d Added start of the Recipes Tree to select a recipe
Michiel Broek <mbroek@mbse.eu>
parents: 78
diff changeset
114 RecipesTree *RecipesTreeWindow;
65
2ef981980daa Finally found out how to make these databases work on a single main window. And it's dynamic too.
Michiel Broek <mbroek@mbse.eu>
parents: 57
diff changeset
115 InventorySuppliers *InventorySuppliersWindow;
68
abac28effb21 Inventory Fermentables now on the mainscreen.
Michiel Broek <mbroek@mbse.eu>
parents: 65
diff changeset
116 InventoryFermentables *InventoryFermentablesWindow;
abac28effb21 Inventory Fermentables now on the mainscreen.
Michiel Broek <mbroek@mbse.eu>
parents: 65
diff changeset
117 InventoryHops *InventoryHopsWindow;
abac28effb21 Inventory Fermentables now on the mainscreen.
Michiel Broek <mbroek@mbse.eu>
parents: 65
diff changeset
118 InventoryYeasts *InventoryYeastsWindow;
abac28effb21 Inventory Fermentables now on the mainscreen.
Michiel Broek <mbroek@mbse.eu>
parents: 65
diff changeset
119 InventoryMiscs *InventoryMiscsWindow;
abac28effb21 Inventory Fermentables now on the mainscreen.
Michiel Broek <mbroek@mbse.eu>
parents: 65
diff changeset
120 InventoryWaters *InventoryWatersWindow;
abac28effb21 Inventory Fermentables now on the mainscreen.
Michiel Broek <mbroek@mbse.eu>
parents: 65
diff changeset
121 InventoryEquipments *InventoryEquipmentsWindow;
173
8514932b61aa Added menu entry products in production
Michiel Broek <mbroek@mbse.eu>
parents: 133
diff changeset
122 ProdInprod *ProdInprodWindow;
228
c859e8efa470 Added archive products on name.
Michiel Broek <mbroek@mbse.eu>
parents: 213
diff changeset
123 ProdOnName *ProdOnNameWindow;
231
54b5abd46958 Added archive products sorted on code.
Michiel Broek <mbroek@mbse.eu>
parents: 228
diff changeset
124 ProdOnCode *ProdOnCodeWindow;
234
51aea8b798f0 Add product archive tree by date.
Michiel Broek <mbroek@mbse.eu>
parents: 232
diff changeset
125 ProdOnDate *ProdOnDateWindow;
232
6d3ba9c44f95 Added the product archives tree by styles.
Michiel Broek <mbroek@mbse.eu>
parents: 231
diff changeset
126 ProdOnTree *ProdOnTreeWindow;
74
4ac38457a709 Profile Waters now on the mainscreen.
Michiel Broek <mbroek@mbse.eu>
parents: 68
diff changeset
127 ProfileWaters *ProfileWatersWindow;
4ac38457a709 Profile Waters now on the mainscreen.
Michiel Broek <mbroek@mbse.eu>
parents: 68
diff changeset
128 ProfileMashs *ProfileMashsWindow;
4ac38457a709 Profile Waters now on the mainscreen.
Michiel Broek <mbroek@mbse.eu>
parents: 68
diff changeset
129 ProfileStyles *ProfileStylesWindow;
4ac38457a709 Profile Waters now on the mainscreen.
Michiel Broek <mbroek@mbse.eu>
parents: 68
diff changeset
130 ProfileFerments *ProfileFermentsWindow;
310
bdaac24b86ed Added monitor nodes overview
Michiel Broek <mbroek@mbse.eu>
parents: 308
diff changeset
131 MonNodes *MonNodesWindow;
bdaac24b86ed Added monitor nodes overview
Michiel Broek <mbroek@mbse.eu>
parents: 308
diff changeset
132 MonFermenters *MonFermentersWindow;
bdaac24b86ed Added monitor nodes overview
Michiel Broek <mbroek@mbse.eu>
parents: 308
diff changeset
133 MonCO2meters *MonCO2metersWindow;
bdaac24b86ed Added monitor nodes overview
Michiel Broek <mbroek@mbse.eu>
parents: 308
diff changeset
134 MoniSpindels *MoniSpindelsWindow;
275
f472f9773782 Added import from xml, equipments and beerstyles.
Michiel Broek <mbroek@mbse.eu>
parents: 234
diff changeset
135 ImportXML *ImportXMLWindow;
74
4ac38457a709 Profile Waters now on the mainscreen.
Michiel Broek <mbroek@mbse.eu>
parents: 68
diff changeset
136 Setup *SetupWindow;
65
2ef981980daa Finally found out how to make these databases work on a single main window. And it's dynamic too.
Michiel Broek <mbroek@mbse.eu>
parents: 57
diff changeset
137
310
bdaac24b86ed Added monitor nodes overview
Michiel Broek <mbroek@mbse.eu>
parents: 308
diff changeset
138 signals:
bdaac24b86ed Added monitor nodes overview
Michiel Broek <mbroek@mbse.eu>
parents: 308
diff changeset
139 void updateNodes(QString);
bdaac24b86ed Added monitor nodes overview
Michiel Broek <mbroek@mbse.eu>
parents: 308
diff changeset
140 void updateFermenters(QString);
bdaac24b86ed Added monitor nodes overview
Michiel Broek <mbroek@mbse.eu>
parents: 308
diff changeset
141 void updateCO2meters(QString);
bdaac24b86ed Added monitor nodes overview
Michiel Broek <mbroek@mbse.eu>
parents: 308
diff changeset
142 void updateiSpindels(QString);
bdaac24b86ed Added monitor nodes overview
Michiel Broek <mbroek@mbse.eu>
parents: 308
diff changeset
143
3
4b95e33ee476 We have a mainscreen!
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
144 private slots:
275
f472f9773782 Added import from xml, equipments and beerstyles.
Michiel Broek <mbroek@mbse.eu>
parents: 234
diff changeset
145 void on_actionImport_XML_triggered();
4
fe106c497b75 Added About dialog
Michiel Broek <mbroek@mbse.eu>
parents: 3
diff changeset
146 void on_actionExit_triggered();
310
bdaac24b86ed Added monitor nodes overview
Michiel Broek <mbroek@mbse.eu>
parents: 308
diff changeset
147 void on_actionMon_Nodes_triggered();
bdaac24b86ed Added monitor nodes overview
Michiel Broek <mbroek@mbse.eu>
parents: 308
diff changeset
148 void on_actionMon_Fermenters_triggered();
bdaac24b86ed Added monitor nodes overview
Michiel Broek <mbroek@mbse.eu>
parents: 308
diff changeset
149 void on_actionMon_CO2meters_triggered();
bdaac24b86ed Added monitor nodes overview
Michiel Broek <mbroek@mbse.eu>
parents: 308
diff changeset
150 void on_actionMon_iSpindels_triggered();
173
8514932b61aa Added menu entry products in production
Michiel Broek <mbroek@mbse.eu>
parents: 133
diff changeset
151 void on_actionProd_inprod_triggered();
228
c859e8efa470 Added archive products on name.
Michiel Broek <mbroek@mbse.eu>
parents: 213
diff changeset
152 void on_actionOn_Name_triggered();
231
54b5abd46958 Added archive products sorted on code.
Michiel Broek <mbroek@mbse.eu>
parents: 228
diff changeset
153 void on_actionOn_Code_triggered();
234
51aea8b798f0 Add product archive tree by date.
Michiel Broek <mbroek@mbse.eu>
parents: 232
diff changeset
154 void on_actionOn_Date_triggered();
232
6d3ba9c44f95 Added the product archives tree by styles.
Michiel Broek <mbroek@mbse.eu>
parents: 231
diff changeset
155 void on_actionOn_Tree_triggered();
81
562ed7d1b74d Added start of the Recipes Tree to select a recipe
Michiel Broek <mbroek@mbse.eu>
parents: 78
diff changeset
156 void on_actionRecipes_triggered();
6
f8474f2c5db9 We can fetch a list of suppliers and show it in the wrong window. Still a lot to learn about Qt5
Michiel Broek <mbroek@mbse.eu>
parents: 4
diff changeset
157 void on_actionSuppliers_triggered();
19
c94edc758a5b Added Inventory Fermentables table.
Michiel Broek <mbroek@mbse.eu>
parents: 15
diff changeset
158 void on_actionFermentables_triggered();
24
684c6e74cc1b Added hops editor.
Michiel Broek <mbroek@mbse.eu>
parents: 19
diff changeset
159 void on_actionHops_triggered();
25
a9da2744609e Added inventory yeasts editor. Fixed resource icons location.
Michiel Broek <mbroek@mbse.eu>
parents: 24
diff changeset
160 void on_actionYeasts_triggered();
28
93a70b1502ca Added the inventory miscs table.
Michiel Broek <mbroek@mbse.eu>
parents: 25
diff changeset
161 void on_actionMiscs_triggered();
29
76846c99f827 Added inventory water editor and table. In Yeasts table make sure the fields without a tickmark are empty. Removed Utils::Round function, not reliable.
Michiel Broek <mbroek@mbse.eu>
parents: 28
diff changeset
162 void on_actionWaters_triggered();
30
0fec6a1abd13 Added inventory equipment table and editor.
Michiel Broek <mbroek@mbse.eu>
parents: 29
diff changeset
163 void on_actionEquipments_triggered();
52
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents: 49
diff changeset
164 void on_actionSupplies_list_triggered();
ff7b3a41c9b5 After several days experimenting, trials and a lot of errors, a working and nice looking printer support has been added to the application.
Michiel Broek <mbroek@mbse.eu>
parents: 49
diff changeset
165 void on_actionYeast_bank_triggered();
48
ddd1171ecda5 Added profile water table and editor.
Michiel Broek <mbroek@mbse.eu>
parents: 30
diff changeset
166 void on_actionWater_profiles_triggered();
49
29cf6e350063 Added Mash profiles table and the first part of the Mash profile editor. Edit and write must be written.
Michiel Broek <mbroek@mbse.eu>
parents: 48
diff changeset
167 void on_actionMash_profiles_triggered();
56
eb6c564192f4 Added styles tables and editor.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
168 void on_actionStyles_profiles_triggered();
57
75d11cc05ce4 Added profile fermentation tables and editor.
Michiel Broek <mbroek@mbse.eu>
parents: 56
diff changeset
169 void on_actionFerments_profiles_triggered();
15
c58b82549713 Started adding the global setup screen.
Michiel Broek <mbroek@mbse.eu>
parents: 6
diff changeset
170 void on_actionSetup_triggered();
4
fe106c497b75 Added About dialog
Michiel Broek <mbroek@mbse.eu>
parents: 3
diff changeset
171 void on_actionAbout_triggered();
3
4b95e33ee476 We have a mainscreen!
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
172
4b95e33ee476 We have a mainscreen!
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
173 public slots:
275
f472f9773782 Added import from xml, equipments and beerstyles.
Michiel Broek <mbroek@mbse.eu>
parents: 234
diff changeset
174 void fromImportXML();
310
bdaac24b86ed Added monitor nodes overview
Michiel Broek <mbroek@mbse.eu>
parents: 308
diff changeset
175 void fromMonNodes();
bdaac24b86ed Added monitor nodes overview
Michiel Broek <mbroek@mbse.eu>
parents: 308
diff changeset
176 void fromMonFermenters();
bdaac24b86ed Added monitor nodes overview
Michiel Broek <mbroek@mbse.eu>
parents: 308
diff changeset
177 void fromMonCO2meters();
bdaac24b86ed Added monitor nodes overview
Michiel Broek <mbroek@mbse.eu>
parents: 308
diff changeset
178 void fromMoniSpindels();
81
562ed7d1b74d Added start of the Recipes Tree to select a recipe
Michiel Broek <mbroek@mbse.eu>
parents: 78
diff changeset
179 void fromRecipesTree();
6
f8474f2c5db9 We can fetch a list of suppliers and show it in the wrong window. Still a lot to learn about Qt5
Michiel Broek <mbroek@mbse.eu>
parents: 4
diff changeset
180 void fromInventorySuppliers();
19
c94edc758a5b Added Inventory Fermentables table.
Michiel Broek <mbroek@mbse.eu>
parents: 15
diff changeset
181 void fromInventoryFermentables();
24
684c6e74cc1b Added hops editor.
Michiel Broek <mbroek@mbse.eu>
parents: 19
diff changeset
182 void fromInventoryHops();
25
a9da2744609e Added inventory yeasts editor. Fixed resource icons location.
Michiel Broek <mbroek@mbse.eu>
parents: 24
diff changeset
183 void fromInventoryYeasts();
28
93a70b1502ca Added the inventory miscs table.
Michiel Broek <mbroek@mbse.eu>
parents: 25
diff changeset
184 void fromInventoryMiscs();
29
76846c99f827 Added inventory water editor and table. In Yeasts table make sure the fields without a tickmark are empty. Removed Utils::Round function, not reliable.
Michiel Broek <mbroek@mbse.eu>
parents: 28
diff changeset
185 void fromInventoryWaters();
30
0fec6a1abd13 Added inventory equipment table and editor.
Michiel Broek <mbroek@mbse.eu>
parents: 29
diff changeset
186 void fromInventoryEquipments();
173
8514932b61aa Added menu entry products in production
Michiel Broek <mbroek@mbse.eu>
parents: 133
diff changeset
187 void fromProdInprod();
228
c859e8efa470 Added archive products on name.
Michiel Broek <mbroek@mbse.eu>
parents: 213
diff changeset
188 void fromProdOnName();
231
54b5abd46958 Added archive products sorted on code.
Michiel Broek <mbroek@mbse.eu>
parents: 228
diff changeset
189 void fromProdOnCode();
234
51aea8b798f0 Add product archive tree by date.
Michiel Broek <mbroek@mbse.eu>
parents: 232
diff changeset
190 void fromProdOnDate();
232
6d3ba9c44f95 Added the product archives tree by styles.
Michiel Broek <mbroek@mbse.eu>
parents: 231
diff changeset
191 void fromProdOnTree();
48
ddd1171ecda5 Added profile water table and editor.
Michiel Broek <mbroek@mbse.eu>
parents: 30
diff changeset
192 void fromProfileWaters();
49
29cf6e350063 Added Mash profiles table and the first part of the Mash profile editor. Edit and write must be written.
Michiel Broek <mbroek@mbse.eu>
parents: 48
diff changeset
193 void fromProfileMashs();
56
eb6c564192f4 Added styles tables and editor.
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
194 void fromProfileStyles();
57
75d11cc05ce4 Added profile fermentation tables and editor.
Michiel Broek <mbroek@mbse.eu>
parents: 56
diff changeset
195 void fromProfileFerments();
15
c58b82549713 Started adding the global setup screen.
Michiel Broek <mbroek@mbse.eu>
parents: 6
diff changeset
196 void fromSetup();
78
3a6cba2dd05d Status and Windowtitle messages via signals and slots. Global setup now on the mainwindow.
Michiel Broek <mbroek@mbse.eu>
parents: 74
diff changeset
197 void windowTitle(QString);
3a6cba2dd05d Status and Windowtitle messages via signals and slots. Global setup now on the mainwindow.
Michiel Broek <mbroek@mbse.eu>
parents: 74
diff changeset
198 void statusMsg(QString);
3
4b95e33ee476 We have a mainscreen!
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
199
4b95e33ee476 We have a mainscreen!
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
200 private:
4b95e33ee476 We have a mainscreen!
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
201 Ui::MainWindow *ui;
91
409d9c7214be Added websocket connection to the bmsd server. Dropped MQTT, not needed. MySQL and webSockets is enough.
Michiel Broek <mbroek@mbse.eu>
parents: 90
diff changeset
202
409d9c7214be Added websocket connection to the bmsd server. Dropped MQTT, not needed. MySQL and webSockets is enough.
Michiel Broek <mbroek@mbse.eu>
parents: 90
diff changeset
203 /**
133
08635b028dcf Load waters during recipe startup. Started calcWater() function. Load profile_setup record global. The print function uses the globals now too instead of loading from the database.
Michiel Broek <mbroek@mbse.eu>
parents: 131
diff changeset
204 * @brief Load profile_setup record and set global variables.
08635b028dcf Load waters during recipe startup. Started calcWater() function. Load profile_setup record global. The print function uses the globals now too instead of loading from the database.
Michiel Broek <mbroek@mbse.eu>
parents: 131
diff changeset
205 */
08635b028dcf Load waters during recipe startup. Started calcWater() function. Load profile_setup record global. The print function uses the globals now too instead of loading from the database.
Michiel Broek <mbroek@mbse.eu>
parents: 131
diff changeset
206 void loadSetup();
08635b028dcf Load waters during recipe startup. Started calcWater() function. Load profile_setup record global. The print function uses the globals now too instead of loading from the database.
Michiel Broek <mbroek@mbse.eu>
parents: 131
diff changeset
207
08635b028dcf Load waters during recipe startup. Started calcWater() function. Load profile_setup record global. The print function uses the globals now too instead of loading from the database.
Michiel Broek <mbroek@mbse.eu>
parents: 131
diff changeset
208 /**
308
79f100a84f65 Add database maintenance to the startup code. Start some work ok parsing websocket messages.
Michiel Broek <mbroek@mbse.eu>
parents: 296
diff changeset
209 * @brief Do database maintenance.
79f100a84f65 Add database maintenance to the startup code. Start some work ok parsing websocket messages.
Michiel Broek <mbroek@mbse.eu>
parents: 296
diff changeset
210 */
79f100a84f65 Add database maintenance to the startup code. Start some work ok parsing websocket messages.
Michiel Broek <mbroek@mbse.eu>
parents: 296
diff changeset
211 void maintDataBase();
79f100a84f65 Add database maintenance to the startup code. Start some work ok parsing websocket messages.
Michiel Broek <mbroek@mbse.eu>
parents: 296
diff changeset
212
79f100a84f65 Add database maintenance to the startup code. Start some work ok parsing websocket messages.
Michiel Broek <mbroek@mbse.eu>
parents: 296
diff changeset
213 /**
91
409d9c7214be Added websocket connection to the bmsd server. Dropped MQTT, not needed. MySQL and webSockets is enough.
Michiel Broek <mbroek@mbse.eu>
parents: 90
diff changeset
214 * @brief Open Websocket connection.
409d9c7214be Added websocket connection to the bmsd server. Dropped MQTT, not needed. MySQL and webSockets is enough.
Michiel Broek <mbroek@mbse.eu>
parents: 90
diff changeset
215 * @param develop Is true if connect to develop server, else production.
409d9c7214be Added websocket connection to the bmsd server. Dropped MQTT, not needed. MySQL and webSockets is enough.
Michiel Broek <mbroek@mbse.eu>
parents: 90
diff changeset
216 * @return Returns true if succes.
409d9c7214be Added websocket connection to the bmsd server. Dropped MQTT, not needed. MySQL and webSockets is enough.
Michiel Broek <mbroek@mbse.eu>
parents: 90
diff changeset
217 */
409d9c7214be Added websocket connection to the bmsd server. Dropped MQTT, not needed. MySQL and webSockets is enough.
Michiel Broek <mbroek@mbse.eu>
parents: 90
diff changeset
218 bool openWS(bool develop);
409d9c7214be Added websocket connection to the bmsd server. Dropped MQTT, not needed. MySQL and webSockets is enough.
Michiel Broek <mbroek@mbse.eu>
parents: 90
diff changeset
219
409d9c7214be Added websocket connection to the bmsd server. Dropped MQTT, not needed. MySQL and webSockets is enough.
Michiel Broek <mbroek@mbse.eu>
parents: 90
diff changeset
220 void wsConnected();
409d9c7214be Added websocket connection to the bmsd server. Dropped MQTT, not needed. MySQL and webSockets is enough.
Michiel Broek <mbroek@mbse.eu>
parents: 90
diff changeset
221
409d9c7214be Added websocket connection to the bmsd server. Dropped MQTT, not needed. MySQL and webSockets is enough.
Michiel Broek <mbroek@mbse.eu>
parents: 90
diff changeset
222 void wsClosed();
409d9c7214be Added websocket connection to the bmsd server. Dropped MQTT, not needed. MySQL and webSockets is enough.
Michiel Broek <mbroek@mbse.eu>
parents: 90
diff changeset
223
409d9c7214be Added websocket connection to the bmsd server. Dropped MQTT, not needed. MySQL and webSockets is enough.
Michiel Broek <mbroek@mbse.eu>
parents: 90
diff changeset
224 void wsTextMessageReceived(QString message);
90
2396457a8167 Moved functions from bmsapp.cpp to MainWindow.cpp
Michiel Broek <mbroek@mbse.eu>
parents: 81
diff changeset
225
2396457a8167 Moved functions from bmsapp.cpp to MainWindow.cpp
Michiel Broek <mbroek@mbse.eu>
parents: 81
diff changeset
226 /**
2396457a8167 Moved functions from bmsapp.cpp to MainWindow.cpp
Michiel Broek <mbroek@mbse.eu>
parents: 81
diff changeset
227 * @brief Read user settings for the MySQL connection.
133
08635b028dcf Load waters during recipe startup. Started calcWater() function. Load profile_setup record global. The print function uses the globals now too instead of loading from the database.
Michiel Broek <mbroek@mbse.eu>
parents: 131
diff changeset
228 * Settings in $HOME/.config/mbse/bmsapp.ini
90
2396457a8167 Moved functions from bmsapp.cpp to MainWindow.cpp
Michiel Broek <mbroek@mbse.eu>
parents: 81
diff changeset
229 */
2396457a8167 Moved functions from bmsapp.cpp to MainWindow.cpp
Michiel Broek <mbroek@mbse.eu>
parents: 81
diff changeset
230 void readsettings();
2396457a8167 Moved functions from bmsapp.cpp to MainWindow.cpp
Michiel Broek <mbroek@mbse.eu>
parents: 81
diff changeset
231
2396457a8167 Moved functions from bmsapp.cpp to MainWindow.cpp
Michiel Broek <mbroek@mbse.eu>
parents: 81
diff changeset
232 /**
2396457a8167 Moved functions from bmsapp.cpp to MainWindow.cpp
Michiel Broek <mbroek@mbse.eu>
parents: 81
diff changeset
233 * @brief Write or update the user settings for the MySQL connection.
2396457a8167 Moved functions from bmsapp.cpp to MainWindow.cpp
Michiel Broek <mbroek@mbse.eu>
parents: 81
diff changeset
234 */
2396457a8167 Moved functions from bmsapp.cpp to MainWindow.cpp
Michiel Broek <mbroek@mbse.eu>
parents: 81
diff changeset
235 void writesettings();
3
4b95e33ee476 We have a mainscreen!
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
236 };
4b95e33ee476 We have a mainscreen!
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
237
4b95e33ee476 We have a mainscreen!
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
238 #endif

mercurial