1*dec99bbdSOliver-Rainer Wittmann /************************************************************** 2*dec99bbdSOliver-Rainer Wittmann * 3*dec99bbdSOliver-Rainer Wittmann * Licensed to the Apache Software Foundation (ASF) under one 4*dec99bbdSOliver-Rainer Wittmann * or more contributor license agreements. See the NOTICE file 5*dec99bbdSOliver-Rainer Wittmann * distributed with this work for additional information 6*dec99bbdSOliver-Rainer Wittmann * regarding copyright ownership. The ASF licenses this file 7*dec99bbdSOliver-Rainer Wittmann * to you under the Apache License, Version 2.0 (the 8*dec99bbdSOliver-Rainer Wittmann * "License"); you may not use this file except in compliance 9*dec99bbdSOliver-Rainer Wittmann * with the License. You may obtain a copy of the License at 10*dec99bbdSOliver-Rainer Wittmann * 11*dec99bbdSOliver-Rainer Wittmann * http://www.apache.org/licenses/LICENSE-2.0 12*dec99bbdSOliver-Rainer Wittmann * 13*dec99bbdSOliver-Rainer Wittmann * Unless required by applicable law or agreed to in writing, 14*dec99bbdSOliver-Rainer Wittmann * software distributed under the License is distributed on an 15*dec99bbdSOliver-Rainer Wittmann * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16*dec99bbdSOliver-Rainer Wittmann * KIND, either express or implied. See the License for the 17*dec99bbdSOliver-Rainer Wittmann * specific language governing permissions and limitations 18*dec99bbdSOliver-Rainer Wittmann * under the License. 19*dec99bbdSOliver-Rainer Wittmann * 20*dec99bbdSOliver-Rainer Wittmann *************************************************************/ 21*dec99bbdSOliver-Rainer Wittmann 22*dec99bbdSOliver-Rainer Wittmann 23*dec99bbdSOliver-Rainer Wittmann 24*dec99bbdSOliver-Rainer Wittmann #ifndef _SW_OVERLAY_OVERLAYRANGES_HXX 25*dec99bbdSOliver-Rainer Wittmann #define _SW_OVERLAY_OVERLAYRANGES_HXX 26*dec99bbdSOliver-Rainer Wittmann 27*dec99bbdSOliver-Rainer Wittmann #include <svx/sdr/overlay/overlayobject.hxx> 28*dec99bbdSOliver-Rainer Wittmann #include <basegfx/range/b2drange.hxx> 29*dec99bbdSOliver-Rainer Wittmann 30*dec99bbdSOliver-Rainer Wittmann #include <vector> 31*dec99bbdSOliver-Rainer Wittmann 32*dec99bbdSOliver-Rainer Wittmann class SwView; 33*dec99bbdSOliver-Rainer Wittmann 34*dec99bbdSOliver-Rainer Wittmann ////////////////////////////////////////////////////////////////////////////// 35*dec99bbdSOliver-Rainer Wittmann 36*dec99bbdSOliver-Rainer Wittmann namespace sw 37*dec99bbdSOliver-Rainer Wittmann { 38*dec99bbdSOliver-Rainer Wittmann namespace overlay 39*dec99bbdSOliver-Rainer Wittmann { 40*dec99bbdSOliver-Rainer Wittmann class OverlayRanges : public sdr::overlay::OverlayObject 41*dec99bbdSOliver-Rainer Wittmann { 42*dec99bbdSOliver-Rainer Wittmann protected: 43*dec99bbdSOliver-Rainer Wittmann // geometry of overlay 44*dec99bbdSOliver-Rainer Wittmann std::vector< basegfx::B2DRange > maRanges; 45*dec99bbdSOliver-Rainer Wittmann 46*dec99bbdSOliver-Rainer Wittmann bool mbShowSolidBorder; 47*dec99bbdSOliver-Rainer Wittmann 48*dec99bbdSOliver-Rainer Wittmann // geometry creation for OverlayObject 49*dec99bbdSOliver-Rainer Wittmann virtual drawinglayer::primitive2d::Primitive2DSequence createOverlayObjectPrimitive2DSequence(); 50*dec99bbdSOliver-Rainer Wittmann 51*dec99bbdSOliver-Rainer Wittmann public: 52*dec99bbdSOliver-Rainer Wittmann static OverlayRanges* CreateOverlayRange( 53*dec99bbdSOliver-Rainer Wittmann SwView& rDocView, 54*dec99bbdSOliver-Rainer Wittmann const Color& rColor, 55*dec99bbdSOliver-Rainer Wittmann const std::vector< basegfx::B2DRange >& rRanges, 56*dec99bbdSOliver-Rainer Wittmann const bool bShowSolidBorder ); 57*dec99bbdSOliver-Rainer Wittmann 58*dec99bbdSOliver-Rainer Wittmann virtual ~OverlayRanges(); 59*dec99bbdSOliver-Rainer Wittmann 60*dec99bbdSOliver-Rainer Wittmann // data read access getRanges() const61*dec99bbdSOliver-Rainer Wittmann inline const std::vector< basegfx::B2DRange >& getRanges() const 62*dec99bbdSOliver-Rainer Wittmann { 63*dec99bbdSOliver-Rainer Wittmann return maRanges; 64*dec99bbdSOliver-Rainer Wittmann } 65*dec99bbdSOliver-Rainer Wittmann 66*dec99bbdSOliver-Rainer Wittmann // data write access 67*dec99bbdSOliver-Rainer Wittmann void setRanges(const std::vector< basegfx::B2DRange >& rNew); 68*dec99bbdSOliver-Rainer Wittmann 69*dec99bbdSOliver-Rainer Wittmann void ShowSolidBorder(); 70*dec99bbdSOliver-Rainer Wittmann void HideSolidBorder(); 71*dec99bbdSOliver-Rainer Wittmann 72*dec99bbdSOliver-Rainer Wittmann private: 73*dec99bbdSOliver-Rainer Wittmann OverlayRanges( 74*dec99bbdSOliver-Rainer Wittmann const Color& rColor, 75*dec99bbdSOliver-Rainer Wittmann const std::vector< basegfx::B2DRange >& rRanges, 76*dec99bbdSOliver-Rainer Wittmann const bool bShowSolidBorder ); 77*dec99bbdSOliver-Rainer Wittmann 78*dec99bbdSOliver-Rainer Wittmann }; 79*dec99bbdSOliver-Rainer Wittmann } // end of namespace overlay 80*dec99bbdSOliver-Rainer Wittmann } // end of namespace sw 81*dec99bbdSOliver-Rainer Wittmann 82*dec99bbdSOliver-Rainer Wittmann ////////////////////////////////////////////////////////////////////////////// 83*dec99bbdSOliver-Rainer Wittmann 84*dec99bbdSOliver-Rainer Wittmann #endif //_SW_OVERLAY_OVERLAYRANGES_HXX 85*dec99bbdSOliver-Rainer Wittmann 86*dec99bbdSOliver-Rainer Wittmann // eof 87