Image architecture now models importer/exporter architecture. Everything is 100% backwards compatible so that this won't break anything hopefully. Compiles neatly on Unix/Gnome.
*Soon* we'll want to make our ugly code that actually includes ie_impGraphic_XXX.h files only include ie_impGraphic.h and let that take care of conversions automagically for us. What you'll want to do is: 1) Load the image into a UT_ByteBuf 2) Construct an importer via IE_ImpGraphic::constructImporter(bytebuf, type, importer) 3) Call importer.importGraphic () 4) If it's a raster graphic, getRaster_PNG(), else do the magic for vector(SVG) graphics 5) You're done Before, one needed to do all sorts of messiness if the graphic wasn't being loaded from a file (i.e. an embedded graphic inside of MSWord or RTF). NB: these importers and platform image dialogs still use this messiness and need to be cleaned up. >From an API standpoint, this has reduced the lines of code needed now from 20-something to like 5 and shields you from ~95% of the ugliness that goes on behind the scenes. Another nice side-effect of this is that new graphic formats *could* be implemented as plugins. NB: all abiword raster graphics are represented as PNG internally NB: all abiword vector graphics are represented as SVG internally All registering/unregistering is done at XP level along with Textual import/export filters, so you shouldn't have to make any changes to your code. Dom CVS: ---------------------------------------------------------------------- CVS: Enter Log. Lines beginning with `CVS:' are removed automatically CVS: CVS: Committing in . CVS: CVS: Modified Files: CVS: src/wp/ap/beos/ap_BeOSApp.cpp src/wp/ap/mac/ap_MacApp.cpp CVS: src/wp/ap/qnx/ap_QNXApp.cpp src/wp/ap/unix/ap_UnixApp.cpp CVS: src/wp/ap/win/ap_Win32App.cpp src/wp/impexp/xp/ie_imp.cpp CVS: src/wp/impexp/xp/ie_impGraphic.cpp CVS: src/wp/impexp/xp/ie_impGraphic.h CVS: src/wp/impexp/xp/ie_impGraphic_BMP.cpp CVS: src/wp/impexp/xp/ie_impGraphic_BMP.h CVS: src/wp/impexp/xp/ie_impGraphic_JPEG.cpp CVS: src/wp/impexp/xp/ie_impGraphic_JPEG.h CVS: src/wp/impexp/xp/ie_impGraphic_PNG.cpp CVS: src/wp/impexp/xp/ie_impGraphic_PNG.h CVS: src/wp/impexp/xp/ie_impGraphic_SVG.cpp CVS: src/wp/impexp/xp/ie_impGraphic_SVG.h CVS: src/wp/impexp/xp/ie_impGraphic_WMF.cpp CVS: src/wp/impexp/xp/ie_impGraphic_WMF.h CVS: src/wp/impexp/xp/ie_impexp_Register.cpp CVS: src/wp/impexp/xp/ie_impexp_Register.h CVS: src/wp/impexp/xp/ie_types.h CVS: ----------------------------------------------------------------------
