diff --git a/src/common/utilities/file_format.h b/src/common/utilities/file_format.h index e8d053a55..e7244ec3c 100644 --- a/src/common/utilities/file_format.h +++ b/src/common/utilities/file_format.h @@ -30,6 +30,7 @@ class FileFormat { public: FileFormat(QString description, QString ex) : description(description), extensions(ex){} + FileFormat(QString description, QStringList ex) : description(description), extensions(ex){} QString description; QStringList extensions; }; diff --git a/src/meshlab/mainwindow_RunTime.cpp b/src/meshlab/mainwindow_RunTime.cpp index 76822ac19..a61d644e1 100644 --- a/src/meshlab/mainwindow_RunTime.cpp +++ b/src/meshlab/mainwindow_RunTime.cpp @@ -1936,7 +1936,7 @@ bool MainWindow::importRaster(const QString& fileImg) QStringList fileNameList; if (fileImg.isEmpty()) - fileNameList = QFileDialog::getOpenFileNames(this,tr("Import Mesh"), lastUsedDirectory.path(), PM.inputImageFormatListDialog().join(";;")); + fileNameList = QFileDialog::getOpenFileNames(this,tr("Import Raster"), lastUsedDirectory.path(), PM.inputImageFormatListDialog().join(";;")); else fileNameList.push_back(fileImg); diff --git a/src/meshlabplugins/io_base/baseio.cpp b/src/meshlabplugins/io_base/baseio.cpp index 0f63edf06..fb8acdffe 100644 --- a/src/meshlabplugins/io_base/baseio.cpp +++ b/src/meshlabplugins/io_base/baseio.cpp @@ -71,19 +71,19 @@ class PMesh : public tri::TriMesh< vector, vector, vector const static std::list importImageFormatList = { FileFormat("Windows Bitmap", "BMP"), - FileFormat("Joint Photographic Experts Group", "JPG"), - FileFormat("Joint Photographic Experts Group", "JPEG"), + FileFormat("Joint Photographic Experts Group", {"JPG", "JPEG"}), FileFormat("Portable Network Graphics", "PNG"), + FileFormat("Truevision Graphics Adapter", "TGA"), + FileFormat("Tagged Image File Format", {"TIF", "TIFF"}), FileFormat("X11 Bitmap", "XBM"), - FileFormat("X11 Bitmap", "XPM"), - FileFormat("Truevision Graphics Adapter", "TGA") + FileFormat("X11 Bitmap", "XPM") }; const static std::list exportImageFormatList = { FileFormat("Windows Bitmap", "BMP"), - FileFormat("Joint Photographic Experts Group", "JPG"), - FileFormat("Joint Photographic Experts Group", "JPEG"), + FileFormat("Joint Photographic Experts Group", {"JPG", "JPEG"}), FileFormat("Portable Network Graphics", "PNG"), + FileFormat("Tagged Image File Format", {"TIF", "TIFF"}), FileFormat("X11 Bitmap", "XBM"), FileFormat("X11 Bitmap", "XPM") }; @@ -519,8 +519,10 @@ QImage BaseMeshIOPlugin::openImage( else { //check if it is a format supported natively by QImage bool supportedFormat = false; for (const FileFormat& f : importImageFormatList){ - if (f.extensions.first().toUpper() == format.toUpper()) - supportedFormat = true; + for (const QString& ext : f.extensions){ + if (ext.toUpper() == format.toUpper()) + supportedFormat = true; + } } if (supportedFormat) { @@ -556,8 +558,10 @@ void BaseMeshIOPlugin::saveImage( { bool supportedFormat = false; for (const FileFormat& f : exportImageFormatList){ - if (f.extensions.first().toUpper() == format.toUpper()) - supportedFormat = true; + for (const QString& ext : f.extensions){ + if (ext.toUpper() == format.toUpper()) + supportedFormat = true; + } } if (supportedFormat){ bool ok = image.save(fileName, nullptr, quality);