Skip to content

Commit 9e1ca18

Browse files
committed
Add tab spacing when saving pahse function data; remove the dependency of the main ui on the child ui
1 parent d960d46 commit 9e1ca18

5 files changed

Lines changed: 134 additions & 48 deletions

File tree

src/app/dialog/displaydialog.cpp

Lines changed: 28 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -23,28 +23,38 @@ void DisplayDialog::on_pushButton_Close_clicked()
2323
this->close();
2424
}
2525

26-
void DisplayDialog::DisplayData(Ui_MainWindow *mainUi, parameters *para)
26+
void DisplayDialog::DisplayData(QRadioButton *radioButton_MonoDisperse,
27+
QRadioButton *radioButton_PolyDisperse,
28+
QRadioButton *radioButton_NumDen,
29+
QRadioButton *radioButton_VolFrac,
30+
QComboBox *comboBox_Distribution,
31+
QSlider *slider_ConcPercentChange,
32+
QSlider *slider_WL_PFPolar,
33+
QRadioButton *radioButton_PhaseAverage,
34+
QRadioButton *radioButton_PhasePara,
35+
QRadioButton *radioButton_PhasePerp,
36+
parameters *para)
2737
{
28-
double margin = (1.0 + mainUi->slider_ConcPercentChange->value() / 200.0);
38+
double margin = (1.0 + slider_ConcPercentChange->value() / 200.0);
2939

3040
//Simulation parameters
3141
ui->textBrowser_Display->setText("Simulation parameters:\n");
3242

33-
if (mainUi->radioButton_MonoDisperse->isChecked())
43+
if (radioButton_MonoDisperse->isChecked())
3444
{
35-
ui->textBrowser_Display->append("Distribution: Mono Disperse");
45+
ui->textBrowser_Display->append("Distribution: Mono Disperse");
3646
ui->textBrowser_Display->append("Diameter of spheres: " + QString::number(2.0*para->meanRadius) + " um");
37-
if (mainUi->radioButton_NumDen->isChecked())
47+
if (radioButton_NumDen->isChecked())
3848
ui->textBrowser_Display->append("Concentration (Spheres in a volume of 1mm^3): "
3949
+ QString::number(para->sphNumDensity * margin));
40-
if (mainUi->radioButton_VolFrac->isChecked())
50+
if (radioButton_VolFrac->isChecked())
4151
ui->textBrowser_Display->append("Volume Fraction (Total sphere volume / 1mm^3): "
4252
+ QString::number(para->volFraction * margin));
4353
}
4454

45-
if (mainUi->radioButton_PolyDisperse->isChecked())
55+
if (radioButton_PolyDisperse->isChecked())
4656
{
47-
int currentIndex = mainUi->comboBox_Distribution->currentIndex();
57+
int currentIndex = comboBox_Distribution->currentIndex();
4858
if (currentIndex == 0) //Log normal distribution
4959
ui->textBrowser_Display->append("Distribution: Poly Disperse - Log Normal");
5060
if (currentIndex == 1) //Gaussian distribution
@@ -58,10 +68,10 @@ void DisplayDialog::DisplayData(Ui_MainWindow *mainUi, parameters *para)
5868
ui->textBrowser_Display->append("Mean diameter of spheres: "
5969
+ QString::number(2.0*para->meanRadius) + " um");
6070
ui->textBrowser_Display->append("Std. deviation: " + QString::number(para->stdDev) + " um\n");
61-
if (mainUi->radioButton_NumDen->isChecked())
71+
if (radioButton_NumDen->isChecked())
6272
ui->textBrowser_Display->append("Total Concentration (Spheres in a volume of 1mm^3): "
6373
+ QString::number(para->sphNumDensity * margin));
64-
if (mainUi->radioButton_VolFrac->isChecked())
74+
if (radioButton_VolFrac->isChecked())
6575
ui->textBrowser_Display->append("Volume Fraction (Total sphere volume / 1mm^3): "
6676
+ QString::number(para->volFraction * margin));
6777
}
@@ -78,7 +88,7 @@ void DisplayDialog::DisplayData(Ui_MainWindow *mainUi, parameters *para)
7888
+ QString::number(para->scatRefRealArray[i]) + "\t" + QString::number(para->scatRefImagArray[i]) );
7989

