135 qDebug() << Q_FUNC_INFO; |
135 qDebug() << Q_FUNC_INFO; |
136 edit(-1); |
136 edit(-1); |
137 } |
137 } |
138 |
138 |
139 |
139 |
|
140 void InventoryWaters::on_exportButton_clicked() |
|
141 { |
|
142 qDebug() << Q_FUNC_INFO; |
|
143 |
|
144 QSqlQuery query("SELECT * FROM inventory_waters ORDER BY name"); |
|
145 |
|
146 QString fileName = QFileDialog::getSaveFileName(this, tr("Save File"), QDir::homePath() + "/waters.xml", tr("Files (*.xml)")); |
|
147 if (fileName == 0) { |
|
148 QMessageBox::warning(this, tr("Save File"), tr("No XML file selected.")); |
|
149 return; |
|
150 } |
|
151 |
|
152 QFile file(fileName); |
|
153 file.open(QIODevice::WriteOnly); |
|
154 |
|
155 QXmlStreamWriter *xmlWriter = new QXmlStreamWriter(&file); |
|
156 xmlWriter->writeStartDocument(); |
|
157 xmlWriter->setAutoFormatting(true); |
|
158 xmlWriter->setAutoFormattingIndent(1); |
|
159 xmlWriter->writeStartElement("WATERS"); |
|
160 |
|
161 query.first(); |
|
162 for (int i = 0 ; i < query.size() ; i++ ) { |
|
163 xmlWriter->writeStartElement("WATER"); |
|
164 xmlWriter->writeTextElement("VERSION", "1"); |
|
165 xmlWriter->writeTextElement("NAME", query.value(1).toString()); |
|
166 if (query.value(13).toDouble() > 0) |
|
167 xmlWriter->writeTextElement("COST", QString::number(query.value(13).toDouble(), 'f', 5)); |
|
168 if (query.value(10).toString().length()) |
|
169 xmlWriter->writeTextElement("NOTES", query.value(10).toString()); |
|
170 xmlWriter->writeTextElement("CALCIUM", QString::number(query.value(3).toDouble(), 'f', 4)); |
|
171 xmlWriter->writeTextElement("BICARBONATE", QString::number(query.value(4).toDouble(), 'f', 4)); |
|
172 xmlWriter->writeTextElement("SULFATE", QString::number(query.value(5).toDouble(), 'f', 4)); |
|
173 xmlWriter->writeTextElement("CHLORIDE", QString::number(query.value(6).toDouble(), 'f', 4)); |
|
174 xmlWriter->writeTextElement("SODIUM", QString::number(query.value(7).toDouble(), 'f', 4)); |
|
175 xmlWriter->writeTextElement("MAGNESIUM", QString::number(query.value(8).toDouble(), 'f', 4)); |
|
176 xmlWriter->writeTextElement("TOTAL_ALKALINITY", QString::number(query.value(11).toDouble(), 'f', 4)); |
|
177 xmlWriter->writeTextElement("PH", QString::number(query.value(9).toDouble(), 'f', 5)); |
|
178 xmlWriter->writeEndElement(); |
|
179 query.next(); |
|
180 } |
|
181 |
|
182 xmlWriter->writeEndElement(); |
|
183 xmlWriter->writeEndDocument(); |
|
184 QMessageBox::information(this, tr("Save File"), tr("XML export ready")); |
|
185 |
|
186 file.close(); |
|
187 } |
|
188 |
|
189 |
140 void InventoryWaters::on_quitButton_clicked() |
190 void InventoryWaters::on_quitButton_clicked() |
141 { |
191 { |
142 emit firstWindow(); |
192 emit firstWindow(); |
143 } |
193 } |
144 |
194 |