File indexing completed on 2024-05-12 16:01:50

0001 /*
0002  *  SPDX-FileCopyrightText: 2017 Dmitry Kazakov <dimula73@gmail.com>
0003  *
0004  *  SPDX-License-Identifier: GPL-2.0-or-later
0005  */
0006 
0007 #ifndef KISIMPORTEXPORTUTILS_H
0008 #define KISIMPORTEXPORTUTILS_H
0009 
0010 #include <QFlags>
0011 #include <QString>
0012 
0013 namespace KritaUtils {
0014 
0015 enum SaveFlag {
0016     SaveNone = 0,
0017     SaveShowWarnings = 0x1,
0018     SaveIsExporting = 0x2,
0019     SaveInAutosaveMode = 0x4
0020 };
0021 
0022 enum JobResult {
0023     Success = 0,
0024     Failure = 1,
0025     Busy = 2
0026 };
0027 
0028 Q_DECLARE_FLAGS(SaveFlags, SaveFlag)
0029 Q_DECLARE_OPERATORS_FOR_FLAGS(SaveFlags)
0030 
0031 struct ExportFileJob {
0032     ExportFileJob()
0033         : flags(SaveNone)
0034     {
0035     }
0036 
0037     ExportFileJob(QString _filePath, QByteArray _mimeType, SaveFlags _flags = SaveNone)
0038         : filePath(_filePath), mimeType(_mimeType), flags(_flags)
0039     {
0040     }
0041 
0042     bool isValid() const {
0043         return !filePath.isEmpty();
0044     }
0045 
0046     QString filePath;
0047     QByteArray mimeType;
0048     SaveFlags flags;
0049 };
0050 
0051 }
0052 
0053 #endif // KISIMPORTEXPORTUTILS_H