diff options
author | Kohei Yoshida <kohei.yoshida@collabora.com> | 2014-11-25 19:18:01 -0500 |
---|---|---|
committer | Kohei Yoshida <kohei.yoshida@collabora.com> | 2014-11-25 21:14:46 -0500 |
commit | 96422e999fbfbfec22767649a973153afc4780f4 (patch) | |
tree | 94672e201d98a2d074013cd5168d4a2f206355f2 /vcl | |
parent | 5c3f47e44c2a734bddd0c3fb7f1151d5096ac494 (diff) |
Remove ptr_deque.hpp header include from vcl/outdev.hxx.
This header is also a very high impact header.
Change-Id: Iab63f2ec2edebc14b47820c6377a7f83131cfd06
Diffstat (limited to 'vcl')
-rw-r--r-- | vcl/Library_vcl.mk | 1 | ||||
-rw-r--r-- | vcl/inc/outdevstatestack.hxx | 31 | ||||
-rw-r--r-- | vcl/source/gdi/sallayout.cxx | 1 | ||||
-rw-r--r-- | vcl/source/outdev/outdev.cxx | 3 | ||||
-rw-r--r-- | vcl/source/outdev/outdevstate.cxx | 5 | ||||
-rw-r--r-- | vcl/source/outdev/outdevstatestack.cxx | 37 |
6 files changed, 74 insertions, 4 deletions
diff --git a/vcl/Library_vcl.mk b/vcl/Library_vcl.mk index 932ca4cd5026..5d900e2bf771 100644 --- a/vcl/Library_vcl.mk +++ b/vcl/Library_vcl.mk @@ -224,6 +224,7 @@ $(eval $(call gb_Library_add_exception_objects,vcl,\ vcl/source/edit/xtextedt \ vcl/source/outdev/outdev \ vcl/source/outdev/outdevstate \ + vcl/source/outdev/outdevstatestack \ vcl/source/outdev/clipping \ vcl/source/outdev/polygon \ vcl/source/outdev/transparent \ diff --git a/vcl/inc/outdevstatestack.hxx b/vcl/inc/outdevstatestack.hxx new file mode 100644 index 000000000000..406d62b469e3 --- /dev/null +++ b/vcl/inc/outdevstatestack.hxx @@ -0,0 +1,31 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + */ + +#ifndef INCLUDED_VCL_OUTDEVSTATESTACK_HXX +#define INCLUDED_VCL_OUTDEVSTATESTACK_HXX + +#include <vcl/outdevstate.hxx> + +#include <boost/ptr_container/ptr_deque.hpp> + +class OutDevStateStack +{ + typedef boost::ptr_deque<OutDevState> DataType; + DataType maData; +public: + bool empty() const; + size_t size() const; + void push_back( OutDevState* p ); + void pop_back(); + OutDevState& back(); +}; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/vcl/source/gdi/sallayout.cxx b/vcl/source/gdi/sallayout.cxx index c30a99af01fb..1a5938bdebab 100644 --- a/vcl/source/gdi/sallayout.cxx +++ b/vcl/source/gdi/sallayout.cxx @@ -50,6 +50,7 @@ #endif #include <algorithm> +#include <boost/scoped_array.hpp> #ifdef DEBUG //#define MULTI_SL_DEBUG diff --git a/vcl/source/outdev/outdev.cxx b/vcl/source/outdev/outdev.cxx index 5f75f419e5e6..82b80c3c62db 100644 --- a/vcl/source/outdev/outdev.cxx +++ b/vcl/source/outdev/outdev.cxx @@ -44,6 +44,7 @@ #include <window.h> #include <outdev.h> #include <outdata.hxx> +#include <outdevstatestack.hxx> #include "PhysicalFontCollection.hxx" @@ -95,7 +96,7 @@ OutputDevice::OutputDevice() : mpFontCollection = NULL; mpGetDevFontList = NULL; mpGetDevSizeList = NULL; - mpOutDevStateStack = new boost::ptr_deque<OutDevState>(); + mpOutDevStateStack = new OutDevStateStack; mpPDFWriter = NULL; mpAlphaVDev = NULL; mpExtOutDevData = NULL; diff --git a/vcl/source/outdev/outdevstate.cxx b/vcl/source/outdev/outdevstate.cxx index 738a5e510de0..a71c7d66cb92 100644 --- a/vcl/source/outdev/outdevstate.cxx +++ b/vcl/source/outdev/outdevstate.cxx @@ -17,7 +17,7 @@ * the License at http://www.apache.org/licenses/LICENSE-2.0 . */ -#include <sal/types.h> +#include <vcl/outdevstate.hxx> #include <vcl/outdev.hxx> #include <vcl/virdev.hxx> @@ -33,10 +33,9 @@ #include <tools/color.hxx> #include <tools/fontenum.hxx> -#include <vcl/outdevstate.hxx> - #include "outdev.h" #include "outdata.hxx" +#include <outdevstatestack.hxx> #include "salgdi.hxx" #include "sallayout.hxx" diff --git a/vcl/source/outdev/outdevstatestack.cxx b/vcl/source/outdev/outdevstatestack.cxx new file mode 100644 index 000000000000..0fcdcd52b74b --- /dev/null +++ b/vcl/source/outdev/outdevstatestack.cxx @@ -0,0 +1,37 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + */ + +#include <outdevstatestack.hxx> + +bool OutDevStateStack::empty() const +{ + return maData.empty(); +} + +size_t OutDevStateStack::size() const +{ + return maData.size(); +} + +void OutDevStateStack::push_back( OutDevState* p ) +{ + maData.push_back(p); +} + +void OutDevStateStack::pop_back() +{ + maData.pop_back(); +} + +OutDevState& OutDevStateStack::back() +{ + return maData.back(); +} + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ |