sd/source/ui/slidesorter/view/SlsLayeredDevice.cxx |   28 ++++++++++++++++++---
 1 file changed, 24 insertions(+), 4 deletions(-)

New commits:
commit 2f1a28cf8fcfdfc369cf91936062c4f942ec03dd
Author: Takeshi Abe <t...@fixedpoint.jp>
Date:   Thu Sep 11 19:23:03 2014 +0900

    fdo#75757: remove inheritance to std::vector
    
    from LayeredDevice::LayerContainer.
    
    Change-Id: Icc4b16db92daadbd742e83e90c95477c0c465f5b
    Reviewed-on: https://gerrit.libreoffice.org/11397
    Reviewed-by: Caolán McNamara <caol...@redhat.com>
    Tested-by: Caolán McNamara <caol...@redhat.com>

diff --git a/sd/source/ui/slidesorter/view/SlsLayeredDevice.cxx 
b/sd/source/ui/slidesorter/view/SlsLayeredDevice.cxx
index 72fdfe6..2fc8f01 100644
--- a/sd/source/ui/slidesorter/view/SlsLayeredDevice.cxx
+++ b/sd/source/ui/slidesorter/view/SlsLayeredDevice.cxx
@@ -130,11 +130,31 @@ typedef ::boost::shared_ptr<Layer> SharedLayer;
 
 } // end of anonymous namespace
 
-class LayeredDevice::LayerContainer : public ::std::vector<SharedLayer>
+class LayeredDevice::LayerContainer
 {
 public:
-    LayerContainer (void) {}
-    ~LayerContainer (void) {}
+    LayerContainer() : mvLayers() {}
+
+    bool empty() const { return mvLayers.empty(); }
+
+    size_t size() const { return mvLayers.size(); }
+
+    const SharedLayer& back() const { return mvLayers.back(); }
+
+    const ::std::vector<SharedLayer>::const_iterator begin() const { return 
mvLayers.begin(); }
+    const ::std::vector<SharedLayer>::const_iterator end() const { return 
mvLayers.end(); }
+
+    void clear() { mvLayers.clear(); }
+
+    void pop_back() { mvLayers.pop_back(); }
+
+    void resize(size_t n) { mvLayers.resize(n); }
+
+    const SharedLayer& operator[](size_t i) const { return mvLayers[i]; }
+    SharedLayer& operator[](size_t i) { return mvLayers[i]; }
+
+private:
+    ::std::vector<SharedLayer> mvLayers;
 };
 
 //===== LayeredDevice =========================================================
@@ -232,7 +252,7 @@ void LayeredDevice::RemovePainter (
 
     // Remove top most layers that do not contain any painters.
     while ( ! mpLayers->empty() && ! mpLayers->back()->HasPainter())
-        mpLayers->erase(mpLayers->end()-1);
+        mpLayers->pop_back();
 }
 
 void LayeredDevice::Repaint (const Region& rRepaintRegion)
_______________________________________________
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits

Reply via email to