8090
ui->textBrowser_Display->append("\n\nOutput:");
81-
if (mainUi->radioButton_MonoDisperse->isChecked())
91+
if (radioButton_MonoDisperse->isChecked())
8292
{
8393
ui->textBrowser_Display->append("\nSize Parameter (2*pi*R/lambda):");
8494
ui->textBrowser_Display->append("WL(nm)\t2*pi*R/lambda");
@@ -110,25 +120,25 @@ void DisplayDialog::DisplayData(Ui_MainWindow *mainUi, parameters *para)
110120
QString::number(para->forward[i]) + "\t" +
111121
QString::number(para->backward[i]));
112122

113-
int indexWL = mainUi->slider_WL_PFPolar->value();
123+
int indexWL = slider_WL_PFPolar->value();
114124
double currentWL = para->startWavel + indexWL*para->stepWavel;
115125

116126
ui->textBrowser_Display->append("\nPhase Function @ Wavelength of " + QString::number(currentWL) + " nm:");
117-
if (mainUi->radioButton_PhaseAverage->isChecked())
127+
if (radioButton_PhaseAverage->isChecked())
118128
ui->textBrowser_Display->append("Angle(deg)\tPhase Function (Ave)");
119-
if (mainUi->radioButton_PhasePara->isChecked())
129+
if (radioButton_PhasePara->isChecked())
120130
ui->textBrowser_Display->append("Angle(deg)\tPhase Function (Para)");
121-
if (mainUi->radioButton_PhasePerp->isChecked())
131+
if (radioButton_PhasePerp->isChecked())
122132
ui->textBrowser_Display->append("Angle(deg)\tPhase Function (Perp)");
123133
for (unsigned int i = 0; i<para->nTheta; i++)
124134
{
125-
if (mainUi->radioButton_PhaseAverage->isChecked())
135+
if (radioButton_PhaseAverage->isChecked())
126136
ui->textBrowser_Display->append(QString::number(180.0 * i / (para->nTheta - 1)) + "\t" +
127137
QString::number(para->phaseFunctionAve[indexWL][i]));
128-
if (mainUi->radioButton_PhasePara->isChecked())
138+
if (radioButton_PhasePara->isChecked())
129139
ui->textBrowser_Display->append(QString::number(180.0 * i / (para->nTheta - 1)) + "\t" +
130140
QString::number(para->phaseFunctionPara[indexWL][i]));
131-
if (mainUi->radioButton_PhasePerp->isChecked())
141+
if (radioButton_PhasePerp->isChecked())
132142
ui->textBrowser_Display->append(QString::number(180.0 * i / (para->nTheta - 1)) + "\t" +
133143
QString::number(para->phaseFunctionPerp[indexWL][i]));
134144
}

src/app/dialog/displaydialog.h

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,9 @@
22
#define DISPLAYDIALOG_H
33

44
#include <QDialog>
5-
#include "ui_mainwindow.h"
5+
#include <QRadioButton>
6+
#include <QComboBox>
7+
#include <QSlider>
68
#include "parameters.h"
79

