-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmainwindow.h
132 lines (104 loc) · 3.66 KB
/
mainwindow.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
#include <QObject>
#include <QMessageBox>
#include <QList>
#include "mprintdialog.h"
#include "edit_dialog.h"
#include "qnetworkreply.h"
#include "qsqltablemodel.h"
#include "qtableview.h"
#include "preferences_dialog.h"
QT_BEGIN_NAMESPACE
namespace Ui {
class MainWindow;
}
QT_END_NAMESPACE
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
MainWindow(QWidget *parent = nullptr);
~MainWindow();
Ui::MainWindow *ui;
friend class Select_Dialog;
friend class Edit_Dialog;
friend class Preferences_Dialog;
void cc_msgBox(QString msgText, QString msgText2 ="", QString msgText3="", \
MainWindow *parent = nullptr);
void on_pushButton_DeleteRow_clicked();
QString read_starting_reagent();
int db_Save(QString reagent_name, QString mw, bool skipConfirmationMessage=false);
QString UIDString;
struct entrezData{
QString WebEnv;
QString QueryKey;
QString UIDString;
};
bool g_strictSearch;
static QString g_dataBaseFilePath;
static QString g_configFilePath;
static bool g_NetworkAccessPermission;
static bool g_NetworkAccessAsked;
static bool g_NetworkAccessDontAskAgain;
static QSqlDatabase g_db;
void entrezQuery1(QString myReagentText, bool strictSearch);
void entrezQuery2(entrezData myEntrezDataStruct);
public slots:
signals:
private slots:
void on_pushButton_Quit_clicked();
void on_actionQuit_triggered();
void on_pushButton_Show_clicked();
void on_pushButton_Calculate_clicked();
QString read_starting_radioButtons();
QString read_desired_radioButtons();
double read_density();
double validate_raw_number(QString raw_num);
double read_starting_conc();
QString read_starting_suffix();
double read_desired_conc();
QString read_desired_suffix();
QString read_total_amount_suffix();
double read_total_amount();
double read_MW();
double sol_is_molar(QString str);
bool is_desired_reagent_total_by_moles();
bool is_desired_reagent_total_by_weight();
double calc_solution_molarity(double starting_conc, QString starting_conc_suffix);
double g_per_L(double starting_conc, QString starting_conc_suffix);
double calc_moles(double input_num, QString suffix);
double calc_grams(double input_num, QString suffix);
double read_desired_volume();
void format_ml_answer(double ml_needed);
void format_gram_answer(double grams_needed);
void write_answer(QString text);
QString on_pushButton_AddToPrintList_clicked();
QString read_result();
void on_pushButton_FindMW_clicked();
void on_pushButton_SaveMW_clicked();
void on_actionDatabase_triggered();
void on_actionChemCalc_Help_triggered();
void on_actionAbout_ChemCalc_triggered();
void on_textEdit_StartingReagent_cursorPositionChanged();
void replyFinished1(QNetworkReply *reply1);
void replyFinished2(QNetworkReply *reply2);
entrezData processReturnedText1(QByteArray returnedText1);
void processReturnedText2(QByteArray returnedText2);
void on_actionEnterez_Search_triggered(bool strictSearch);
void askToUseAndSave(QString chemNameReturned, QString molecularWeight);
void on_actionOpen_PubChem_Website_triggered();
void runAtStart();
bool checkForDataBase();
bool checkForConfigurationFile();
static QString parseConfigFile(QString searchTerm, bool replace, \
bool replacementTerm);
void setConfigGlobals();
void on_actionPreferences_triggered();
private:
mPrintDialog *pd;
QSqlTableModel *model;
QTableView *view;
};
#endif // MAINWINDOW_H