You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openoffice.apache.org by al...@apache.org on 2013/01/10 18:28:42 UTC
svn commit: r1431512 [1/2] - in /openoffice/trunk/main:
automation/source/server/ avmedia/source/win/ basic/source/runtime/
canvas/source/vcl/ chart2/source/controller/main/
drawinglayer/source/processor2d/ drawinglayer/source/tools/
dtrans/source/win3...
Author: alg
Date: Thu Jan 10 17:28:40 2013
New Revision: 1431512
URL: http://svn.apache.org/viewvc?rev=1431512&view=rev
Log:
#121504# Support for alpha channel in clipboard for all systems
Added:
openoffice/trunk/main/vcl/inc/vcl/dibtools.hxx
- copied unchanged from r1431306, openoffice/branches/alg/clibboard/main/vcl/inc/vcl/dibtools.hxx
openoffice/trunk/main/vcl/source/gdi/dibtools.cxx
- copied unchanged from r1431306, openoffice/branches/alg/clibboard/main/vcl/source/gdi/dibtools.cxx
Removed:
openoffice/trunk/main/vcl/source/gdi/bitmap2.cxx
Modified:
openoffice/trunk/main/automation/source/server/statemnt.cxx
openoffice/trunk/main/avmedia/source/win/framegrabber.cxx
openoffice/trunk/main/basic/source/runtime/methods.cxx
openoffice/trunk/main/canvas/source/vcl/devicehelper.cxx
openoffice/trunk/main/canvas/source/vcl/spritedevicehelper.cxx
openoffice/trunk/main/chart2/source/controller/main/ChartController_Tools.cxx
openoffice/trunk/main/chart2/source/controller/main/ChartTransferable.cxx
openoffice/trunk/main/drawinglayer/source/processor2d/vclhelperbufferdevice.cxx
openoffice/trunk/main/drawinglayer/source/processor2d/vclmetafileprocessor2d.cxx
openoffice/trunk/main/drawinglayer/source/tools/converters.cxx
openoffice/trunk/main/dtrans/source/win32/dtobj/DOTransferable.cxx
openoffice/trunk/main/dtrans/source/win32/dtobj/FmtFilter.cxx
openoffice/trunk/main/dtrans/source/win32/dtobj/FmtFilter.hxx
openoffice/trunk/main/dtrans/source/win32/dtobj/XTDataObject.cxx
openoffice/trunk/main/dtrans/source/win32/ftransl/ftransl.cxx
openoffice/trunk/main/editeng/source/items/bulitem.cxx
openoffice/trunk/main/extensions/source/scanner/sanedlg.cxx
openoffice/trunk/main/external/gcc3_specific/makefile.mk
openoffice/trunk/main/filter/source/graphicfilter/eos2met/eos2met.cxx
openoffice/trunk/main/filter/source/graphicfilter/ios2met/ios2met.cxx
openoffice/trunk/main/filter/source/msfilter/msdffimp.cxx
openoffice/trunk/main/fpicker/source/office/iodlg.cxx
openoffice/trunk/main/framework/source/fwe/classes/addonsoptions.cxx
openoffice/trunk/main/framework/source/fwe/classes/imagewrapper.cxx
openoffice/trunk/main/framework/source/fwe/helper/actiontriggerhelper.cxx
openoffice/trunk/main/sc/source/filter/excel/xiescher.cxx
openoffice/trunk/main/sc/source/ui/app/drwtrans.cxx
openoffice/trunk/main/sc/source/ui/app/transobj.cxx
openoffice/trunk/main/sc/source/ui/docshell/docsh.cxx
openoffice/trunk/main/sc/source/ui/inc/viewfunc.hxx
openoffice/trunk/main/sc/source/ui/view/viewfun3.cxx
openoffice/trunk/main/sc/source/ui/view/viewfun5.cxx
openoffice/trunk/main/sc/source/ui/view/viewfun7.cxx
openoffice/trunk/main/sd/source/ui/app/sdxfer.cxx
openoffice/trunk/main/sd/source/ui/unoidl/unopage.cxx
openoffice/trunk/main/sd/source/ui/view/sdview3.cxx
openoffice/trunk/main/sfx2/source/appl/fileobj.cxx
openoffice/trunk/main/sfx2/source/appl/linkmgr2.cxx
openoffice/trunk/main/sfx2/source/dialog/filedlghelper.cxx
openoffice/trunk/main/sfx2/source/dialog/intro.cxx
openoffice/trunk/main/sfx2/source/doc/docinf.cxx
openoffice/trunk/main/sot/inc/sot/formats.hxx
openoffice/trunk/main/sot/source/base/exchange.cxx
openoffice/trunk/main/sot/source/base/formats.cxx
openoffice/trunk/main/svtools/bmpmaker/bmpcore.cxx
openoffice/trunk/main/svtools/bmpmaker/bmpsum.cxx
openoffice/trunk/main/svtools/inc/svtools/transfer.hxx
openoffice/trunk/main/svtools/source/filter/filter.cxx
openoffice/trunk/main/svtools/source/filter/wmf/emfwr.cxx
openoffice/trunk/main/svtools/source/filter/wmf/enhwmf.cxx
openoffice/trunk/main/svtools/source/filter/wmf/winwmf.cxx
openoffice/trunk/main/svtools/source/filter/wmf/wmfwr.cxx
openoffice/trunk/main/svtools/source/graphic/graphic.cxx
openoffice/trunk/main/svtools/source/graphic/provider.cxx
openoffice/trunk/main/svtools/source/misc/transfer.cxx
openoffice/trunk/main/svx/inc/svx/xoutbmp.hxx
openoffice/trunk/main/svx/source/gallery2/galmisc.cxx
openoffice/trunk/main/svx/source/gallery2/galobj.cxx
openoffice/trunk/main/svx/source/sdr/overlay/overlaymanagerbuffered.cxx
openoffice/trunk/main/svx/source/xoutdev/_xoutbmp.cxx
openoffice/trunk/main/svx/source/xoutdev/xattrbmp.cxx
openoffice/trunk/main/sw/source/core/view/viewsh.cxx
openoffice/trunk/main/sw/source/filter/ww1/w1filter.cxx
openoffice/trunk/main/sw/source/filter/ww8/ww8par.hxx
openoffice/trunk/main/sw/source/ui/dochdl/swdtflvr.cxx
openoffice/trunk/main/toolkit/source/awt/vclxbitmap.cxx
openoffice/trunk/main/toolkit/source/helper/vclunohelper.cxx
openoffice/trunk/main/vcl/Library_vcl.mk
openoffice/trunk/main/vcl/Package_inc.mk
openoffice/trunk/main/vcl/aqua/source/dtrans/DataFlavorMapping.cxx
openoffice/trunk/main/vcl/aqua/source/dtrans/OSXTransferable.cxx
openoffice/trunk/main/vcl/aqua/source/dtrans/PictToBmpFlt.cxx
openoffice/trunk/main/vcl/aqua/source/dtrans/PictToBmpFlt.hxx
openoffice/trunk/main/vcl/inc/vcl/alpha.hxx
openoffice/trunk/main/vcl/inc/vcl/bitmap.hxx
openoffice/trunk/main/vcl/inc/vcl/bitmapex.hxx
openoffice/trunk/main/vcl/inc/vcl/pngwrite.hxx
openoffice/trunk/main/vcl/inc/vcl/salbtype.hxx
openoffice/trunk/main/vcl/inc/vcl/wall.hxx
openoffice/trunk/main/vcl/source/gdi/animate.cxx
openoffice/trunk/main/vcl/source/gdi/bitmapex.cxx
openoffice/trunk/main/vcl/source/gdi/bmpacc2.cxx
openoffice/trunk/main/vcl/source/gdi/bmpconv.cxx
openoffice/trunk/main/vcl/source/gdi/cvtsvm.cxx
openoffice/trunk/main/vcl/source/gdi/impgraph.cxx
openoffice/trunk/main/vcl/source/gdi/impimagetree.cxx
openoffice/trunk/main/vcl/source/gdi/metaact.cxx
openoffice/trunk/main/vcl/source/gdi/pdfwriter_impl2.cxx
openoffice/trunk/main/vcl/source/gdi/wall.cxx
Modified: openoffice/trunk/main/automation/source/server/statemnt.cxx
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/automation/source/server/statemnt.cxx?rev=1431512&r1=1431511&r2=1431512&view=diff
==============================================================================
--- openoffice/trunk/main/automation/source/server/statemnt.cxx (original)
+++ openoffice/trunk/main/automation/source/server/statemnt.cxx Thu Jan 10 17:28:40 2013
@@ -19,8 +19,6 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_automation.hxx"
#include <com/sun/star/frame/XFramesSupplier.hpp>
@@ -31,39 +29,19 @@
#include <comphelper/uieventslogger.hxx>
#include <tools/wintypes.hxx>
-#ifndef _DIALOG_HXX //autogen
#include <vcl/dialog.hxx>
-#endif
-#ifndef _BUTTON_HXX //autogen
#include <vcl/button.hxx>
-#endif
#include <vcl/menubtn.hxx>
#include <svtools/svtreebx.hxx>
#include <svtools/brwbox.hxx>
-#ifndef _MSGBOX_HXX //autogen
#include <vcl/msgbox.hxx>
-#endif
-#ifndef _DOCKWIN_HXX //autogen
#include <vcl/dockwin.hxx>
-#endif
-#ifndef _FLOATWIN_HXX //autogen
#include <vcl/floatwin.hxx>
-#endif
-#ifndef _LSTBOX_HXX //autogen
#include <vcl/lstbox.hxx>
-#endif
-#ifndef _COMBOBOX_HXX //autogen
#include <vcl/combobox.hxx>
-#endif
-#ifndef _MOREBTN_HXX //autogen
#include <vcl/morebtn.hxx>
-#endif
-#ifndef _FIELD_HXX //autogen
#include <vcl/field.hxx>
-#endif
-#ifndef _TOOLBOX_HXX //autogen
#include <vcl/toolbox.hxx>
-#endif
#include <vcl/tabctrl.hxx>
#include <vcl/tabpage.hxx>
#include <vcl/menu.hxx>
@@ -81,7 +59,6 @@
#include <svtools/table/tablecontrolinterface.hxx>
#include <svl/poolitem.hxx>
#include <svtools/extensionlistbox.hxx>
-// Hat keinen Includeschutz
#include <svtools/svtdata.hxx>
#include <tools/time.hxx>
#include <svtools/stringtransfer.hxx>
@@ -89,40 +66,29 @@
#include <tools/fsys.hxx>
#include <svl/stritem.hxx>
#include <svtools/ttprops.hxx>
-#ifndef _BASIC_TTRESHLP_HXX
#include <basic/ttstrhlp.hxx>
-#endif
#include <basic/dispdefs.hxx>
#include <basic/sbuno.hxx>
#include <vos/socket.hxx>
#include <svl/pickerhistory.hxx>
#include <com/sun/star/util/XCancellable.hpp>
-
#include <sot/storage.hxx>
#include <sot/storinfo.hxx>
#include "statemnt.hxx"
#include "scmdstrm.hxx"
-
-#ifndef _RETSRTM_HXX
#include "retstrm.hxx"
-#endif
-
#if OSL_DEBUG_LEVEL > 1
#include "editwin.hxx"
#endif
#include "rcontrol.hxx"
#include <automation/communi.hxx>
#include "testtool.hxx"
-
#include "profiler.hxx"
-
#include "recorder.hxx"
-
#include "testtool.hrc"
#include <basic/svtmsg.hrc>
-
#include <algorithm>
-
+#include <vcl/dibtools.hxx>
using namespace com::sun::star::frame;
using namespace com::sun::star::uno;
@@ -3932,7 +3898,7 @@ sal_Bool StatementControl::HandleVisible
SvFileStream fOut;
fOut.Open(aString1,STREAM_STD_WRITE);
- aBmp.Write(fOut);
+ WriteDIB(aBmp, fOut, true, true);
if ( fOut.GetError() )
ReportError( aUId, GEN_RES_STR1( S_ERROR_SAVING_IMAGE, UniString::CreateFromInt32( fOut.GetError() ) ) );
fOut.Close();
Modified: openoffice/trunk/main/avmedia/source/win/framegrabber.cxx
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/avmedia/source/win/framegrabber.cxx?rev=1431512&r1=1431511&r2=1431512&view=diff
==============================================================================
--- openoffice/trunk/main/avmedia/source/win/framegrabber.cxx (original)
+++ openoffice/trunk/main/avmedia/source/win/framegrabber.cxx Thu Jan 10 17:28:40 2013
@@ -47,6 +47,7 @@
#include <tools/stream.hxx>
#include <vcl/graph.hxx>
#include <unotools/localfilehelper.hxx>
+#include <vcl/dibtools.hxx>
#define AVMEDIA_WIN_FRAMEGRABBER_IMPLEMENTATIONNAME "com.sun.star.comp.avmedia.FrameGrabber_DirectX"
#define AVMEDIA_WIN_FRAMEGRABBER_SERVICENAME "com.sun.star.media.FrameGrabber_DirectX"
@@ -191,7 +192,7 @@ uno::Reference< graphic::XGraphic > SAL_
SvMemoryStream aMemStm( pBuffer, nSize, STREAM_READ | STREAM_WRITE );
Bitmap aBmp;
- if( aBmp.Read( aMemStm, false ) && !aBmp.IsEmpty() )
+ if( ReadDIB(aBmp, aMemStm, false ) && !aBmp.IsEmpty() )
{
const Graphic aGraphic( aBmp );
xRet = aGraphic.GetXGraphic();
Modified: openoffice/trunk/main/basic/source/runtime/methods.cxx
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/basic/source/runtime/methods.cxx?rev=1431512&r1=1431511&r2=1431512&view=diff
==============================================================================
--- openoffice/trunk/main/basic/source/runtime/methods.cxx (original)
+++ openoffice/trunk/main/basic/source/runtime/methods.cxx Thu Jan 10 17:28:40 2013
@@ -19,17 +19,12 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_basic.hxx"
-
#include <tools/date.hxx>
#include <basic/sbxvar.hxx>
-#ifndef _VOS_PROCESS_HXX
#include <vos/process.hxx>
-#endif
#include <vcl/svapp.hxx>
#include <vcl/settings.hxx>
#include <vcl/sound.hxx>
@@ -44,6 +39,7 @@
#include <unotools/ucbstreamhelper.hxx>
#include <tools/wldcrd.hxx>
#include <i18npool/lang.h>
+#include <vcl/dibtools.hxx>
#include "runtime.hxx"
#include "sbunoobj.hxx"
@@ -4189,8 +4185,8 @@ RTLFUNC(LoadPicture)
if( pStream != NULL )
{
Bitmap aBmp;
- *pStream >> aBmp;
- Graphic aGraphic( aBmp );
+ ReadDIB(aBmp, *pStream, true);
+ Graphic aGraphic(aBmp);
SbxObjectRef xRef = new SbStdPicture;
((SbStdPicture*)(SbxObject*)xRef)->SetGraphic( aGraphic );
Modified: openoffice/trunk/main/canvas/source/vcl/devicehelper.cxx
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/canvas/source/vcl/devicehelper.cxx?rev=1431512&r1=1431511&r2=1431512&view=diff
==============================================================================
--- openoffice/trunk/main/canvas/source/vcl/devicehelper.cxx (original)
+++ openoffice/trunk/main/canvas/source/vcl/devicehelper.cxx Thu Jan 10 17:28:40 2013
@@ -19,27 +19,24 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_canvas.hxx"
#include <canvas/debug.hxx>
#include <tools/diagnose_ex.h>
#include <canvas/canvastools.hxx>
-
#include <rtl/instance.hxx>
#include <toolkit/helper/vclunohelper.hxx>
#include <vcl/canvastools.hxx>
#include <basegfx/tools/canvastools.hxx>
#include <basegfx/tools/unopolypolygon.hxx>
+#include <vcl/dibtools.hxx>
#include "devicehelper.hxx"
#include "spritecanvas.hxx"
#include "spritecanvashelper.hxx"
#include "canvasbitmap.hxx"
-
using namespace ::com::sun::star;
namespace vclcanvas
@@ -227,8 +224,7 @@ namespace vclcanvas
OutputDevice& rOutDev = mpOutDev->getOutDev();
bool bOldMap( rOutDev.IsMapModeEnabled() );
rOutDev.EnableMapMode( sal_False );
- aStream << rOutDev.GetBitmap(aEmptyPoint,
- rOutDev.GetOutputSizePixel());
+ WriteDIB(rOutDev.GetBitmap(aEmptyPoint, rOutDev.GetOutputSizePixel()), aStream, false, true);
rOutDev.EnableMapMode( bOldMap );
++nFilePostfixCount;
Modified: openoffice/trunk/main/canvas/source/vcl/spritedevicehelper.cxx
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/canvas/source/vcl/spritedevicehelper.cxx?rev=1431512&r1=1431511&r2=1431512&view=diff
==============================================================================
--- openoffice/trunk/main/canvas/source/vcl/spritedevicehelper.cxx (original)
+++ openoffice/trunk/main/canvas/source/vcl/spritedevicehelper.cxx Thu Jan 10 17:28:40 2013
@@ -19,24 +19,21 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_canvas.hxx"
#include <canvas/debug.hxx>
#include <canvas/canvastools.hxx>
-
#include <toolkit/helper/vclunohelper.hxx>
#include <vcl/canvastools.hxx>
#include <basegfx/tools/canvastools.hxx>
+#include <vcl/dibtools.hxx>
#include "spritedevicehelper.hxx"
#include "spritecanvas.hxx"
#include "spritecanvashelper.hxx"
#include "canvasbitmap.hxx"
-
using namespace ::com::sun::star;
namespace vclcanvas
@@ -144,8 +141,7 @@ namespace vclcanvas
const ::Point aEmptyPoint;
mpBackBuffer->getOutDev().EnableMapMode( sal_False );
- aStream << mpBackBuffer->getOutDev().GetBitmap(aEmptyPoint,
- mpBackBuffer->getOutDev().GetOutputSizePixel());
+ WriteDIB(mpBackBuffer->getOutDev().GetBitmap(aEmptyPoint, mpBackBuffer->getOutDev().GetOutputSizePixel()), aStream, false, true);
}
++nFilePostfixCount;
Modified: openoffice/trunk/main/chart2/source/controller/main/ChartController_Tools.cxx
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/chart2/source/controller/main/ChartController_Tools.cxx?rev=1431512&r1=1431511&r2=1431512&view=diff
==============================================================================
--- openoffice/trunk/main/chart2/source/controller/main/ChartController_Tools.cxx (original)
+++ openoffice/trunk/main/chart2/source/controller/main/ChartController_Tools.cxx Thu Jan 10 17:28:40 2013
@@ -340,9 +340,9 @@ void ChartController::executeDispatch_Pa
else if( aDataHelper.HasFormat( FORMAT_BITMAP ))
{
// bitmap (non-graphic-manager)
- Bitmap aBmp;
- if( aDataHelper.GetBitmap( FORMAT_BITMAP, aBmp ))
- aGraphic = Graphic( aBmp );
+ BitmapEx aBmpEx;
+ if( aDataHelper.GetBitmapEx( FORMAT_BITMAP, aBmpEx ))
+ aGraphic = Graphic( aBmpEx );
}
else if( aDataHelper.HasFormat( FORMAT_STRING ))
{
Modified: openoffice/trunk/main/chart2/source/controller/main/ChartTransferable.cxx
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/chart2/source/controller/main/ChartTransferable.cxx?rev=1431512&r1=1431511&r2=1431512&view=diff
==============================================================================
--- openoffice/trunk/main/chart2/source/controller/main/ChartTransferable.cxx (original)
+++ openoffice/trunk/main/chart2/source/controller/main/ChartTransferable.cxx Thu Jan 10 17:28:40 2013
@@ -101,7 +101,7 @@ sal_Bool ChartTransferable::GetData( con
else if( nFormat == FORMAT_BITMAP )
{
Graphic aGraphic( m_xMetaFileGraphic );
- bResult = SetBitmap( aGraphic.GetBitmap(), rFlavor );
+ bResult = SetBitmapEx( aGraphic.GetBitmapEx(), rFlavor );
}
}
Modified: openoffice/trunk/main/drawinglayer/source/processor2d/vclhelperbufferdevice.cxx
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/drawinglayer/source/processor2d/vclhelperbufferdevice.cxx?rev=1431512&r1=1431511&r2=1431512&view=diff
==============================================================================
--- openoffice/trunk/main/drawinglayer/source/processor2d/vclhelperbufferdevice.cxx (original)
+++ openoffice/trunk/main/drawinglayer/source/processor2d/vclhelperbufferdevice.cxx Thu Jan 10 17:28:40 2013
@@ -19,8 +19,6 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_drawinglayer.hxx"
@@ -32,6 +30,7 @@
#include <vcl/timer.hxx>
#include <comphelper/broadcasthelper.hxx>
#include <vcl/lazydelete.hxx>
+#include <vcl/dibtools.hxx>
//////////////////////////////////////////////////////////////////////////////
// buffered VDev usage
@@ -299,7 +298,7 @@ namespace drawinglayer
if(bDoSaveForVisualControl)
{
SvFileStream aNew((const String&)String(ByteString( "c:\\content.bmp" ), RTL_TEXTENCODING_UTF8), STREAM_WRITE|STREAM_TRUNC);
- aNew << aContent;
+ WriteDIB(aContent, aNew, false, true);
}
if(mpAlpha)
@@ -310,7 +309,7 @@ namespace drawinglayer
if(bDoSaveForVisualControl)
{
SvFileStream aNew((const String&)String(ByteString( "c:\\transparence.bmp" ), RTL_TEXTENCODING_UTF8), STREAM_WRITE|STREAM_TRUNC);
- aNew << aAlphaMask.GetBitmap();
+ WriteDIB(aAlphaMask.GetBitmap(), aNew, false, true);
}
mrOutDev.DrawBitmapEx(maDestPixel.TopLeft(), BitmapEx(aContent, aAlphaMask));
@@ -323,7 +322,7 @@ namespace drawinglayer
if(bDoSaveForVisualControl)
{
SvFileStream aNew((const String&)String(ByteString( "c:\\mask.bmp" ), RTL_TEXTENCODING_UTF8), STREAM_WRITE|STREAM_TRUNC);
- aNew << aMask;
+ WriteDIB(aMask, aNew, false, true);
}
mrOutDev.DrawBitmapEx(maDestPixel.TopLeft(), BitmapEx(aContent, aMask));
Modified: openoffice/trunk/main/drawinglayer/source/processor2d/vclmetafileprocessor2d.cxx
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/drawinglayer/source/processor2d/vclmetafileprocessor2d.cxx?rev=1431512&r1=1431511&r2=1431512&view=diff
==============================================================================
--- openoffice/trunk/main/drawinglayer/source/processor2d/vclmetafileprocessor2d.cxx (original)
+++ openoffice/trunk/main/drawinglayer/source/processor2d/vclmetafileprocessor2d.cxx Thu Jan 10 17:28:40 2013
@@ -19,8 +19,6 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_drawinglayer.hxx"
@@ -60,6 +58,7 @@
#include <drawinglayer/primitive2d/pagepreviewprimitive2d.hxx>
#include <drawinglayer/primitive2d/epsprimitive2d.hxx>
#include <basegfx/polygon/b2dlinegeometry.hxx>
+#include <vcl/dibtools.hxx>
//////////////////////////////////////////////////////////////////////////////
// for PDFExtOutDevData Graphic support
@@ -2041,7 +2040,8 @@ namespace drawinglayer
if(bDoSaveForVisualControl)
{
SvFileStream aNew(String(ByteString( "c:\\test.bmp" ), RTL_TEXTENCODING_UTF8), STREAM_WRITE|STREAM_TRUNC);
- aNew << aBmContent;
+
+ WriteDIB(aBmContent, aNew, false, true);
}
#endif
Modified: openoffice/trunk/main/drawinglayer/source/tools/converters.cxx
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/drawinglayer/source/tools/converters.cxx?rev=1431512&r1=1431511&r2=1431512&view=diff
==============================================================================
--- openoffice/trunk/main/drawinglayer/source/tools/converters.cxx (original)
+++ openoffice/trunk/main/drawinglayer/source/tools/converters.cxx Thu Jan 10 17:28:40 2013
@@ -32,6 +32,7 @@
#ifdef DBG_UTIL
#include <tools/stream.hxx>
+#include <vcl/pngwrite.hxx>
#endif
//////////////////////////////////////////////////////////////////////////////
@@ -129,7 +130,8 @@ namespace drawinglayer
if(bDoSaveForVisualControl)
{
SvFileStream aNew((const String&)String(ByteString( "c:\\test.png" ), RTL_TEXTENCODING_UTF8), STREAM_WRITE|STREAM_TRUNC);
- aNew << aRetval;
+ ::vcl::PNGWriter aPNGWriter(aRetval);
+ aPNGWriter.Write(aNew);
}
#endif
Modified: openoffice/trunk/main/dtrans/source/win32/dtobj/DOTransferable.cxx
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/dtrans/source/win32/dtobj/DOTransferable.cxx?rev=1431512&r1=1431511&r2=1431512&view=diff
==============================================================================
--- openoffice/trunk/main/dtrans/source/win32/dtobj/DOTransferable.cxx (original)
+++ openoffice/trunk/main/dtrans/source/win32/dtobj/DOTransferable.cxx Thu Jan 10 17:28:40 2013
@@ -358,10 +358,14 @@ CDOTransferable::ByteSequence_t SAL_CALL
clipDataToByteStream( aFormatEtc.getClipformat( ), stgmedium, byteStream );
// format conversion if necessary
- if ( CF_DIB == aFormatEtc.getClipformat() )
- byteStream = WinDIBToOOBMP( byteStream );
- else if ( CF_METAFILEPICT == aFormatEtc.getClipformat() )
- byteStream = WinMFPictToOOMFPict( byteStream );
+ if(CF_DIBV5 == aFormatEtc.getClipformat() || CF_DIB == aFormatEtc.getClipformat())
+ {
+ byteStream = WinDIBToOOBMP(byteStream);
+ }
+ else if(CF_METAFILEPICT == aFormatEtc.getClipformat())
+ {
+ byteStream = WinMFPictToOOMFPict(byteStream);
+ }
}
ReleaseStgMedium( &stgmedium );
Modified: openoffice/trunk/main/dtrans/source/win32/dtobj/FmtFilter.cxx
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/dtrans/source/win32/dtobj/FmtFilter.cxx?rev=1431512&r1=1431511&r2=1431512&view=diff
==============================================================================
--- openoffice/trunk/main/dtrans/source/win32/dtobj/FmtFilter.cxx (original)
+++ openoffice/trunk/main/dtrans/source/win32/dtobj/FmtFilter.cxx Thu Jan 10 17:28:40 2013
@@ -195,30 +195,33 @@ HENHMETAFILE SAL_CALL OOMFPictToWinENHMF
Sequence< sal_Int8 > SAL_CALL WinDIBToOOBMP( const Sequence< sal_Int8 >& aWinDIB )
{
- OSL_ASSERT( aWinDIB.getLength( ) > sizeof( BITMAPINFOHEADER ) );
-
- Sequence< sal_Int8 > ooBmpStream;
+ OSL_ENSURE(aWinDIB.getLength() > sizeof(BITMAPINFOHEADER), "CF_DIBV5/CF_DIB too small (!)");
+ Sequence< sal_Int8 > ooBmpStream;
- ooBmpStream.realloc( aWinDIB.getLength( ) + sizeof(BITMAPFILEHEADER) );
-
- const BITMAPINFOHEADER *pBmpInfoHdr = (const BITMAPINFOHEADER*)aWinDIB.getConstArray();
- BITMAPFILEHEADER *pBmpFileHdr = reinterpret_cast< BITMAPFILEHEADER* >( ooBmpStream.getArray() );
- DWORD nOffset = sizeof( BITMAPFILEHEADER ) + sizeof( BITMAPINFOHEADER );
-
- rtl_copyMemory( pBmpFileHdr + 1, pBmpInfoHdr, aWinDIB.getLength( ) );
-
- if( pBmpInfoHdr->biBitCount <= 8 )
- nOffset += ( pBmpInfoHdr->biClrUsed ? pBmpInfoHdr->biClrUsed : ( 1 << pBmpInfoHdr->biBitCount ) ) << 2;
- else if( ( BI_BITFIELDS == pBmpInfoHdr->biCompression ) && ( ( 16 == pBmpInfoHdr->biBitCount ) || ( 32 == pBmpInfoHdr->biBitCount ) ) )
- nOffset += 12;
-
- pBmpFileHdr->bfType = 'MB';
- pBmpFileHdr->bfSize = 0; // maybe: nMemSize + sizeof(BITMAPFILEHEADER)
- pBmpFileHdr->bfReserved1 = 0;
- pBmpFileHdr->bfReserved2 = 0;
- pBmpFileHdr->bfOffBits = nOffset;
+ ooBmpStream.realloc(aWinDIB.getLength( ) + sizeof(BITMAPFILEHEADER));
+ const BITMAPINFOHEADER* pBmpInfoHdr = reinterpret_cast< const BITMAPINFOHEADER* >(aWinDIB.getConstArray());
+ BITMAPFILEHEADER* pBmpFileHdr = reinterpret_cast< BITMAPFILEHEADER* >(ooBmpStream.getArray());
+ const DWORD nSizeInfoOrV5(pBmpInfoHdr->biSize > sizeof(BITMAPINFOHEADER) ? sizeof(BITMAPV5HEADER) : sizeof(BITMAPINFOHEADER));
+ DWORD nOffset(sizeof(BITMAPFILEHEADER) + nSizeInfoOrV5);
- return ooBmpStream;
+ rtl_copyMemory(pBmpFileHdr + 1, pBmpInfoHdr, aWinDIB.getLength());
+
+ if(pBmpInfoHdr->biBitCount <= 8)
+ {
+ nOffset += (pBmpInfoHdr->biClrUsed ? pBmpInfoHdr->biClrUsed : (1 << pBmpInfoHdr->biBitCount)) << 2;
+ }
+ else if((BI_BITFIELDS == pBmpInfoHdr->biCompression ) && ((16 == pBmpInfoHdr->biBitCount ) || (32 == pBmpInfoHdr->biBitCount )))
+ {
+ nOffset += 12;
+ }
+
+ pBmpFileHdr->bfType = 'MB';
+ pBmpFileHdr->bfSize = 0; // maybe: nMemSize + sizeof(BITMAPFILEHEADER)
+ pBmpFileHdr->bfReserved1 = 0;
+ pBmpFileHdr->bfReserved2 = 0;
+ pBmpFileHdr->bfOffBits = nOffset;
+
+ return ooBmpStream;
}
//------------------------------------------------------------------------
@@ -227,9 +230,6 @@ Sequence< sal_Int8 > SAL_CALL WinDIBToOO
Sequence< sal_Int8 > SAL_CALL OOBmpToWinDIB( Sequence< sal_Int8 >& aOOBmp )
{
- OSL_ASSERT( aOOBmp.getLength( ) >
- ( sizeof( BITMAPFILEHEADER ) + sizeof( BITMAPINFOHEADER ) ) );
-
Sequence< sal_Int8 > winDIBStream( aOOBmp.getLength( ) - sizeof( BITMAPFILEHEADER ) );
rtl_copyMemory( winDIBStream.getArray( ),
Modified: openoffice/trunk/main/dtrans/source/win32/dtobj/FmtFilter.hxx
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/dtrans/source/win32/dtobj/FmtFilter.hxx?rev=1431512&r1=1431511&r2=1431512&view=diff
==============================================================================
--- openoffice/trunk/main/dtrans/source/win32/dtobj/FmtFilter.hxx (original)
+++ openoffice/trunk/main/dtrans/source/win32/dtobj/FmtFilter.hxx Thu Jan 10 17:28:40 2013
@@ -70,6 +70,8 @@ com::sun::star::uno::Sequence< sal_Int8
/*------------------------------------------------------------------------
input:
aOOBmp - sequence of bytes containing a openoffice bitmap
+ May contain CF_DIBV5 or CF_DIB, but removing the BITMAPFILEHEADER
+ is always the same size
------------------------------------------------------------------------*/
com::sun::star::uno::Sequence< sal_Int8 > SAL_CALL OOBmpToWinDIB( com::sun::star::uno::Sequence< sal_Int8 >& aOOBmp );
Modified: openoffice/trunk/main/dtrans/source/win32/dtobj/XTDataObject.cxx
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/dtrans/source/win32/dtobj/XTDataObject.cxx?rev=1431512&r1=1431511&r2=1431512&view=diff
==============================================================================
--- openoffice/trunk/main/dtrans/source/win32/dtobj/XTDataObject.cxx (original)
+++ openoffice/trunk/main/dtrans/source/win32/dtobj/XTDataObject.cxx Thu Jan 10 17:28:40 2013
@@ -307,8 +307,22 @@ void SAL_CALL CXTDataObject::renderAnyDa
nRequiredMemSize = sizeof( sal_Int8 ) * clipDataStream.getLength( ) + 1;
// prepare data for transmision
- if ( CF_DIB == fetc.cfFormat )
- clipDataStream = OOBmpToWinDIB( clipDataStream );
+ if ( CF_DIBV5 == fetc.cfFormat || CF_DIB == fetc.cfFormat )
+ {
+#ifdef DBG_UTIL
+ if(CF_DIBV5 == fetc.cfFormat)
+ {
+ OSL_ENSURE(clipDataStream.getLength( ) > (sizeof(BITMAPFILEHEADER) + sizeof(BITMAPV5HEADER)), "Wrong size on CF_DIBV5 data (!)");
+ }
+ else // CF_DIB == fetc.cfFormat
+ {
+ OSL_ENSURE(clipDataStream.getLength( ) > (sizeof(BITMAPFILEHEADER) + sizeof(BITMAPINFOHEADER)), "Wrong size on CF_DIB data (!)");
+ }
+#endif
+
+ // remove BITMAPFILEHEADER
+ clipDataStream = OOBmpToWinDIB( clipDataStream );
+ }
if ( CF_METAFILEPICT == fetc.cfFormat )
{
Modified: openoffice/trunk/main/dtrans/source/win32/ftransl/ftransl.cxx
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/dtrans/source/win32/ftransl/ftransl.cxx?rev=1431512&r1=1431511&r2=1431512&view=diff
==============================================================================
--- openoffice/trunk/main/dtrans/source/win32/ftransl/ftransl.cxx (original)
+++ openoffice/trunk/main/dtrans/source/win32/ftransl/ftransl.cxx Thu Jan 10 17:28:40 2013
@@ -276,6 +276,7 @@ void SAL_CALL CDataFormatTranslator::ini
//SOT_FORMATSTR_ID_DIF
m_TranslTable.push_back(FormatEntry("application/x-openoffice-dif;windows_formatname=\"DIF\"", "DIF", "DIF", CF_DIF, CPPUTYPE_DEFAULT));
// SOT_FORMAT_BITMAP
+ m_TranslTable.push_back(FormatEntry("application/x-openoffice-bitmap;windows_formatname=\"Bitmap\"", "Bitmap", "Bitmap", CF_DIBV5, CPPUTYPE_DEFAULT));
m_TranslTable.push_back(FormatEntry("application/x-openoffice-bitmap;windows_formatname=\"Bitmap\"", "Bitmap", "Bitmap", CF_DIB, CPPUTYPE_DEFAULT));
m_TranslTable.push_back(FormatEntry("application/x-openoffice-bitmap;windows_formatname=\"Bitmap\"", "Bitmap", "Bitmap", CF_BITMAP, CPPUTYPE_DEFAULT));
// SOT_FORMAT_STRING
@@ -507,6 +508,8 @@ void SAL_CALL CDataFormatTranslator::ini
m_TranslTable.push_back(FormatEntry("application/vnd.sun.xml.dialog", "Dialog 6.0", NULL, CF_INVALID, CPPUTYPE_DEFAULT));
//SOT_FORMATSTR_ID_BMP
m_TranslTable.push_back(FormatEntry("image/bmp", "Windows Bitmap", NULL, CF_INVALID, CPPUTYPE_DEFAULT));
+ //SOT_FORMATSTR_ID_PNG
+ m_TranslTable.push_back(FormatEntry("image/png", "PNG", NULL, CF_INVALID, CPPUTYPE_DEFAULT));
//SOT_FORMATSTR_ID_DUMMY3
m_TranslTable.push_back(FormatEntry("application/x-openoffice-dummy3;windows_formatname=\"SO_DUMMYFORMAT_3\"", "SO_DUMMYFORMAT_3", NULL, CF_INVALID, CPPUTYPE_DEFAULT));
//SOT_FORMATSTR_ID_DUMMY4
Modified: openoffice/trunk/main/editeng/source/items/bulitem.cxx
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/editeng/source/items/bulitem.cxx?rev=1431512&r1=1431511&r2=1431512&view=diff
==============================================================================
--- openoffice/trunk/main/editeng/source/items/bulitem.cxx (original)
+++ openoffice/trunk/main/editeng/source/items/bulitem.cxx Thu Jan 10 17:28:40 2013
@@ -19,22 +19,16 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_editeng.hxx"
-// include ---------------------------------------------------------------
#include <tools/stream.hxx>
#include <vcl/outdev.hxx>
-
#define _SVX_BULITEM_CXX
-
#include <editeng/bulitem.hxx>
#include <editeng/editrids.hrc>
-
-// #90477#
#include <tools/tenccvt.hxx>
+#include <vcl/dibtools.hxx>
#define BULITEM_VERSION ((sal_uInt16)2)
@@ -190,8 +184,9 @@ SvxBulletItem::SvxBulletItem( SvStream&
// #69345# Errorcode beim Bitmap lesen ignorieren,
// siehe Kommentar #67581# in SvxBulletItem::Store()
sal_Bool bOldError = rStrm.GetError() ? sal_True : sal_False;
- rStrm >> aBmp;
- if ( !bOldError && rStrm.GetError() )
+ ReadDIB(aBmp, rStrm, true);
+
+ if ( !bOldError && rStrm.GetError() )
{
rStrm.ResetError();
// #71493# Keine Warnung: Das BulletItem interessiert seit 5.0 im Dateiformat nicht mehr.
@@ -395,7 +390,9 @@ SvStream& SvxBulletItem::Store( SvStream
const Bitmap aBmp( pGraphicObject->GetGraphic().GetBitmap() );
sal_uLong nBytes = aBmp.GetSizeBytes();
if ( nBytes < sal_uLong(0xFF00*nFac) )
- rStrm << aBmp;
+ {
+ WriteDIB(aBmp, rStrm, false, true);
+ }
sal_uLong nEnd = rStrm.Tell();
// #67581# Item darf mit Overhead nicht mehr als 64K schreiben,
Modified: openoffice/trunk/main/extensions/source/scanner/sanedlg.cxx
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/extensions/source/scanner/sanedlg.cxx?rev=1431512&r1=1431511&r2=1431512&view=diff
==============================================================================
--- openoffice/trunk/main/extensions/source/scanner/sanedlg.cxx (original)
+++ openoffice/trunk/main/extensions/source/scanner/sanedlg.cxx Thu Jan 10 17:28:40 2013
@@ -19,20 +19,18 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_extensions.hxx"
#include <stdio.h>
#include <stdlib.h>
#include <tools/config.hxx>
-
#include <vcl/msgbox.hxx>
#include <sanedlg.hxx>
#include <sanedlg.hrc>
#include <grid.hxx>
#include <math.h>
+#include <vcl/dibtools.hxx>
#define USE_SAVE_STATE
#undef SAVE_ALL_STATES
@@ -732,7 +730,7 @@ void SaneDlg::AcquirePreview()
fprintf( stderr, "Previewbitmapstream contains %d bytes\n", (int)aTransporter.getStream().Tell() );
#endif
aTransporter.getStream().Seek( STREAM_SEEK_TO_BEGIN );
- maPreviewBitmap.Read( aTransporter.getStream(), sal_True );
+ ReadDIB(maPreviewBitmap, aTransporter.getStream(), true);
}
SetAdjustedNumericalValue( "resolution", fResl );
Modified: openoffice/trunk/main/external/gcc3_specific/makefile.mk
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/external/gcc3_specific/makefile.mk?rev=1431512&r1=1431511&r2=1431512&view=diff
==============================================================================
--- openoffice/trunk/main/external/gcc3_specific/makefile.mk (original)
+++ openoffice/trunk/main/external/gcc3_specific/makefile.mk Thu Jan 10 17:28:40 2013
@@ -27,6 +27,8 @@ TARGET=gcc3_specific
# ------------------------------------------------------------------
+.IF "$(BUILD_SPECIAL)"==""
+
.IF "$(GUI)" == "WNT"
.IF "$(COM)" == "GCC"
@@ -79,6 +81,7 @@ $(LB)$/libgcc_s.so.$(SHORTSTDC3) :
.ENDIF
.ENDIF
+.ENDIF # "$(BUILD_SPECIAL)"==""
.INCLUDE: target.mk
Modified: openoffice/trunk/main/filter/source/graphicfilter/eos2met/eos2met.cxx
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/filter/source/graphicfilter/eos2met/eos2met.cxx?rev=1431512&r1=1431511&r2=1431512&view=diff
==============================================================================
--- openoffice/trunk/main/filter/source/graphicfilter/eos2met/eos2met.cxx (original)
+++ openoffice/trunk/main/filter/source/graphicfilter/eos2met/eos2met.cxx Thu Jan 10 17:28:40 2013
@@ -19,13 +19,10 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_filter.hxx"
#include <svtools/fltcall.hxx>
-
#include <math.h>
#include <tools/stream.hxx>
#include <tools/bigint.hxx>
@@ -42,6 +39,7 @@
#include <vcl/msgbox.hxx>
#include <svl/solar.hrc>
#include <vcl/gdimetafiletools.hxx>
+#include <vcl/dibtools.hxx>
// -----------------------------Feld-Typen-------------------------------
@@ -569,7 +567,7 @@ void METWriter::WriteImageObject(const B
WriteFieldId(nActBitmapId);
// Windows-BMP-Datei erzeugen:
- aTemp << rBitmap;
+ WriteDIB(rBitmap, aTemp, false, true);
// Header der Windows-BMP-Datei einlesen:
aTemp.SetNumberFormatInt(NUMBERFORMAT_INT_LITTLEENDIAN);
Modified: openoffice/trunk/main/filter/source/graphicfilter/ios2met/ios2met.cxx
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/filter/source/graphicfilter/ios2met/ios2met.cxx?rev=1431512&r1=1431511&r2=1431512&view=diff
==============================================================================
--- openoffice/trunk/main/filter/source/graphicfilter/ios2met/ios2met.cxx (original)
+++ openoffice/trunk/main/filter/source/graphicfilter/ios2met/ios2met.cxx Thu Jan 10 17:28:40 2013
@@ -19,8 +19,6 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_filter.hxx"
@@ -29,7 +27,7 @@
#include <vcl/virdev.hxx>
#include <vcl/lineinfo.hxx>
#include <svtools/fltcall.hxx>
-
+#include <vcl/dibtools.hxx>
#include <math.h>
// MT: NOOLDSV, someone should change the code...
@@ -2392,7 +2390,7 @@ void OS2METReader::ReadField(sal_uInt16
}
pBitmapList->pBMP->Seek(0);
- pBitmapList->aBitmap.Read( *( pBitmapList->pBMP ), sal_False );
+ ReadDIB(pBitmapList->aBitmap, *(pBitmapList->pBMP), false);
if (pBitmapList->pBMP->GetError()!=0) {
pOS2MET->SetError(SVSTREAM_FILEFORMAT_ERROR);
Modified: openoffice/trunk/main/filter/source/msfilter/msdffimp.cxx
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/filter/source/msfilter/msdffimp.cxx?rev=1431512&r1=1431511&r2=1431512&view=diff
==============================================================================
--- openoffice/trunk/main/filter/source/msfilter/msdffimp.cxx (original)
+++ openoffice/trunk/main/filter/source/msfilter/msdffimp.cxx Thu Jan 10 17:28:40 2013
@@ -140,6 +140,7 @@ using namespace vos;
#include <com/sun/star/beans/PropertyValues.hpp>
#include <com/sun/star/drawing/ProjectionMode.hpp>
#include "svx/EnhancedCustomShape2d.hxx"
+#include <vcl/dibtools.hxx>
using namespace ::com::sun::star ;
using namespace ::com::sun::star::drawing;
@@ -6650,7 +6651,7 @@ sal_Bool SvxMSDffManager::GetBLIPDirect(
if( ( nInst & 0xFFFE ) == 0x7A8 )
{ // DIBs direkt holen
Bitmap aNew;
- if( aNew.Read( *pGrStream, sal_False ) )
+ if( ReadDIB(aNew, *pGrStream, false) )
{
rData = Graphic( aNew );
nRes = GRFILTER_OK;
Modified: openoffice/trunk/main/fpicker/source/office/iodlg.cxx
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/fpicker/source/office/iodlg.cxx?rev=1431512&r1=1431511&r2=1431512&view=diff
==============================================================================
--- openoffice/trunk/main/fpicker/source/office/iodlg.cxx (original)
+++ openoffice/trunk/main/fpicker/source/office/iodlg.cxx Thu Jan 10 17:28:40 2013
@@ -19,8 +19,6 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_fpicker.hxx"
@@ -97,6 +95,7 @@
#include "fpinteraction.hxx"
#include <osl/process.h>
#include <comphelper/interaction.hxx>
+#include <vcl/dibtools.hxx>
#include <algorithm>
#include <functional>
@@ -3123,7 +3122,7 @@ void SvtFileDialog::setImage( sal_Int16
SvMemoryStream aData( aBmpSequence.getArray(),
aBmpSequence.getLength(),
STREAM_READ );
- aData >> aBmp;
+ ReadDIB(aBmp, aData, true);
_pPrevBmp->SetBitmap( aBmp );
}
Modified: openoffice/trunk/main/framework/source/fwe/classes/addonsoptions.cxx
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/framework/source/fwe/classes/addonsoptions.cxx?rev=1431512&r1=1431511&r2=1431512&view=diff
==============================================================================
--- openoffice/trunk/main/framework/source/fwe/classes/addonsoptions.cxx (original)
+++ openoffice/trunk/main/framework/source/fwe/classes/addonsoptions.cxx Thu Jan 10 17:28:40 2013
@@ -19,8 +19,6 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_framework.hxx"
@@ -44,7 +42,7 @@
#include <comphelper/processfactory.hxx>
#include <vcl/graph.hxx>
#include <svtools/filter.hxx>
-
+#include <vcl/dibtools.hxx>
#include <hash_map>
#include <algorithm>
#include <vector>
@@ -1785,7 +1783,7 @@ sal_Bool AddonsOptions_Impl::CreateImage
SvMemoryStream aMemStream( rBitmapDataSeq.getArray(), rBitmapDataSeq.getLength(), STREAM_STD_READ );
BitmapEx aBitmapEx;
- aMemStream >> aBitmapEx;
+ ReadDIBBitmapEx(aBitmapEx, aMemStream);
// Scale bitmap to fit the correct size for the menu/toolbar. Use best quality
if ( aBitmapEx.GetSizePixel() != aSize )
Modified: openoffice/trunk/main/framework/source/fwe/classes/imagewrapper.cxx
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/framework/source/fwe/classes/imagewrapper.cxx?rev=1431512&r1=1431511&r2=1431512&view=diff
==============================================================================
--- openoffice/trunk/main/framework/source/fwe/classes/imagewrapper.cxx (original)
+++ openoffice/trunk/main/framework/source/fwe/classes/imagewrapper.cxx Thu Jan 10 17:28:40 2013
@@ -31,6 +31,7 @@
#include <vcl/bitmapex.hxx>
#include <tools/stream.hxx>
#include <cppuhelper/typeprovider.hxx>
+#include <vcl/dibtools.hxx>
using namespace com::sun::star::lang;
using namespace com::sun::star::uno;
@@ -78,7 +79,7 @@ Sequence< sal_Int8 > SAL_CALL ImageWrapp
vos::OGuard aGuard( Application::GetSolarMutex() );
SvMemoryStream aMem;
- aMem << m_aImage.GetBitmapEx().GetBitmap();
+ WriteDIB(m_aImage.GetBitmapEx().GetBitmap(), aMem, false, true);
return Sequence< sal_Int8 >( (sal_Int8*) aMem.GetData(), aMem.Tell() );
}
@@ -90,13 +91,13 @@ Sequence< sal_Int8 > SAL_CALL ImageWrapp
if ( aBmpEx.IsAlpha() )
{
SvMemoryStream aMem;
- aMem << aBmpEx.GetAlpha().GetBitmap();
+ WriteDIB(aBmpEx.GetAlpha().GetBitmap(), aMem, false, true);
return Sequence< sal_Int8 >( (sal_Int8*) aMem.GetData(), aMem.Tell() );
}
else if ( aBmpEx.IsTransparent() )
{
SvMemoryStream aMem;
- aMem << aBmpEx.GetMask();
+ WriteDIB(aBmpEx.GetMask(), aMem, false, true);
return Sequence< sal_Int8 >( (sal_Int8*) aMem.GetData(), aMem.Tell() );
}
Modified: openoffice/trunk/main/framework/source/fwe/helper/actiontriggerhelper.cxx
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/framework/source/fwe/helper/actiontriggerhelper.cxx?rev=1431512&r1=1431511&r2=1431512&view=diff
==============================================================================
--- openoffice/trunk/main/framework/source/fwe/helper/actiontriggerhelper.cxx (original)
+++ openoffice/trunk/main/framework/source/fwe/helper/actiontriggerhelper.cxx Thu Jan 10 17:28:40 2013
@@ -19,8 +19,6 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_framework.hxx"
#include <framework/actiontriggerhelper.hxx>
@@ -36,7 +34,7 @@
#include <tools/stream.hxx>
#include <cppuhelper/weak.hxx>
#include <comphelper/processfactory.hxx>
-
+#include <vcl/dibtools.hxx>
const sal_uInt16 START_ITEMID = 1000;
@@ -196,7 +194,7 @@ void InsertSubMenuItems( Menu* pSubMenu,
{
aDIBSeq = xBitmap->getDIB();
SvMemoryStream aMem( (void *)aDIBSeq.getConstArray(), aDIBSeq.getLength(), STREAM_READ );
- aMem >> aBitmap;
+ ReadDIB(aBitmap, aMem, true);
}
aDIBSeq = xBitmap->getMaskDIB();
@@ -204,7 +202,7 @@ void InsertSubMenuItems( Menu* pSubMenu,
{
Bitmap aMaskBitmap;
SvMemoryStream aMem( (void *)aDIBSeq.getConstArray(), aDIBSeq.getLength(), STREAM_READ );
- aMem >> aMaskBitmap;
+ ReadDIB(aMaskBitmap, aMem, true);
aImage = Image( aBitmap, aMaskBitmap );
}
else
Modified: openoffice/trunk/main/sc/source/filter/excel/xiescher.cxx
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/sc/source/filter/excel/xiescher.cxx?rev=1431512&r1=1431511&r2=1431512&view=diff
==============================================================================
--- openoffice/trunk/main/sc/source/filter/excel/xiescher.cxx (original)
+++ openoffice/trunk/main/sc/source/filter/excel/xiescher.cxx Thu Jan 10 17:28:40 2013
@@ -86,6 +86,7 @@
#include <svx/xlinjoit.hxx>
#include <svx/xlntrit.hxx>
#include <svx/xbtmpit.hxx>
+#include <vcl/dibtools.hxx>
#include "document.hxx"
#include "drwlayer.hxx"
@@ -747,7 +748,7 @@ void XclImpDrawObjBase::ConvertFillStyle
aMemStrm << sal_uInt32( pnPattern[ nIdx ] ); // 32-bit little-endian
aMemStrm.Seek( STREAM_SEEK_TO_BEGIN );
Bitmap aBitmap;
- aBitmap.Read( aMemStrm, sal_False );
+ ReadDIB(aBitmap, aMemStrm, false);
rSdrObj.SetMergedItem(XFillStyleItem(XFILL_BITMAP));
rSdrObj.SetMergedItem(XFillBitmapItem(EMPTY_STRING, Graphic(aBitmap)));
}
@@ -3943,7 +3944,7 @@ void XclImpDrawing::ReadBmp( Graphic& rG
// import the graphic from memory stream
aMemStrm.Seek( STREAM_SEEK_TO_BEGIN );
Bitmap aBitmap;
- if( aBitmap.Read( aMemStrm, sal_False ) ) // read DIB without file header
+ if( ReadDIB(aBitmap, aMemStrm, false) ) // read DIB without file header
rGraphic = aBitmap;
}
Modified: openoffice/trunk/main/sc/source/ui/app/drwtrans.cxx
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/sc/source/ui/app/drwtrans.cxx?rev=1431512&r1=1431511&r2=1431512&view=diff
==============================================================================
--- openoffice/trunk/main/sc/source/ui/app/drwtrans.cxx (original)
+++ openoffice/trunk/main/sc/source/ui/app/drwtrans.cxx Thu Jan 10 17:28:40 2013
@@ -437,7 +437,7 @@ sal_Bool ScDrawTransferObj::GetData( con
if ( nFormat == SOT_FORMAT_GDIMETAFILE )
bOK = SetGDIMetaFile( aView.GetMarkedObjMetaFile(true), rFlavor );
else
- bOK = SetBitmap( aView.GetMarkedObjBitmapEx(true).GetBitmap(), rFlavor );
+ bOK = SetBitmapEx( aView.GetMarkedObjBitmapEx(true), rFlavor );
}
else if ( nFormat == SOT_FORMATSTR_ID_SVXB )
{
Modified: openoffice/trunk/main/sc/source/ui/app/transobj.cxx
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/sc/source/ui/app/transobj.cxx?rev=1431512&r1=1431511&r2=1431512&view=diff
==============================================================================
--- openoffice/trunk/main/sc/source/ui/app/transobj.cxx (original)
+++ openoffice/trunk/main/sc/source/ui/app/transobj.cxx Thu Jan 10 17:28:40 2013
@@ -342,7 +342,7 @@ sal_Bool ScTransferObj::GetData( const d
aVirtDev.SetMapMode( MapMode( MAP_PIXEL ) );
Bitmap aBmp = aVirtDev.GetBitmap( Point(), aVirtDev.GetOutputSize() );
- bOK = SetBitmap( aBmp, rFlavor );
+ bOK = SetBitmapEx( aBmp, rFlavor );
}
else if ( nFormat == SOT_FORMAT_GDIMETAFILE )
{
Modified: openoffice/trunk/main/sc/source/ui/docshell/docsh.cxx
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/sc/source/ui/docshell/docsh.cxx?rev=1431512&r1=1431511&r2=1431512&view=diff
==============================================================================
--- openoffice/trunk/main/sc/source/ui/docshell/docsh.cxx (original)
+++ openoffice/trunk/main/sc/source/ui/docshell/docsh.cxx Thu Jan 10 17:28:40 2013
@@ -2999,7 +2999,7 @@ bool ScDocShell::GetProtectionHash( /*ou
return bRes;
}
-void ScDocShell::BeforeLoading( SfxMedium& rMedium, const ::rtl::OUString & rstrTypeName, const ::rtl::OUString & rstrFilterName )
+void ScDocShell::BeforeLoading( SfxMedium& /*rMedium*/, const ::rtl::OUString & rstrTypeName, const ::rtl::OUString & /*rstrFilterName*/ )
{
const sal_uInt8 nMediumFlag = GetMediumFlag<false>( rstrTypeName );
@@ -3012,7 +3012,7 @@ void ScDocShell::BeforeLoading( SfxMediu
}
}
-void ScDocShell::AfterLoading( SfxMedium& rMedium, const ::rtl::OUString & rstrTypeName, const ::rtl::OUString & rstrFilterName )
+void ScDocShell::AfterLoading( SfxMedium& /*rMedium*/, const ::rtl::OUString & rstrTypeName, const ::rtl::OUString & /*rstrFilterName*/ )
{
const sal_uInt8 nMediumFlag = GetMediumFlag<false>( rstrTypeName );
Modified: openoffice/trunk/main/sc/source/ui/inc/viewfunc.hxx
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/sc/source/ui/inc/viewfunc.hxx?rev=1431512&r1=1431511&r2=1431512&view=diff
==============================================================================
--- openoffice/trunk/main/sc/source/ui/inc/viewfunc.hxx (original)
+++ openoffice/trunk/main/sc/source/ui/inc/viewfunc.hxx Thu Jan 10 17:28:40 2013
@@ -139,7 +139,7 @@ public:
sal_Bool PasteFile( const Point&, const String&, sal_Bool bLink=sal_False );
sal_Bool PasteObject( const Point&, const com::sun::star::uno::Reference < com::sun::star::embed::XEmbeddedObject >&, const Size* = NULL, const Graphic* = NULL, const ::rtl::OUString& = ::rtl::OUString(), sal_Int64 nAspect = ::com::sun::star::embed::Aspects::MSOLE_CONTENT );
- sal_Bool PasteBitmap( const Point&, const Bitmap& );
+ sal_Bool PasteBitmapEx( const Point&, const BitmapEx& );
sal_Bool PasteMetaFile( const Point&, const GDIMetaFile& );
sal_Bool PasteGraphic( const Point& rPos, const Graphic& rGraphic,
const String& rFile, const String& rFilter );
Modified: openoffice/trunk/main/sc/source/ui/view/viewfun3.cxx
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/sc/source/ui/view/viewfun3.cxx?rev=1431512&r1=1431511&r2=1431512&view=diff
==============================================================================
--- openoffice/trunk/main/sc/source/ui/view/viewfun3.cxx (original)
+++ openoffice/trunk/main/sc/source/ui/view/viewfun3.cxx Thu Jan 10 17:28:40 2013
@@ -845,9 +845,9 @@ sal_Bool ScViewFunc::PasteOnDrawObject(
}
else if ( aDataHelper.HasFormat( SOT_FORMAT_BITMAP ) )
{
- Bitmap aBmp;
- if( aDataHelper.GetBitmap( FORMAT_BITMAP, aBmp ) )
- bRet = ApplyGraphicToObject( pHitObj, Graphic(aBmp) );
+ BitmapEx aBmpEx;
+ if( aDataHelper.GetBitmapEx( FORMAT_BITMAP, aBmpEx ) )
+ bRet = ApplyGraphicToObject( pHitObj, Graphic(aBmpEx) );
}
}
else
Modified: openoffice/trunk/main/sc/source/ui/view/viewfun5.cxx
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/sc/source/ui/view/viewfun5.cxx?rev=1431512&r1=1431511&r2=1431512&view=diff
==============================================================================
--- openoffice/trunk/main/sc/source/ui/view/viewfun5.cxx (original)
+++ openoffice/trunk/main/sc/source/ui/view/viewfun5.cxx Thu Jan 10 17:28:40 2013
@@ -457,9 +457,9 @@ sal_Bool ScViewFunc::PasteDataFormat( sa
}
else if (nFormatId == SOT_FORMAT_BITMAP)
{
- Bitmap aBmp;
- if( aDataHelper.GetBitmap( FORMAT_BITMAP, aBmp ) )
- bRet = PasteBitmap( aPos, aBmp );
+ BitmapEx aBmpEx;
+ if( aDataHelper.GetBitmapEx( FORMAT_BITMAP, aBmpEx ) )
+ bRet = PasteBitmapEx( aPos, aBmpEx );
}
else if (nFormatId == SOT_FORMAT_GDIMETAFILE)
{
Modified: openoffice/trunk/main/sc/source/ui/view/viewfun7.cxx
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/sc/source/ui/view/viewfun7.cxx?rev=1431512&r1=1431511&r2=1431512&view=diff
==============================================================================
--- openoffice/trunk/main/sc/source/ui/view/viewfun7.cxx (original)
+++ openoffice/trunk/main/sc/source/ui/view/viewfun7.cxx Thu Jan 10 17:28:40 2013
@@ -370,10 +370,10 @@ sal_Bool ScViewFunc::PasteObject( const
return sal_False;
}
-sal_Bool ScViewFunc::PasteBitmap( const Point& rPos, const Bitmap& rBmp )
+sal_Bool ScViewFunc::PasteBitmapEx( const Point& rPos, const BitmapEx& rBmpEx )
{
String aEmpty;
- Graphic aGraphic(rBmp);
+ Graphic aGraphic(rBmpEx);
return PasteGraphic( rPos, aGraphic, aEmpty, aEmpty );
}
Modified: openoffice/trunk/main/sd/source/ui/app/sdxfer.cxx
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/sd/source/ui/app/sdxfer.cxx?rev=1431512&r1=1431511&r2=1431512&view=diff
==============================================================================
--- openoffice/trunk/main/sd/source/ui/app/sdxfer.cxx (original)
+++ openoffice/trunk/main/sd/source/ui/app/sdxfer.cxx Thu Jan 10 17:28:40 2013
@@ -548,10 +548,10 @@ sal_Bool SdTransferable::GetData( const
if( mpSdViewIntern )
bOK = SetGDIMetaFile( mpSdViewIntern->GetMarkedObjMetaFile(true), rFlavor );
}
- else if( nFormat == FORMAT_BITMAP )
+ else if( FORMAT_BITMAP == nFormat || SOT_FORMATSTR_ID_PNG == nFormat )
{
if( mpSdViewIntern )
- bOK = SetBitmap( mpSdViewIntern->GetMarkedObjBitmapEx(true).GetBitmap(), rFlavor );
+ bOK = SetBitmapEx( mpSdViewIntern->GetMarkedObjBitmapEx(true), rFlavor );
}
else if( ( nFormat == FORMAT_STRING ) && mpBookmark )
{
Modified: openoffice/trunk/main/sd/source/ui/unoidl/unopage.cxx
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/sd/source/ui/unoidl/unopage.cxx?rev=1431512&r1=1431511&r2=1431512&view=diff
==============================================================================
--- openoffice/trunk/main/sd/source/ui/unoidl/unopage.cxx (original)
+++ openoffice/trunk/main/sd/source/ui/unoidl/unopage.cxx Thu Jan 10 17:28:40 2013
@@ -19,10 +19,9 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_sd.hxx"
+
#include <com/sun/star/lang/DisposedException.hpp>
#include <com/sun/star/presentation/ClickAction.hpp>
#include <com/sun/star/presentation/FadeEffect.hpp>
@@ -59,7 +58,6 @@
#include <rtl/uuid.h>
#include <rtl/memory.h>
#include <comphelper/serviceinfohelper.hxx>
-
#include <comphelper/extract.hxx>
#include <list>
#include <svx/svditer.hxx>
@@ -81,6 +79,7 @@
#include "unokywds.hxx"
#include "unopback.hxx"
#include "unohelp.hxx"
+#include <vcl/dibtools.hxx>
using ::com::sun::star::animations::XAnimationNode;
using ::com::sun::star::animations::XAnimationNodeSupplier;
@@ -1143,7 +1142,7 @@ Any SAL_CALL SdGenericDrawPage::getPrope
aBitmap ) )
{
SvMemoryStream aMemStream;
- aBitmap.GetBitmap().Write( aMemStream, sal_False, sal_False );
+ WriteDIB(aBitmap.GetBitmap(), aMemStream, false, false);
uno::Sequence<sal_Int8> aSeq( (sal_Int8*)aMemStream.GetData(), aMemStream.Tell() );
aAny <<= aSeq;
}
Modified: openoffice/trunk/main/sd/source/ui/view/sdview3.cxx
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/sd/source/ui/view/sdview3.cxx?rev=1431512&r1=1431511&r2=1431512&view=diff
==============================================================================
--- openoffice/trunk/main/sd/source/ui/view/sdview3.cxx (original)
+++ openoffice/trunk/main/sd/source/ui/view/sdview3.cxx Thu Jan 10 17:28:40 2013
@@ -1255,9 +1255,9 @@ sal_Bool View::InsertData( const Transfe
}
else if( ( !bLink || pPickObj ) && CHECK_FORMAT_TRANS( FORMAT_BITMAP ) )
{
- Bitmap aBmp;
+ BitmapEx aBmpEx;
- if( aDataHelper.GetBitmap( FORMAT_BITMAP, aBmp ) )
+ if( aDataHelper.GetBitmapEx( FORMAT_BITMAP, aBmpEx ) )
{
Point aInsertPos( rPos );
@@ -1278,10 +1278,10 @@ sal_Bool View::InsertData( const Transfe
}
// #90129# restrict movement to WorkArea
- Size aImageMapSize(aBmp.GetPrefSize());
+ Size aImageMapSize(aBmpEx.GetPrefSize());
ImpCheckInsertPos(aInsertPos, aImageMapSize, GetWorkArea());
- InsertGraphic( aBmp, mnAction, aInsertPos, NULL, pImageMap );
+ InsertGraphic( aBmpEx, mnAction, aInsertPos, NULL, pImageMap );
bReturn = sal_True;
}
}
Modified: openoffice/trunk/main/sfx2/source/appl/fileobj.cxx
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/sfx2/source/appl/fileobj.cxx?rev=1431512&r1=1431511&r2=1431512&view=diff
==============================================================================
--- openoffice/trunk/main/sfx2/source/appl/fileobj.cxx (original)
+++ openoffice/trunk/main/sfx2/source/appl/fileobj.cxx Thu Jan 10 17:28:40 2013
@@ -19,8 +19,6 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_sfx2.hxx"
@@ -47,6 +45,7 @@
#include "sfx2/sfxresid.hxx"
#include "fileobj.hxx"
#include "app.hrc"
+#include <vcl/dibtools.hxx>
namespace css = ::com::sun::star;
@@ -187,9 +186,16 @@ sal_Bool SvFileObject::GetData( ::com::s
break;
case FORMAT_BITMAP:
- if( !aGrf.GetBitmap().IsEmpty())
- aMemStm << aGrf.GetBitmap();
- break;
+ {
+ const Bitmap aBitmap(aGrf.GetBitmap());
+
+ if(!aBitmap.IsEmpty())
+ {
+ WriteDIB(aBitmap, aMemStm, false, true);
+ }
+
+ break;
+ }
default:
if( aGrf.GetGDIMetaFile().GetActionCount() )
Modified: openoffice/trunk/main/sfx2/source/appl/linkmgr2.cxx
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/sfx2/source/appl/linkmgr2.cxx?rev=1431512&r1=1431511&r2=1431512&view=diff
==============================================================================
--- openoffice/trunk/main/sfx2/source/appl/linkmgr2.cxx (original)
+++ openoffice/trunk/main/sfx2/source/appl/linkmgr2.cxx Thu Jan 10 17:28:40 2013
@@ -19,8 +19,6 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_sfx2.hxx"
@@ -42,6 +40,7 @@
#include <unotools/localfilehelper.hxx>
#include <i18npool/mslangid.hxx>
#include <sfx2/request.hxx>
+#include <vcl/dibtools.hxx>
#include "fileobj.hxx"
#include "impldde.hxx"
@@ -479,7 +478,7 @@ sal_Bool LinkManager::GetGraphicFromAny(
case FORMAT_BITMAP:
{
Bitmap aBmp;
- aMemStm >> aBmp;
+ ReadDIB(aBmp, aMemStm, true);
rGrf = aBmp;
bRet = sal_True;
}
Modified: openoffice/trunk/main/sfx2/source/dialog/filedlghelper.cxx
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/sfx2/source/dialog/filedlghelper.cxx?rev=1431512&r1=1431511&r2=1431512&view=diff
==============================================================================
--- openoffice/trunk/main/sfx2/source/dialog/filedlghelper.cxx (original)
+++ openoffice/trunk/main/sfx2/source/dialog/filedlghelper.cxx Thu Jan 10 17:28:40 2013
@@ -19,10 +19,9 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_sfx2.hxx"
+
#include <sfx2/filedlghelper.hxx>
#include <sal/types.h>
#include <com/sun/star/lang/XInitialization.hpp>
@@ -95,6 +94,7 @@
#include "filedlgimpl.hxx"
#include <helpid.hrc>
#include <sfxlocal.hrc>
+#include <vcl/dibtools.hxx>
//-----------------------------------------------------------------------------
@@ -771,7 +771,7 @@ IMPL_LINK( FileDialogHelper_Impl, TimeOu
// and copy it into the Any
SvMemoryStream aData;
- aData << aBmp;
+ WriteDIB(aBmp, aData, false, true);
const Sequence < sal_Int8 > aBuffer(
static_cast< const sal_Int8* >(aData.GetData()),
Modified: openoffice/trunk/main/sfx2/source/dialog/intro.cxx
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/sfx2/source/dialog/intro.cxx?rev=1431512&r1=1431511&r2=1431512&view=diff
==============================================================================
--- openoffice/trunk/main/sfx2/source/dialog/intro.cxx (original)
+++ openoffice/trunk/main/sfx2/source/dialog/intro.cxx Thu Jan 10 17:28:40 2013
@@ -19,8 +19,6 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_sfx2.hxx"
@@ -34,8 +32,8 @@
#include <unotools/pathoptions.hxx>
#include <unotools/configmgr.hxx>
#include <com/sun/star/uno/Any.h>
-
#include <sfx2/sfxuno.hxx>
+#include <vcl/dibtools.hxx>
// -----------------------------------------------------------------------
@@ -76,8 +74,11 @@ IntroWindow_Impl::IntroWindow_Impl( cons
INetURLObject aObj( SvtPathOptions().GetModulePath(), INET_PROT_FILE );
aObj.insertName( aBmpFileName );
SvFileStream aStrm( aObj.PathToFileName(), STREAM_STD_READ );
- if ( !aStrm.GetError() )
- aStrm >> aIntroBmp;
+
+ if ( !aStrm.GetError() )
+ {
+ ReadDIB(aIntroBmp, aStrm, true);
+ }
Init();
}
Modified: openoffice/trunk/main/sfx2/source/doc/docinf.cxx
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/sfx2/source/doc/docinf.cxx?rev=1431512&r1=1431511&r2=1431512&view=diff
==============================================================================
--- openoffice/trunk/main/sfx2/source/doc/docinf.cxx (original)
+++ openoffice/trunk/main/sfx2/source/doc/docinf.cxx Thu Jan 10 17:28:40 2013
@@ -25,19 +25,17 @@
#include "precompiled_sfx2.hxx"
#include <sfx2/docinf.hxx>
-
#include <com/sun/star/beans/PropertyAttribute.hpp>
#include <com/sun/star/beans/XPropertySet.hpp>
#include <com/sun/star/beans/XPropertyContainer.hpp>
#include <com/sun/star/document/XDocumentProperties.hpp>
#include <com/sun/star/uno/Exception.hpp>
-
#include <rtl/ustring.hxx>
#include <tools/debug.hxx>
#include <comphelper/string.hxx>
#include <sot/storage.hxx>
#include <vcl/gdimtf.hxx>
-
+#include <vcl/dibtools.hxx>
#include "oleprops.hxx"
// ============================================================================
@@ -286,7 +284,7 @@ uno::Sequence<sal_uInt8> SFX2_DLLPUBLIC
SvMemoryStream aStream;
// magic value 160 taken from GraphicHelper::getThumbnailFormatFromGDI_Impl()
if( i_pThumb->CreateThumbnail( 160, aBitmap ) ) {
- aBitmap.GetBitmap().Write( aStream, sal_False, sal_False );
+ WriteDIB(aBitmap.GetBitmap(), aStream, false, false);
// uno::Sequence<sal_uInt8> aSeq(aStream.GetSize()); // WRONG
aStream.Seek(STREAM_SEEK_TO_END);
uno::Sequence<sal_uInt8> aSeq(aStream.Tell());
Modified: openoffice/trunk/main/sot/inc/sot/formats.hxx
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/sot/inc/sot/formats.hxx?rev=1431512&r1=1431511&r2=1431512&view=diff
==============================================================================
--- openoffice/trunk/main/sot/inc/sot/formats.hxx (original)
+++ openoffice/trunk/main/sot/inc/sot/formats.hxx Thu Jan 10 17:28:40 2013
@@ -181,7 +181,8 @@
#define SOT_FORMATSTR_ID_STARMATH_8_TEMPLATE ((sal_uLong)138)
#define SOT_FORMATSTR_ID_STARBASE_8 ((sal_uLong)139)
#define SOT_FORMATSTR_ID_HC_GDIMETAFILE ((sal_uLong)140)
-#define SOT_FORMATSTR_ID_USER_END SOT_FORMATSTR_ID_HC_GDIMETAFILE
+#define SOT_FORMATSTR_ID_PNG ((sal_uLong)141)
+#define SOT_FORMATSTR_ID_USER_END SOT_FORMATSTR_ID_PNG
#endif // _SOT_FORMATS_HXX
Modified: openoffice/trunk/main/sot/source/base/exchange.cxx
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/sot/source/base/exchange.cxx?rev=1431512&r1=1431511&r2=1431512&view=diff
==============================================================================
--- openoffice/trunk/main/sot/source/base/exchange.cxx (original)
+++ openoffice/trunk/main/sot/source/base/exchange.cxx Thu Jan 10 17:28:40 2013
@@ -207,6 +207,7 @@ namespace
/*138 SOT_FORMATSTR_ID_STARMATH_8_TEMPLATE*/ { MIMETYPE_OASIS_OPENDOCUMENT_FORMULA_TEMPLATE_ASCII, "Math 8 Template", &::getCppuType( (const Sequence< sal_Int8 >*) 0 ) },
/*139 SOT_FORMATSTR_ID_STARBASE_8*/ { MIMETYPE_OASIS_OPENDOCUMENT_DATABASE_ASCII, "StarBase 8", &::getCppuType( (const Sequence< sal_Int8 >*) 0 ) },
/*140 SOT_FORMAT_GDIMETAFILE*/ { "application/x-openoffice-highcontrast-gdimetafile;windows_formatname=\"GDIMetaFile\"", "High Contrast GDIMetaFile", &::getCppuType( (const Sequence< sal_Int8 >*) 0 ) },
+ /*141 SOT_FORMATSTR_ID_PNG*/ { "image/png", "Windows Bitmap", &::getCppuType( (const Sequence< sal_Int8 >*) 0 ) },
};
return &aInstance[0];
}
Modified: openoffice/trunk/main/sot/source/base/formats.cxx
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/sot/source/base/formats.cxx?rev=1431512&r1=1431511&r2=1431512&view=diff
==============================================================================
--- openoffice/trunk/main/sot/source/base/formats.cxx (original)
+++ openoffice/trunk/main/sot/source/base/formats.cxx Thu Jan 10 17:28:40 2013
@@ -1590,7 +1590,7 @@ sal_uInt16 SotExchange::GetExchangeActio
aVector.push_back( aFlavorEx );
- if( ( SOT_FORMATSTR_ID_BMP == aFlavorEx.mnSotId ) &&
+ if( (( SOT_FORMATSTR_ID_BMP == aFlavorEx.mnSotId ) || (SOT_FORMATSTR_ID_PNG == aFlavorEx.mnSotId)) &&
!IsFormatSupported( aVector, SOT_FORMAT_BITMAP ) )
{
if( SotExchange::GetFormatDataFlavor( SOT_FORMAT_BITMAP, aFlavorEx ) )
Modified: openoffice/trunk/main/svtools/bmpmaker/bmpcore.cxx
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/svtools/bmpmaker/bmpcore.cxx?rev=1431512&r1=1431511&r2=1431512&view=diff
==============================================================================
--- openoffice/trunk/main/svtools/bmpmaker/bmpcore.cxx (original)
+++ openoffice/trunk/main/svtools/bmpmaker/bmpcore.cxx Thu Jan 10 17:28:40 2013
@@ -19,8 +19,6 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_svtools.hxx"
@@ -31,7 +29,7 @@
#include <vcl/pngread.hxx>
#include <vcl/pngwrite.hxx>
#include "bmpcore.hxx"
-
+#include <vcl/dibtools.hxx>
#include <vector>
#include <algorithm>
@@ -188,7 +186,9 @@ void BmpCreator::ImplCreate( const ::std
aBmpEx = aPNGReader.Read();
}
else
- aIStm >> aBmpEx;
+ {
+ ReadDIBBitmapEx(aBmpEx, aIStm);
+ }
if( pCollectStm && !aBmpEx.IsEmpty() )
{
@@ -293,7 +293,9 @@ void BmpCreator::ImplCreate( const ::std
aPNGWriter.Write( aOutStream );
}
else
- aOutStream << aTotalBmpEx;
+ {
+ WriteDIBBitmapEx(aTotalBmpEx, aOutStream);
+ }
if( aOutStream.GetError() )
Message( String( RTL_CONSTASCII_USTRINGPARAM( "ERROR: Could not write to output file: " ) ).Append( aOutFileName ), EXIT_IOERROR );
Modified: openoffice/trunk/main/svtools/bmpmaker/bmpsum.cxx
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/svtools/bmpmaker/bmpsum.cxx?rev=1431512&r1=1431511&r2=1431512&view=diff
==============================================================================
--- openoffice/trunk/main/svtools/bmpmaker/bmpsum.cxx (original)
+++ openoffice/trunk/main/svtools/bmpmaker/bmpsum.cxx Thu Jan 10 17:28:40 2013
@@ -19,8 +19,6 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_svtools.hxx"
@@ -29,7 +27,6 @@
#include <vector>
#include <set>
#include <map>
-
#include <rtl/crc.h>
#include <tools/stream.hxx>
#include <tools/fsys.hxx>
@@ -37,7 +34,7 @@
#include <vcl/bitmap.hxx>
#include <vcl/bmpacc.hxx>
#include <vcl/pngread.hxx>
-
+#include <vcl/dibtools.hxx>
#include "svl/solar.hrc"
#define EXIT_NOERROR 0x00000000
@@ -285,7 +282,7 @@ void BmpSum::ProcessFile( const String&
{
BitmapEx aBmpEx;
- aIStm >> aBmpEx;
+ ReadDIBBitmapEx(aBmpEx, aIStm);
if( !aBmpEx.IsEmpty() )
{
@@ -385,7 +382,7 @@ void BmpSum::ProcessFileList( const Stri
{
BitmapEx aBmpEx;
- aBmpStm >> aBmpEx;
+ ReadDIBBitmapEx(aBmpEx, aBmpStm);
if( !aBmpEx.IsEmpty() )
nCRC = GetCRC( aBmpEx );
Modified: openoffice/trunk/main/svtools/inc/svtools/transfer.hxx
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/svtools/inc/svtools/transfer.hxx?rev=1431512&r1=1431511&r2=1431512&view=diff
==============================================================================
--- openoffice/trunk/main/svtools/inc/svtools/transfer.hxx (original)
+++ openoffice/trunk/main/svtools/inc/svtools/transfer.hxx Thu Jan 10 17:28:40 2013
@@ -49,7 +49,7 @@
// - Forward declarations -
// ------------------------
-class Bitmap;
+class BitmapEx;
class GDIMetaFile;
class Graphic;
class ImageMap;
@@ -257,7 +257,7 @@ protected:
sal_Bool SetAny( const ::com::sun::star::uno::Any& rAny, const ::com::sun::star::datatransfer::DataFlavor& rFlavor );
sal_Bool SetString( const ::rtl::OUString& rString, const ::com::sun::star::datatransfer::DataFlavor& rFlavor );
- sal_Bool SetBitmap( const Bitmap& rBitmap, const ::com::sun::star::datatransfer::DataFlavor& rFlavor );
+ sal_Bool SetBitmapEx( const BitmapEx& rBitmap, const ::com::sun::star::datatransfer::DataFlavor& rFlavor );
sal_Bool SetGDIMetaFile( const GDIMetaFile& rMtf, const ::com::sun::star::datatransfer::DataFlavor& rFlavor );
sal_Bool SetGraphic( const Graphic& rGraphic, const ::com::sun::star::datatransfer::DataFlavor& rFlavor );
sal_Bool SetImageMap( const ImageMap& rIMap, const ::com::sun::star::datatransfer::DataFlavor& rFlavor );
@@ -362,8 +362,8 @@ public:
sal_Bool GetString( SotFormatStringId nFormat, ::rtl::OUString& rStr );
sal_Bool GetString( const ::com::sun::star::datatransfer::DataFlavor& rFlavor, ::rtl::OUString& rStr );
- sal_Bool GetBitmap( SotFormatStringId nFormat, Bitmap& rBmp );
- sal_Bool GetBitmap( const ::com::sun::star::datatransfer::DataFlavor& rFlavor, Bitmap& rBmp );
+ sal_Bool GetBitmapEx( SotFormatStringId nFormat, BitmapEx& rBmp );
+ sal_Bool GetBitmapEx( const ::com::sun::star::datatransfer::DataFlavor& rFlavor, BitmapEx& rBmp );
sal_Bool GetGDIMetaFile( SotFormatStringId nFormat, GDIMetaFile& rMtf );
sal_Bool GetGDIMetaFile( const ::com::sun::star::datatransfer::DataFlavor& rFlavor, GDIMetaFile& rMtf );
Modified: openoffice/trunk/main/svtools/source/filter/filter.cxx
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/svtools/source/filter/filter.cxx?rev=1431512&r1=1431511&r2=1431512&view=diff
==============================================================================
--- openoffice/trunk/main/svtools/source/filter/filter.cxx (original)
+++ openoffice/trunk/main/svtools/source/filter/filter.cxx Thu Jan 10 17:28:40 2013
@@ -72,6 +72,7 @@
#include <rtl/bootstrap.hxx>
#include <rtl/instance.hxx>
#include <vcl/metaact.hxx>
+#include <vcl/dibtools.hxx>
#include "SvFilterOptionsDialog.hxx"
@@ -1932,7 +1933,7 @@ sal_uInt16 GraphicFilter::ExportGraphic(
ResMgr* pResMgr = CREATERESMGR( svt );
sal_Bool bRleCoding = aConfigItem.ReadBool( String( RTL_CONSTASCII_USTRINGPARAM( "RLE_Coding" ) ), sal_True );
// Wollen wir RLE-Kodiert speichern?
- aBmp.Write( rOStm, bRleCoding );
+ WriteDIB(aBmp, rOStm, bRleCoding, true);
delete pResMgr;
if( rOStm.GetError() )
Modified: openoffice/trunk/main/svtools/source/filter/wmf/emfwr.cxx
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/svtools/source/filter/wmf/emfwr.cxx?rev=1431512&r1=1431511&r2=1431512&view=diff
==============================================================================
--- openoffice/trunk/main/svtools/source/filter/wmf/emfwr.cxx (original)
+++ openoffice/trunk/main/svtools/source/filter/wmf/emfwr.cxx Thu Jan 10 17:28:40 2013
@@ -19,8 +19,6 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_svtools.hxx"
@@ -29,6 +27,7 @@
#include <basegfx/polygon/b2dpolygon.hxx>
#include <basegfx/polygon/b2dpolypolygon.hxx>
#include <vcl/lineinfo.hxx>
+#include <vcl/dibtools.hxx>
// -----------
// - Defines -
@@ -752,7 +751,7 @@ void EMFWriter::ImplWriteBmpRecord( cons
(*mpStm) << (sal_uInt32) 0 << ( ( ROP_XOR == maVDev.GetRasterOp() && WIN_SRCCOPY == nROP ) ? WIN_SRCINVERT : nROP );
ImplWriteSize( rSz );
- rBmp.Write( aMemStm, sal_True, sal_False );
+ WriteDIB(rBmp, aMemStm, true, false);
sal_uInt32 nDIBSize = aMemStm.Tell(), nHeaderSize, nCompression, nColsUsed, nPalCount, nImageSize;
sal_uInt16 nBitCount;
Modified: openoffice/trunk/main/svtools/source/filter/wmf/enhwmf.cxx
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/svtools/source/filter/wmf/enhwmf.cxx?rev=1431512&r1=1431511&r2=1431512&view=diff
==============================================================================
--- openoffice/trunk/main/svtools/source/filter/wmf/enhwmf.cxx (original)
+++ openoffice/trunk/main/svtools/source/filter/wmf/enhwmf.cxx Thu Jan 10 17:28:40 2013
@@ -19,14 +19,13 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_svtools.hxx"
#include "winmtf.hxx"
#include <osl/endian.h>
#include <basegfx/matrix/b2dhommatrix.hxx>
+#include <vcl/dibtools.hxx>
//=========================== GDI-Array ===================================
@@ -871,8 +870,9 @@ sal_Bool EnhWMFReader::ReadEnhWMF()
pWMF->Seek( nStart + offBitsSrc );
pWMF->Read( pBuf + 14 + cbBmiSrc, cbBitsSrc );
aTmp.Seek( 0 );
- aBitmap.Read( aTmp, sal_True );
- // test if it is sensible to crop
+ ReadDIB(aBitmap, aTmp, true);
+
+ // test if it is sensible to crop
if ( ( cxSrc > 0 ) && ( cySrc > 0 ) &&
( xSrc >= 0 ) && ( ySrc >= 0 ) &&
( xSrc + static_cast< sal_Int32 >(cxSrc) <= static_cast< sal_Int32 >(aBitmap.GetSizePixel().Width()) ) &&
@@ -932,7 +932,7 @@ sal_Bool EnhWMFReader::ReadEnhWMF()
pWMF->Seek( nStart + offBitsSrc );
pWMF->Read( pBuf + 14 + cbBmiSrc, cbBitsSrc );
aTmp.Seek( 0 );
- aBitmap.Read( aTmp, sal_True );
+ ReadDIB(aBitmap, aTmp, true);
// test if it is sensible to crop
if ( ( cxSrc > 0 ) && ( cySrc > 0 ) &&
@@ -986,7 +986,7 @@ sal_Bool EnhWMFReader::ReadEnhWMF()
pWMF->Seek( nStart + offBitsSrc );
pWMF->Read( pBuf + 14 + cbBmiSrc, cbBitsSrc );
aTmp.Seek( 0 );
- aBitmap.Read( aTmp, sal_True );
+ ReadDIB(aBitmap, aTmp, true);
// test if it is sensible to crop
if ( ( cxSrc > 0 ) && ( cySrc > 0 ) &&
@@ -1307,7 +1307,7 @@ sal_Bool EnhWMFReader::ReadEnhWMF()
*pWMF >> nTmp32;
}
- aBmp.Read( *pWMF, sal_False );
+ ReadDIB(aBmp, *pWMF, false);
pBmp = aBmp.AcquireReadAccess();
if ( pBmp )
{
Modified: openoffice/trunk/main/svtools/source/filter/wmf/winwmf.cxx
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/svtools/source/filter/wmf/winwmf.cxx?rev=1431512&r1=1431511&r2=1431512&view=diff
==============================================================================
--- openoffice/trunk/main/svtools/source/filter/wmf/winwmf.cxx (original)
+++ openoffice/trunk/main/svtools/source/filter/wmf/winwmf.cxx Thu Jan 10 17:28:40 2013
@@ -19,8 +19,6 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_svtools.hxx"
@@ -30,6 +28,7 @@
#include <rtl/tencinfo.h>
#include <osl/endian.h>
#include <vcl/svapp.hxx>
+#include <vcl/dibtools.hxx>
//====================== MS-Windows-defines ===============================
@@ -617,7 +616,7 @@ void WMFReader::ReadRecordParams( sal_uI
{
Rectangle aDestRect( ReadYX(), aDestSize );
if ( nWinROP != PATCOPY )
- aBmp.Read( *pWMF, sal_False );
+ ReadDIB(aBmp, *pWMF, false);
// test if it is sensible to crop
if ( nSye && nSxe &&
@@ -642,7 +641,7 @@ void WMFReader::ReadRecordParams( sal_uI
*pWMF >> nFunction >> nFunction;
- aBmp.Read( *pWMF, sal_False );
+ ReadDIB(aBmp, *pWMF, false);
pBmp = aBmp.AcquireReadAccess();
if ( pBmp )
{
Modified: openoffice/trunk/main/svtools/source/filter/wmf/wmfwr.cxx
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/svtools/source/filter/wmf/wmfwr.cxx?rev=1431512&r1=1431511&r2=1431512&view=diff
==============================================================================
--- openoffice/trunk/main/svtools/source/filter/wmf/wmfwr.cxx (original)
+++ openoffice/trunk/main/svtools/source/filter/wmf/wmfwr.cxx Thu Jan 10 17:28:40 2013
@@ -19,8 +19,6 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_svtools.hxx"
@@ -32,13 +30,11 @@
#include <rtl/tencinfo.h>
#include <tools/tenccvt.hxx>
#include <osl/endian.h>
-#ifndef INCLUDED_I18NUTIL_UNICODE_HXX
#include <i18nutil/unicode.hxx> //unicode::getUnicodeScriptType
-#endif
-
#include <vcl/metric.hxx>
#include <basegfx/polygon/b2dpolygon.hxx>
#include <basegfx/polygon/b2dpolypolygon.hxx>
+#include <vcl/dibtools.hxx>
//====================== MS-Windows-defines ===============================
@@ -937,7 +933,9 @@ void WMFWriter::WMFRecord_StretchDIB( co
*pWMF << (long)0 << (long)0; // 8 bytes auffuellen (diese 8 bytes +
// 14 bytes ueberfluessigen FILEHEADER
// = 22 bytes Parameter)
- *pWMF << rBitmap; // Bitmap schreiben
+
+ // write bitmap
+ WriteDIB(rBitmap, *pWMF, false, true);
// Parameter schreiben:
nPosEnd=pWMF->Tell();
Modified: openoffice/trunk/main/svtools/source/graphic/graphic.cxx
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/svtools/source/graphic/graphic.cxx?rev=1431512&r1=1431511&r2=1431512&view=diff
==============================================================================
--- openoffice/trunk/main/svtools/source/graphic/graphic.cxx (original)
+++ openoffice/trunk/main/svtools/source/graphic/graphic.cxx Thu Jan 10 17:28:40 2013
@@ -19,8 +19,6 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_svtools.hxx"
@@ -31,6 +29,7 @@
#include <com/sun/star/graphic/XGraphicTransformer.hpp>
#include <vcl/graph.hxx>
#include "graphic.hxx"
+#include <vcl/dibtools.hxx>
using namespace com::sun::star;
@@ -249,7 +248,8 @@ uno::Sequence< ::sal_Int8 > SAL_CALL Gra
if( mpGraphic && ( mpGraphic->GetType() != GRAPHIC_NONE ) )
{
SvMemoryStream aMem;
- aMem << mpGraphic->GetBitmapEx().GetBitmap();
+
+ WriteDIB(mpGraphic->GetBitmapEx().GetBitmap(), aMem, false, true);
return ::com::sun::star::uno::Sequence<sal_Int8>( (sal_Int8*) aMem.GetData(), aMem.Tell() );
}
else
@@ -267,7 +267,8 @@ uno::Sequence< ::sal_Int8 > SAL_CALL Gra
if( mpGraphic && ( mpGraphic->GetType() != GRAPHIC_NONE ) )
{
SvMemoryStream aMem;
- aMem << mpGraphic->GetBitmapEx().GetMask();
+
+ WriteDIB(mpGraphic->GetBitmapEx().GetMask(), aMem, false, true);
return ::com::sun::star::uno::Sequence<sal_Int8>( (sal_Int8*) aMem.GetData(), aMem.Tell() );
}
else
Modified: openoffice/trunk/main/svtools/source/graphic/provider.cxx
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/svtools/source/graphic/provider.cxx?rev=1431512&r1=1431511&r2=1431512&view=diff
==============================================================================
--- openoffice/trunk/main/svtools/source/graphic/provider.cxx (original)
+++ openoffice/trunk/main/svtools/source/graphic/provider.cxx Thu Jan 10 17:28:40 2013
@@ -19,8 +19,6 @@
*
*************************************************************/
-
-
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_svtools.hxx"
@@ -41,11 +39,11 @@
#include <vcl/virdev.hxx>
#include <com/sun/star/io/XStream.hpp>
#include <com/sun/star/text/GraphicCrop.hpp>
-
#include "descriptor.hxx"
#include "graphic.hxx"
#include <svtools/grfmgr.hxx>
#include "provider.hxx"
+#include <vcl/dibtools.hxx>
using namespace com::sun::star;
@@ -256,15 +254,16 @@ uno::Reference< ::graphic::XGraphic > Gr
uno::Sequence< sal_Int8 > aMaskSeq( xBtm->getMaskDIB() );
SvMemoryStream aBmpStream( aBmpSeq.getArray(), aBmpSeq.getLength(), STREAM_READ );
Bitmap aBmp;
- aBmpStream >> aBmp;
-
BitmapEx aBmpEx;
-
+
+ ReadDIB(aBmp, aBmpStream, true);
+
if( aMaskSeq.getLength() )
{
SvMemoryStream aMaskStream( aMaskSeq.getArray(), aMaskSeq.getLength(), STREAM_READ );
Bitmap aMask;
- aMaskStream >> aMask;
+
+ ReadDIB(aMask, aMaskStream, true);
aBmpEx = BitmapEx( aBmp, aMask );
}
else