summaryrefslogtreecommitdiff
path: root/vcl
diff options
context:
space:
mode:
authorMarcel Metz <mmetz@adrian-broher.net>2011-12-05 19:08:36 +0100
committerEike Rathke <erack@redhat.com>2011-12-05 22:54:55 +0100
commitdc6431f7fde63691a0022bec662e554b0bd432ed (patch)
tree55b018098c967d9fb4c5110a806fad824a44783b /vcl
parentf5b63844cc6a4b96fcf0db0c0c9c1194847fc914 (diff)
Replace Stack with std::stack< Color* >
Diffstat (limited to 'vcl')
-rw-r--r--vcl/inc/vcl/cvtsvm.hxx5
-rw-r--r--vcl/source/gdi/cvtsvm.cxx16
2 files changed, 12 insertions, 9 deletions
diff --git a/vcl/inc/vcl/cvtsvm.hxx b/vcl/inc/vcl/cvtsvm.hxx
index de4158e08efc..370871be7715 100644
--- a/vcl/inc/vcl/cvtsvm.hxx
+++ b/vcl/inc/vcl/cvtsvm.hxx
@@ -29,6 +29,7 @@
#ifndef _SV_CVTMTF_HXX
#define _SV_CVTMTF_HXX
+#include <stack>
#include <vcl/dllapi.h>
#include <vcl/metaact.hxx>
#include <vcl/gdimtf.hxx>
@@ -91,8 +92,6 @@
// - SVMConverter -
// ----------------
-class Stack;
-
class VCL_PLUGIN_PUBLIC SVMConverter
{
private:
@@ -100,7 +99,7 @@ private:
SAL_DLLPRIVATE void ImplConvertToSVM1( SvStream& rOStm, GDIMetaFile& rMtf );
SAL_DLLPRIVATE sal_uLong ImplWriteActions( SvStream& rOStm, GDIMetaFile& rMtf,
VirtualDevice& rSaveVDev, sal_Bool& rRop_0_1,
- Color& rLineCol, Stack& rLineColStack,
+ Color& rLineCol, ::std::stack<Color*>& rLineColStack,
rtl_TextEncoding& rActualCharSet );
public:
diff --git a/vcl/source/gdi/cvtsvm.cxx b/vcl/source/gdi/cvtsvm.cxx
index 92b326cdfaed..7d9ec4d53177 100644
--- a/vcl/source/gdi/cvtsvm.cxx
+++ b/vcl/source/gdi/cvtsvm.cxx
@@ -1374,7 +1374,7 @@ void SVMConverter::ImplConvertToSVM1( SvStream& rOStm, GDIMetaFile& rMtf )
sal_Bool bRop_0_1 = sal_False;
VirtualDevice aSaveVDev;
Color aLineCol( COL_BLACK );
- Stack aLineColStack;
+ ::std::stack< Color* > aLineColStack;
rOStm.SetNumberFormatInt( NUMBERFORMAT_INT_LITTLEENDIAN );
@@ -1399,15 +1399,18 @@ void SVMConverter::ImplConvertToSVM1( SvStream& rOStm, GDIMetaFile& rMtf )
rOStm.SetNumberFormatInt( nOldFormat );
// cleanup push-pop stack if neccessary
- for( void* pCol = aLineColStack.Pop(); pCol; pCol = aLineColStack.Pop() )
- delete (Color*) pCol;
+ while ( !aLineColStack.empty() )
+ {
+ delete aLineColStack.top();
+ aLineColStack.pop();
+ }
}
// ------------------------------------------------------------------------
sal_uLong SVMConverter::ImplWriteActions( SvStream& rOStm, GDIMetaFile& rMtf,
VirtualDevice& rSaveVDev, sal_Bool& rRop_0_1,
- Color& rLineCol, Stack& rLineColStack,
+ Color& rLineCol, ::std::stack< Color* >& rLineColStack,
rtl_TextEncoding& rActualCharSet )
{
sal_uLong nCount = 0;
@@ -2054,7 +2057,7 @@ sal_uLong SVMConverter::ImplWriteActions( SvStream& rOStm, GDIMetaFile& rMtf,
case( META_PUSH_ACTION ):
{
ImplWritePushAction( rOStm );
- rLineColStack.Push( new Color( rLineCol ) );
+ rLineColStack.push( new Color( rLineCol ) );
rSaveVDev.Push();
nCount++;
}
@@ -2062,7 +2065,8 @@ sal_uLong SVMConverter::ImplWriteActions( SvStream& rOStm, GDIMetaFile& rMtf,
case( META_POP_ACTION ):
{
- Color* pCol = (Color*) rLineColStack.Pop();
+ Color* pCol = rLineColStack.top();
+ rLineColStack.pop();
if( pCol )
{