diff options
Diffstat (limited to 'source/blender/blenloader/BLO_writefile.h')
-rw-r--r-- | source/blender/blenloader/BLO_writefile.h | 27 |
1 files changed, 24 insertions, 3 deletions
diff --git a/source/blender/blenloader/BLO_writefile.h b/source/blender/blenloader/BLO_writefile.h index d83abf7f9ed..18783474392 100644 --- a/source/blender/blenloader/BLO_writefile.h +++ b/source/blender/blenloader/BLO_writefile.h @@ -30,11 +30,32 @@ struct Main; struct MemFile; struct ReportList; +/** + * Adjust paths when saving (kept unless #G_FILE_SAVE_COPY is set). + */ +typedef enum eBLO_WritePathRemap { + /** No path manipulation. */ + BLO_WRITE_PATH_REMAP_NONE = 1, + /** Remap existing relative paths (default). */ + BLO_WRITE_PATH_REMAP_RELATIVE = 2, + /** Remap paths making all paths relative to the new location. */ + BLO_WRITE_PATH_REMAP_RELATIVE_ALL = 3, + /** Make all paths absolute. */ + BLO_WRITE_PATH_REMAP_ABSOLUTE = 4, +} eBLO_WritePathRemap; + +extern bool BLO_write_file_ex(struct Main *mainvar, + const char *filepath, + const int write_flags, + struct ReportList *reports, + /* Extra arguments. */ + eBLO_WritePathRemap remap_mode, + const struct BlendThumbnail *thumb); extern bool BLO_write_file(struct Main *mainvar, const char *filepath, - int write_flags, - struct ReportList *reports, - const struct BlendThumbnail *thumb); + const int write_flags, + struct ReportList *reports); + extern bool BLO_write_file_mem(struct Main *mainvar, struct MemFile *compare, struct MemFile *current, |