summaryrefslogtreecommitdiff
path: root/drawinglayer/inc/drawinglayer/primitive2d
diff options
context:
space:
mode:
authorFrank Meies <fme@openoffice.org>2008-12-04 14:42:57 +0000
committerFrank Meies <fme@openoffice.org>2008-12-04 14:42:57 +0000
commit4c4bb11ad956f84dfb7d824cdd659b097cc3e334 (patch)
tree6a801a12945bf4b880ad1fe775a3418cdb13bd17 /drawinglayer/inc/drawinglayer/primitive2d
parent6ec5c10ab15b22ff83001858653b79467af0234d (diff)
#i5991# Overline support in drawing layer
Diffstat (limited to 'drawinglayer/inc/drawinglayer/primitive2d')
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/textdecoratedprimitive2d.hxx17
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/textlayoutdevice.hxx2
2 files changed, 19 insertions, 0 deletions
diff --git a/drawinglayer/inc/drawinglayer/primitive2d/textdecoratedprimitive2d.hxx b/drawinglayer/inc/drawinglayer/primitive2d/textdecoratedprimitive2d.hxx
index 118c6d852ef4..4a7b300ecfb1 100644
--- a/drawinglayer/inc/drawinglayer/primitive2d/textdecoratedprimitive2d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive2d/textdecoratedprimitive2d.hxx
@@ -55,6 +55,7 @@ namespace drawinglayer
{
namespace primitive2d
{
+ // This is used for both underline and overline
enum FontUnderline
{
FONT_UNDERLINE_NONE,
@@ -106,7 +107,9 @@ namespace drawinglayer
class TextDecoratedPortionPrimitive2D : public TextSimplePortionPrimitive2D
{
private:
+ basegfx::BColor maOverlineColor;
basegfx::BColor maTextlineColor;
+ FontUnderline meFontOverline;
FontUnderline meFontUnderline;
FontStrikeout meFontStrikeout;
FontEmphasisMark meFontEmphasisMark;
@@ -120,6 +123,16 @@ namespace drawinglayer
unsigned mbShadow : 1;
// helper methods
+ void impCreateTextLine(
+ std::vector< Primitive2DReference >& rTarget,
+ basegfx::DecomposedB2DHomMatrixContainer& rDecTrans,
+ const basegfx::B2DHomMatrix &rUnscaledTransform,
+ FontUnderline eLineStyle,
+ double fLineOffset,
+ double fLineHeight,
+ double fLineWidth,
+ const basegfx::BColor& rLineColor) const;
+
void impCreateGeometryContent(
std::vector< Primitive2DReference >& rTarget,
basegfx::DecomposedB2DHomMatrixContainer& rDecTrans,
@@ -154,7 +167,9 @@ namespace drawinglayer
const basegfx::BColor& rFontColor,
// local parameters
+ const basegfx::BColor& rOverlineColor,
const basegfx::BColor& rTextlineColor,
+ FontUnderline eFontOverline = FONT_UNDERLINE_NONE,
FontUnderline eFontUnderline = FONT_UNDERLINE_NONE,
bool bUnderlineAbove = false,
FontStrikeout eFontStrikeout = FONT_STRIKEOUT_NONE,
@@ -166,10 +181,12 @@ namespace drawinglayer
bool bShadow = false);
// get data
+ FontUnderline getFontOverline() const { return meFontOverline; }
FontUnderline getFontUnderline() const { return meFontUnderline; }
FontStrikeout getFontStrikeout() const { return meFontStrikeout; }
FontEmphasisMark getFontEmphasisMark() const { return meFontEmphasisMark; }
FontRelief getFontRelief() const { return meFontRelief; }
+ basegfx::BColor getOverlineColor() const { return maOverlineColor; }
basegfx::BColor getTextlineColor() const { return maTextlineColor; }
bool getUnderlineAbove() const { return mbUnderlineAbove; }
diff --git a/drawinglayer/inc/drawinglayer/primitive2d/textlayoutdevice.hxx b/drawinglayer/inc/drawinglayer/primitive2d/textlayoutdevice.hxx
index acac9fa01956..37695227107e 100644
--- a/drawinglayer/inc/drawinglayer/primitive2d/textlayoutdevice.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive2d/textlayoutdevice.hxx
@@ -79,6 +79,8 @@ namespace drawinglayer
void setFontAttributes(const FontAttributes& rFontAttributes, double fFontScaleX, double fFontScaleY);
double getTextHeight() const;
+ double getOverlineHeight() const;
+ double getOverlineOffset() const;
double getUnderlineHeight() const;
double getUnderlineOffset() const;
double getStrikeoutOffset() const;