gui: PreviewGenerator: Add get()

This commit is contained in:
Albert S. 2022-04-24 12:22:59 +02:00
والد 84e13e432b
کامیت 57bb5c48c8
2فایلهای تغییر یافته به همراه17 افزوده شده و 0 حذف شده

مشاهده پرونده

@ -1 +1,15 @@
#include "previewgenerator.h" #include "previewgenerator.h"
#include "previewgeneratorpdf.h"
#include "previewgeneratorplaintext.h"
static PreviewGenerator *plainTextGenerator = new PreviewGeneratorPlainText();
static QMap<QString, PreviewGenerator *> generators{
{"pdf", new PreviewGeneratorPdf()}, {"txt", plainTextGenerator}, {"md", plainTextGenerator},
{"py", plainTextGenerator}, {"java", plainTextGenerator}, {"js", plainTextGenerator},
{"cpp", plainTextGenerator}, {"c", plainTextGenerator}, {"sql", plainTextGenerator}};
PreviewGenerator *PreviewGenerator::get(QFileInfo &info)
{
return generators.value(info.suffix(), nullptr);
}

مشاهده پرونده

@ -2,6 +2,7 @@
#define PREVIEWGENERATOR_H #define PREVIEWGENERATOR_H
#include <QVector> #include <QVector>
#include <QSharedPointer> #include <QSharedPointer>
#include <QFileInfo>
#include "previewresult.h" #include "previewresult.h"
#include "renderconfig.h" #include "renderconfig.h"
@ -12,6 +13,8 @@ class PreviewGenerator
virtual ~PreviewGenerator() virtual ~PreviewGenerator()
{ {
} }
static PreviewGenerator *get(QFileInfo &info);
}; };
#endif // PREVIEWGENERATOR_H #endif // PREVIEWGENERATOR_H