23#ifndef VCL_QT_UTILS_FILE_FORMAT_H
24#define VCL_QT_UTILS_FILE_FORMAT_H
26#include <vclib/io/file_format.h>
32inline QString filterFormatToQString(
const FileFormat& format)
34 QString filter = QString::fromStdString(format.description());
36 for (
const auto& ext : format.extensions()) {
37 filter +=
"*." + QString::fromStdString(ext) +
" ";
44inline QString filterFormatsToQString(
45 const std::vector<FileFormat>& formats,
46 bool allFormats =
false)
50 filter +=
"All supported formats (";
51 for (
const auto& format : formats) {
52 for (
const auto& ext : format.extensions()) {
53 filter +=
"*." + QString::fromStdString(ext) +
" ";
59 for (
const auto& format : formats) {
60 filter += filterFormatToQString(format);
68inline FileFormat formatFromQStringFilter(
const QString& filter)
71 int start = filter.indexOf(
"(*.") + 3;
73 int end = filter.indexOf(
")", start);
75 QString ext = filter.mid(start, end - start);
76 return FileFormat(ext.toStdString());