33**********************************************************************/
44
55#include " optionsdialog.h"
6+ #include < QFileDialog>
7+ #include < QMessageBox>
68
79OptionsDialog::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\n Output:\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)\t 2*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\t WL(nm)-->\n Angle(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 }
0 commit comments