merge the formfield patch from ooo-build
[ooovba.git] / svx / source / sdr / overlay / overlayhelpline.cxx
blobeaff70a6f0dbefd74fa57eaa17748f74653ae279
1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * Copyright 2008 by Sun Microsystems, Inc.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * $RCSfile: overlayhelpline.cxx,v $
10 * $Revision: 1.4 $
12 * This file is part of OpenOffice.org.
14 * OpenOffice.org is free software: you can redistribute it and/or modify
15 * it under the terms of the GNU Lesser General Public License version 3
16 * only, as published by the Free Software Foundation.
18 * OpenOffice.org is distributed in the hope that it will be useful,
19 * but WITHOUT ANY WARRANTY; without even the implied warranty of
20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 * GNU Lesser General Public License version 3 for more details
22 * (a copy is included in the LICENSE file that accompanied this code).
24 * You should have received a copy of the GNU Lesser General Public License
25 * version 3 along with OpenOffice.org. If not, see
26 * <http://www.openoffice.org/license.html>
27 * for a copy of the LGPLv3 License.
29 ************************************************************************/
31 // MARKER(update_precomp.py): autogen include statement, do not remove
32 #include "precompiled_svx.hxx"
33 #include <svx/sdr/overlay/overlayhelpline.hxx>
34 #include <tools/gen.hxx>
35 #include <vcl/salbtype.hxx>
36 #include <vcl/outdev.hxx>
37 #include <basegfx/vector/b2dvector.hxx>
38 #include <svx/sdr/overlay/overlaytools.hxx>
39 #include <svx/sdr/overlay/overlaymanager.hxx>
41 //////////////////////////////////////////////////////////////////////////////
43 namespace sdr
45 namespace overlay
47 drawinglayer::primitive2d::Primitive2DSequence OverlayHelplineStriped::createOverlayObjectPrimitive2DSequence()
49 drawinglayer::primitive2d::Primitive2DSequence aRetval;
51 if(getOverlayManager())
53 const basegfx::BColor aRGBColorA(getOverlayManager()->getStripeColorA().getBColor());
54 const basegfx::BColor aRGBColorB(getOverlayManager()->getStripeColorB().getBColor());
55 const double fStripeLengthPixel(getOverlayManager()->getStripeLengthPixel());
56 const drawinglayer::primitive2d::HelplineStyle aStyle(
57 SDRHELPLINE_POINT == getKind() ? drawinglayer::primitive2d::HELPLINESTYLE_POINT :
58 SDRHELPLINE_VERTICAL == getKind() ? drawinglayer::primitive2d::HELPLINESTYLE_VERTICAL :
59 drawinglayer::primitive2d::HELPLINESTYLE_HORIZONTAL);
61 const drawinglayer::primitive2d::Primitive2DReference aReference(
62 new drawinglayer::primitive2d::OverlayHelplineStripedPrimitive(
63 getBasePosition(),
64 aStyle,
65 aRGBColorA,
66 aRGBColorB,
67 fStripeLengthPixel));
69 aRetval = drawinglayer::primitive2d::Primitive2DSequence(&aReference, 1);
72 return aRetval;
75 void OverlayHelplineStriped::stripeDefinitionHasChanged()
77 // react on OverlayManager's stripe definition change
78 objectChange();
81 OverlayHelplineStriped::OverlayHelplineStriped(
82 const basegfx::B2DPoint& rBasePos,
83 SdrHelpLineKind eNewKind)
84 : OverlayObjectWithBasePosition(rBasePos, Color(COL_BLACK)),
85 meKind(eNewKind)
89 OverlayHelplineStriped::~OverlayHelplineStriped()
92 } // end of namespace overlay
93 } // end of namespace sdr
95 //////////////////////////////////////////////////////////////////////////////
96 // eof