810
namespace Ui {
@@ -16,7 +18,16 @@ class DisplayDialog : public QDialog
1618
public:
1719
explicit DisplayDialog(QWidget *parent = 0);
1820
~DisplayDialog();
19-
void DisplayData(Ui_MainWindow *, parameters *);
21+
void DisplayData(QRadioButton *radioButton_MonoDisperse,
22+
QRadioButton *radioButton_PolyDisperse,
23+
QRadioButton *radioButton_NumDen,
24+
QRadioButton *radioButton_VolFrac,
25+
QComboBox *comboBox_Distribution,
26+
QSlider *slider_ConcPercentChange,
27+
QSlider *slider_WL_PFPolar,
28+
QRadioButton *radioButton_PhaseAverage,
29+
QRadioButton *radioButton_PhasePara,
30+
QRadioButton *radioButton_PhasePerp, parameters *);
2031
Ui::DisplayDialog *ui;
2132

2233
private slots:

src/app/dialog/mainwindow.cpp

Lines changed: 19 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -179,7 +179,15 @@ void MainWindow::on_pushButton_SaveData_clicked()
179179
if (mOtherPlotsFlag)
180180
{
181181
OptionsDialog saveOptions;
182-
saveOptions.SaveData(ui, mPara);
182+
saveOptions.SaveData(ui->radioButton_MonoDisperse,
183+
ui->radioButton_PolyDisperse,
184+
ui->radioButton_NumDen,
185+
ui->radioButton_VolFrac,
186+
ui->comboBox_Distribution,
187+
ui->slider_ConcPercentChange,
188+
ui->radioButton_PhaseAverage,
189+
ui->radioButton_PhasePara,
190+
ui->radioButton_PhasePerp,mPara);
183191
}
184192
else
185193
{
@@ -197,7 +205,16 @@ void MainWindow::on_pushButton_DisplayData_clicked()
197205
{
198206
DisplayDialog *display;
199207
display = new DisplayDialog();
200-
display->DisplayData(ui, mPara);
208+
display->DisplayData(ui->radioButton_MonoDisperse,
209+
ui->radioButton_PolyDisperse,
210+
ui->radioButton_NumDen,
211+
ui->radioButton_VolFrac,
212+
ui->comboBox_Distribution,
213+
ui->slider_ConcPercentChange,
214+
ui->slider_WL_PFPolar,
215+
ui->radioButton_PhaseAverage,
216+
ui->radioButton_PhasePara,
217+
ui->radioButton_PhasePerp, mPara);
201218
display->show();
202219
}
203220
else

src/app/dialog/optionsdialog.cpp

Lines changed: 50 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,8 @@
33
**********************************************************************/
44

55
#include "optionsdialog.h"
6+
#include <QFileDialog>
7+
#include <QMessageBox>
68

79
OptionsDialog::OptionsDialog(QWidget *parent) :
810
QDialog(parent),
@@ -49,12 +51,21 @@ void OptionsDialog::on_pushButton_Cancel_clicked()
4951
this->close();
5052
}
5153

52-
void OptionsDialog::SaveData(Ui_MainWindow *ui, parameters *para)
54+
void OptionsDialog::SaveData(QRadioButton *radioButton_MonoDisperse,
55+
QRadioButton *radioButton_PolyDisperse,
56+
QRadioButton *radioButton_NumDen,
57+
QRadioButton *radioButton_VolFrac,
58+
QComboBox *comboBox_Distribution,
59+
QSlider *slider_ConcPercentChange,
60+
QRadioButton *radioButton_PhaseAverage,
61+
QRadioButton *radioButton_PhasePara,
62+
QRadioButton *radioButton_PhasePerp,
63+
parameters *para)
5364
{
5465
setModal(true);
5566
exec();
5667

57-
double margin = (1.0 + ui->slider_ConcPercentChange->value() /200.0);
68+
double margin = (1.0 + slider_ConcPercentChange->value() /200.0);
5869
if (flagScatPara)
5970
{
6071
QString fileName = QFileDialog::getSaveFileName(this,
@@ -65,9 +76,14 @@ void OptionsDialog::SaveData(Ui_MainWindow *ui, parameters *para)
6576
return;
6677
else
6778
{
68-
SaveScatPara(ui, para,fileName,margin);
79+
SaveScatPara(radioButton_MonoDisperse,
80+
radioButton_PolyDisperse,
81+
radioButton_NumDen, radioButton_VolFrac,
82+
comboBox_Distribution, para,fileName,margin);
6983
RememberLastDirectory(fileName);
7084
}
85+
86+
7187
}
7288
if (flagPhaseFunction)
7389
{
@@ -79,7 +95,9 @@ void OptionsDialog::SaveData(Ui_MainWindow *ui, parameters *para)
7995
return;
8096
else
8197
{
82-
SavePhaseFunction(ui, para,fileName);
98+
SavePhaseFunction(radioButton_PhaseAverage,
99+
radioButton_PhasePara,
100+
radioButton_PhasePerp, para,fileName);
83101
RememberLastDirectory(fileName);
84102
}
85103
}
@@ -114,7 +132,14 @@ void OptionsDialog::SaveData(Ui_MainWindow *ui, parameters *para)
114132

115133
}
116134

117-
void OptionsDialog::SaveScatPara(Ui_MainWindow *ui, parameters *para, QString fileName, double margin)
135+
void OptionsDialog::SaveScatPara(QRadioButton *radioButton_MonoDisperse,
136+
QRadioButton *radioButton_PolyDisperse,
137+
QRadioButton *radioButton_NumDen,
138+
QRadioButton *radioButton_VolFrac,
139+
QComboBox *comboBox_Distribution,
140+
parameters *para,
141+
QString fileName,
142+
double margin)
118143
{
119144

120145
QFile file(fileName);
@@ -130,19 +155,19 @@ void OptionsDialog::SaveScatPara(Ui_MainWindow *ui, parameters *para, QString fi
130155
//Simulation parameters
131156
out << "Simulation parameters:\n\n";
132157

133-
if(ui->radioButton_MonoDisperse->isChecked())
158+
if(radioButton_MonoDisperse->isChecked())
134159
{
135160
out << "Distribution: Mono Disperse \n";
136161
out << "Diameter of spheres: " << 2.0*para->meanRadius <<" um\n";
137-
if (ui->radioButton_NumDen->isChecked())
162+
if (radioButton_NumDen->isChecked())
138163
out << "Concentration (Spheres in a volume of 1mm^3): " << para->sphNumDensity * margin<<"\n";
139-
if (ui->radioButton_VolFrac->isChecked())
164+
if (radioButton_VolFrac->isChecked())
140165
out << "Volume Fraction (Total sphere volume / 1mm^3): " << para->volFraction * margin<<"\n";
141166
}
142167

143-
if(ui->radioButton_PolyDisperse->isChecked())
168+
if(radioButton_PolyDisperse->isChecked())
144169
{
145-
int currentIndex = ui->comboBox_Distribution->currentIndex();
170+
int currentIndex = comboBox_Distribution->currentIndex();
146171
if (currentIndex == 0) //Log normal distribution
147172
out << "Distribution: Poly Disperse - Log Normal \n";
148173
if (currentIndex == 1) //Gaussian distribution
@@ -154,9 +179,9 @@ void OptionsDialog::SaveScatPara(Ui_MainWindow *ui, parameters *para, QString fi
154179
{
155180
out << "Mean diameter of spheres: " << 2.0*para->meanRadius <<" um\n";
156181
out << "Std. deviation: " << para->stdDev <<" um\n";
157-
if (ui->radioButton_NumDen->isChecked())
182+
if (radioButton_NumDen->isChecked())
158183
out << "Total Concentration (Spheres in a volume of 1mm^3): " << para->sphNumDensity * margin <<"\n";
159-
if (ui->radioButton_VolFrac->isChecked())
184+
if (radioButton_VolFrac->isChecked())
160185
out << "Volume Fraction (Total sphere volume / 1mm^3): " << para->volFraction * margin <<"\n";
161186
}
162187
}
@@ -172,7 +197,7 @@ void OptionsDialog::SaveScatPara(Ui_MainWindow *ui, parameters *para, QString fi
172197
<<para->scatRefRealArray[i]<<"\t" << para->scatRefImagArray[i] <<"\n";
173198

174199
out << "\n\nOutput:\n\n";
175-
if (ui->radioButton_MonoDisperse->isChecked())
200+
if (radioButton_MonoDisperse->isChecked())
176201
{
177202
out << "Size Parameter (2*pi*R/lambda):\n";
178203
out << "WL(nm)\t2*pi*R/lambda\n";
@@ -199,7 +224,10 @@ void OptionsDialog::SaveScatPara(Ui_MainWindow *ui, parameters *para, QString fi
199224
out << "\n";
200225
}
201226

202-
void OptionsDialog::SavePhaseFunction(Ui_MainWindow *ui, parameters *para, QString fileName)
227+
void OptionsDialog::SavePhaseFunction(QRadioButton *radioButton_PhaseAverage,
228+
QRadioButton *radioButton_PhasePara,
229+
QRadioButton *radioButton_PhasePerp,
230+
parameters *para, QString fileName)
203231
{
204232

205233
QFile file(fileName);
@@ -213,11 +241,11 @@ void OptionsDialog::SavePhaseFunction(Ui_MainWindow *ui, parameters *para, QStri
213241
QTextStream out(&file);
214242

215243
out << "Phase Function ";
216-
if (ui->radioButton_PhaseAverage->isChecked())
244+
if (radioButton_PhaseAverage->isChecked())
217245
out << "(Ave): ";
218-
if (ui->radioButton_PhasePara->isChecked())
246+
if (radioButton_PhasePara->isChecked())
219247
out << "(Para): ";
220-
if (ui->radioButton_PhasePerp->isChecked())
248+
if (radioButton_PhasePerp->isChecked())
221249
out << "(Perp): ";
222250
out << "\n\tWL(nm)-->\nAngle(deg)";
223251
for (unsigned int i=0; i<para->nWavel; i++)
@@ -229,12 +257,12 @@ void OptionsDialog::SavePhaseFunction(Ui_MainWindow *ui, parameters *para, QStri
229257
out << 180.0 * j /(para->nTheta-1) <<"\t";
230258
for (unsigned int i=0; i<para->nWavel; i++)
231259
{
232-
if (ui->radioButton_PhaseAverage->isChecked())
260+
if (radioButton_PhaseAverage->isChecked())
233261
out << para->phaseFunctionAve[i][j] <<"\t";
234-
if (ui->radioButton_PhasePara->isChecked())
235-
out << para->phaseFunctionPara[i][j];
236-
if (ui->radioButton_PhasePerp->isChecked())
237-
out << para->phaseFunctionPerp[i][j];
262+
if (radioButton_PhasePara->isChecked())
263+
out << para->phaseFunctionPara[i][j]<<"\t";
264+
if (radioButton_PhasePerp->isChecked())
265+
out << para->phaseFunctionPerp[i][j]<<"\t";
238266
}
239267
out << "\n";
240268
}

src/app/dialog/optionsdialog.h

Lines changed: 24 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,9 @@
22
#define OPTIONSDIALOG_H
33

44
#include <QDialog>
5-
#include "ui_mainwindow.h"
5+
#include <QRadioButton>
6+
#include <QComboBox>
7+
#include <QSlider>
68
#include "ui_optionsdialog.h"
79
#include "parameters.h"
810

@@ -18,7 +20,16 @@ class OptionsDialog : public QDialog
1820
explicit OptionsDialog(QWidget *parent = nullptr);
1921
~OptionsDialog();
2022

21-
void SaveData(Ui_MainWindow *ui, parameters *para);
23+
void SaveData(QRadioButton *radioButton_MonoDisperse,
24+
QRadioButton *radioButton_PolyDisperse,
25+
QRadioButton *radioButton_NumDen,
26+
QRadioButton *radioButton_VolFrac,
27+
QComboBox *comboBox_Distribution,
28+
QSlider *slider_ConcPercentChange,
29+
QRadioButton *radioButton_PhaseAverage,
30+
QRadioButton *radioButton_PhasePara,
31+
QRadioButton *radioButton_PhasePerp,
32+
parameters *para);
2233

2334
private slots:
2435
void on_pushButton_ScatPara_clicked();
@@ -34,8 +45,17 @@ private slots:
3445
bool flagS2;
3546
Ui::OptionsDialog *ui;
3647

37-
void SaveScatPara(Ui_MainWindow *ui, parameters *para, QString fileName, double margin);
38-
void SavePhaseFunction(Ui_MainWindow *ui, parameters *para, QString fileName);
48+
void SaveScatPara(QRadioButton *radioButton_MonoDisperse,
49+
QRadioButton *radioButton_PolyDisperse,
50+
QRadioButton *radioButton_NumDen,
51+
QRadioButton *radioButton_VolFrac,
52+
QComboBox *comboBox_Distribution,
53+
parameters *para, QString fileName,
54+
double margin);
55+
void SavePhaseFunction(QRadioButton *radioButton_PhaseAverage,
56+
QRadioButton *radioButton_PhasePara,
57+
QRadioButton *radioButton_PhasePerp,
58+
parameters *para, QString fileName);
3959
void SaveS1(parameters *para, QString fileName);
4060
void SaveS2(parameters *para, QString fileName);
4161
void RememberLastDirectory(QString fileName);

0 commit comments

Comments
 (0)