]> git.sven.stormbind.net Git - sven/vym.git/blobdiff - src/file.h
New upstream version 2.9.22
[sven/vym.git] / src / file.h
diff --git a/src/file.h b/src/file.h
new file mode 100644 (file)
index 0000000..d286af8
--- /dev/null
@@ -0,0 +1,57 @@
+#ifndef FILE_H
+#define FILE_H
+
+#include <QDir>
+
+namespace File {
+enum ErrorCode { Success, Aborted, NoZip };
+}
+
+enum LoadMode { NewMap, DefaultMap, ImportAdd, ImportReplace };
+enum SaveMode { PartOfMap, CompleteMap, UndoCommand };
+enum FileType { VymMap, FreemindMap, UnknownMap };
+
+/////////////////////////////////////////////////////////////////////////////
+QString convertToRel(const QString &, const QString &);
+QString convertToAbs(const QString &, const QString &);
+QString basename(const QString &);
+QString dirname(const QString &);
+
+QString browseDirectory(QWidget *parent = NULL, const QString &caption = "");
+bool confirmDirectoryOverwrite(const QDir &dir);
+
+QString makeTmpDir(bool &ok, const QString &dirPath, const QString &prefix);
+QString makeTmpDir(bool &ok, const QString &prefix);
+bool isInTmpDir(QString fn);
+QString makeUniqueDir(bool &ok, QString);
+bool removeDir(QDir);
+bool copyDir(QDir src, QDir dst, const bool &override = false);
+bool subDirsExist();
+void makeSubDirs(const QString &);
+
+bool checkZipTool();
+bool checkUnzipTool();
+File::ErrorCode zipDir(QDir, QString);
+File::ErrorCode unzipDir(QDir, QString);
+
+bool loadStringFromDisk(const QString &fn, QString &s);
+bool saveStringToDisk(const QString &fn, const QString &s);
+
+FileType getMapType(const QString &fn);
+
+//////////////////////////////////////////////////////////
+// Helper function to select image format while in SaveDialogs
+
+class ImageIO {
+  public:
+    ImageIO();
+    QStringList getFilters();
+    QString getType(QString);
+    QString guessType(QString);
+
+  private:
+    QStringList imageFilters;
+    QStringList imageTypes;
+};
+
+#endif