diff options
author | Ton Roosendaal <ton@blender.org> | 2006-11-10 13:17:04 +0300 |
---|---|---|
committer | Ton Roosendaal <ton@blender.org> | 2006-11-10 13:17:04 +0300 |
commit | 9a145481041c51c17d6ec1fba2b10621dc93ecce (patch) | |
tree | e191bcd78569b5e3d7604941f7aaa56ff8b22c54 /source/blender/blenloader/intern/readfile.h | |
parent | a54bd4993fa825df60e43f307c58d47981b37cea (diff) |
Old feature request: undo system now restores images without reloading.
Was surprisingly easy to add, compiant with file reading and undo code.
Currently only the Image->ibuf gets restored, and its opengl binding, so
for realtime texture it works nicely. Also texture images are not freed
inbetween undo steps
Notes:
- Painting textures will just keep the painted image, there's no undo
yet for that
- If this works satisfying, I'll extend it to compositing previews
TEST IT WELL PLEASE! :)
Diffstat (limited to 'source/blender/blenloader/intern/readfile.h')
-rw-r--r-- | source/blender/blenloader/intern/readfile.h | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/source/blender/blenloader/intern/readfile.h b/source/blender/blenloader/intern/readfile.h index efdfa9f76bf..a0f42769762 100644 --- a/source/blender/blenloader/intern/readfile.h +++ b/source/blender/blenloader/intern/readfile.h @@ -73,6 +73,7 @@ typedef struct FileData { struct OldNewMap *datamap; struct OldNewMap *globmap; struct OldNewMap *libmap; + struct OldNewMap *imamap; ListBase mainlist; @@ -108,8 +109,10 @@ FileData *blo_openblenderfile( char *name, BlendReadError *error_r); FileData *blo_openblendermemory( void *buffer, int buffersize, BlendReadError *error_r); FileData *blo_openblendermemfile(struct MemFile *memfile, BlendReadError *error_r); -void blo_freefiledata( FileData *fd); +void blo_make_image_pointer_map(FileData *fd); +void blo_end_image_pointer_map(FileData *fd); +void blo_freefiledata( FileData *fd); BHead *blo_firstbhead(FileData *fd); BHead *blo_nextbhead(FileData *fd, BHead *thisblock); |