More Info

Revision 871587

(Back to digest)
 

Bug Fixes in Office

Thorsten Zachmann committed changes in /trunk/koffice:

Refactor KoImageData and KoImageCollection

This fixes the following:
* copy of shapes with a pattern backgound run into an assert
* make copy and paste of images and objects with pattern background work
* fix bug in WMFImportParser to use the image collection correctly. the image collection was not found
* make it possible to add also remote images e.g. over fish://
* make copy and paste of pages with background images work in kpresenter and kivio

Also done
* make sure that if the same picture is added more then once to use the same data for it
* added first unit tests for KoImageCollection
* use the shape saving context to store the images which need to go into the saved store.
* don't stop loading if e.g. a image can not be loaded.

I hope I did not break anything. As far as I can see all works well.
The karbon filters should be tested to see if it is all working as expected.
I also disabled the code in the shapeselector to show the clipboard as it crashes as soon you twice copy a picture.

File Changes

Added 7 files
/trunk/koffice/libs/flake
 
/KoImageData_p.h
 
/tests/logo-koffice.jpg
 
/tests/logo-koffice.png
 
/tests/logo-kpresenter.png
 
/tests/store.zip
 
/tests/TestImageCollection.cpp
 
/tests/TestImageCollection.h
Modified 34 files
/trunk/koffice
 
/kspread/Map.cpp
 
/kspread/Map.h
 
/karbon/common/KarbonDocument.cpp
 
/kpresenter/part/KPrNotes.cpp
 
/kpresenter/part/KPrNotes.h
 
/kpresenter/part/KPrSoundCollection.cpp
 
/kpresenter/part/KPrSoundCollection.h
 
/krita/shape/KritaShape.cpp
 
/kword/part/KWDocument.cpp
 
/libs/flake/CMakeLists.txt
 
/libs/flake/KoDataCenter.h
 
/libs/flake/KoImageCollection.cpp
 
/libs/flake/KoImageCollection.h
 
/libs/flake/KoImageData.cpp
 
/libs/flake/KoImageData.h
 
/libs/flake/KoPatternBackground.cpp
 
/libs/flake/KoShapeControllerBase.h
 
/libs/flake/KoShapeSavingContext.cpp
 
/libs/flake/KoShapeSavingContext.h
 
/plugins/pictureshape/PictureShape.cpp
 
/plugins/tableshape/TableShape.cpp
 
/filters/karbon/karbon1.x/Karbon1xImport.cpp
 
/filters/karbon/svg/svgexport.cc
 
/filters/karbon/svg/svgimport.cc
 
/filters/karbon/wmf/wmfimportparser.cc
 
/kpresenter/part/pagelayout/KPrPageLayouts.cpp
 
/kpresenter/part/pagelayout/KPrPageLayouts.h
 
/libs/flake/tests/CMakeLists.txt
 
/libs/flake/tests/MockShapes.h
 
/libs/kotext/styles/KoStyleManager.cpp
 
/libs/kotext/styles/KoStyleManager.h
 
/plugins/dockers/shapeselector/Canvas.cpp
 
/plugins/dockers/shapeselector/Canvas.h
 
/plugins/dockers/shapeselector/ItemStore.cpp
41 files changed in total