//TODO: testing int frameToJPG(frame_t *frame, char *filename){ if (saveJpg(filename, frame->image) != 0) { return 0; } else { return 1; } }
void CustomPlot::saveAs() { QFileInfo info(Preferences::LastFileAccessed()); info.setFile(info.dir(), info.completeBaseName()); while (1) { QString filter(tr("PNG") + " (*.png)"); QStringList extensions; extensions << filter << tr("JPG") + " (*.jpg)" << tr("PDF") + " (*.pdf)"; QString fileName(QFileDialog::getSaveFileName(this, tr("Save File"), info.filePath(), extensions.join(";;"), &filter)); if (fileName.isEmpty()) { // This will occur if the user cancels the action. return; }else { QRegExp rx("\\*(\\..+)\\)"); if (rx.indexIn(filter) > 0) { filter = rx.cap(1); if (!fileName.endsWith(filter, Qt::CaseInsensitive)) { fileName += filter; } } QSize dim(size()); int upscale(2); if (filter == ".pdf") { qDebug() << "Saving with filter " << fileName << filter; bool noCosmeticPen = true; savePdf(fileName, noCosmeticPen, dim.width(), dim.height()); }else if (filter == ".png") { qDebug() << "Saving with filter " << fileName << filter; savePng(fileName, dim.width(), dim.height(), upscale); }else if (filter == ".jpg") { qDebug() << "Saving with filter " << fileName << filter; saveJpg(fileName, dim.width(), dim.height(), upscale); } Preferences::LastFileAccessed(fileName); break; } } }