summaryrefslogtreecommitdiff
path: root/vcl/source/gdi/font.cxx
diff options
context:
space:
mode:
authorJens-Heiner Rechtien <hr@openoffice.org>2009-01-05 17:49:45 +0000
committerJens-Heiner Rechtien <hr@openoffice.org>2009-01-05 17:49:45 +0000
commita99237ba49d1d84dcff274f8baca46b4e7f940aa (patch)
treeb6cd12d7cbc0c0a22e058cfe4b16d47b10c6d367 /vcl/source/gdi/font.cxx
parent347a1622743363ae11cd12bc00d5827c5c952f79 (diff)
CWS-TOOLING: integrate CWS overline3
2008-12-11 15:24:46 +0100 fredrikh r265314 : i97099 2008-12-11 15:20:37 +0100 fredrikh r265313 : i97099 2008-12-11 15:18:00 +0100 fredrikh r265312 : i97099 2008-12-11 15:17:00 +0100 fredrikh r265311 : i97099 2008-12-11 15:13:20 +0100 fredrikh r265309 : i97144 2008-12-11 15:06:24 +0100 fredrikh r265306 : i97099 2008-11-24 10:41:42 +0100 fme r264213 : #i5991# Overline support 2008-11-24 10:39:53 +0100 fme r264212 : #i5991# Overline support 2008-11-24 10:02:13 +0100 fme r264209 : #5991# Overline support 2008-11-24 10:01:26 +0100 fme r264208 : #5991# Overline support 2008-11-24 09:59:11 +0100 fme r264207 : #5991# Overline support 2008-11-24 09:57:11 +0100 fme r264206 : #5991# Overline support 2008-11-14 10:36:44 +0100 fme r263667 : CWS-TOOLING: rebase CWS overline3 to trunk@263288 (milestone: DEV300:m35) 2008-11-13 16:12:13 +0100 fme r263649 : #i5991# migrate CWS overline3 to SVN.
Diffstat (limited to 'vcl/source/gdi/font.cxx')
-rw-r--r--vcl/source/gdi/font.cxx34
1 files changed, 31 insertions, 3 deletions
diff --git a/vcl/source/gdi/font.cxx b/vcl/source/gdi/font.cxx
index 33eadd075aa3..5c228072eb65 100644
--- a/vcl/source/gdi/font.cxx
+++ b/vcl/source/gdi/font.cxx
@@ -7,7 +7,7 @@
* OpenOffice.org - a multi-platform office productivity suite
*
* $RCSfile: font.cxx,v $
- * $Revision: 1.19 $
+ * $Revision: 1.19.134.1 $
*
* This file is part of OpenOffice.org.
*
@@ -64,6 +64,7 @@ Impl_Font::Impl_Font() :
meWidthType = WIDTH_DONTKNOW;
meItalic = ITALIC_NONE;
meUnderline = UNDERLINE_NONE;
+ meOverline = UNDERLINE_NONE;
meStrikeout = STRIKEOUT_NONE;
meRelief = RELIEF_NONE;
meEmphasisMark = EMPHASISMARK_NONE;
@@ -97,6 +98,7 @@ Impl_Font::Impl_Font( const Impl_Font& rImplFont )
meWidthType = rImplFont.meWidthType;
meItalic = rImplFont.meItalic;
meUnderline = rImplFont.meUnderline;
+ meOverline = rImplFont.meOverline;
meStrikeout = rImplFont.meStrikeout;
meRelief = rImplFont.meRelief;
meEmphasisMark = rImplFont.meEmphasisMark;
@@ -141,6 +143,7 @@ bool Impl_Font::operator==( const Impl_Font& rOther ) const
return false;
if( (meUnderline != rOther.meUnderline)
+ || (meOverline != rOther.meOverline)
|| (meStrikeout != rOther.meStrikeout)
|| (meRelief != rOther.meRelief)
|| (meEmphasisMark != rOther.meEmphasisMark)
@@ -593,6 +596,19 @@ void Font::SetUnderline( FontUnderline eUnderline )
// -----------------------------------------------------------------------
+void Font::SetOverline( FontUnderline eOverline )
+{
+ DBG_CHKTHIS( Font, NULL );
+
+ if( mpImplFont->meOverline != eOverline )
+ {
+ MakeUnique();
+ mpImplFont->meOverline = eOverline;
+ }
+}
+
+// -----------------------------------------------------------------------
+
void Font::SetStrikeout( FontStrikeout eStrikeout )
{
DBG_CHKTHIS( Font, NULL );
@@ -718,6 +734,11 @@ void Font::Merge( const Font& rFont )
SetUnderline( rFont.GetUnderline() );
SetWordLineMode( rFont.IsWordLineMode() );
}
+ if ( rFont.GetOverline() != UNDERLINE_DONTKNOW )
+ {
+ SetOverline( rFont.GetOverline() );
+ SetWordLineMode( rFont.IsWordLineMode() );
+ }
if ( rFont.GetStrikeout() != STRIKEOUT_DONTKNOW )
{
SetStrikeout( rFont.GetStrikeout() );
@@ -785,6 +806,10 @@ SvStream& operator>>( SvStream& rIStm, Impl_Font& rImpl_Font )
rIStm >> bTmp; rImpl_Font.mbVertical = bTmp;
rIStm >> nTmp16; rImpl_Font.meEmphasisMark = (FontEmphasisMark)nTmp16;
}
+ if( aCompat.GetVersion() >= 3 )
+ {
+ rIStm >> nTmp16; rImpl_Font.meOverline = (FontUnderline) nTmp16;
+ }
// Relief
// CJKContextLanguage
@@ -795,7 +820,7 @@ SvStream& operator>>( SvStream& rIStm, Impl_Font& rImpl_Font )
SvStream& operator<<( SvStream& rOStm, const Impl_Font& rImpl_Font )
{
- VersionCompat aCompat( rOStm, STREAM_WRITE, 2 );
+ VersionCompat aCompat( rOStm, STREAM_WRITE, 3 );
rOStm.WriteByteString( rImpl_Font.maFamilyName, rOStm.GetStreamCharSet() );
rOStm.WriteByteString( rImpl_Font.maStyleName, rOStm.GetStreamCharSet() );
rOStm << rImpl_Font.maSize;
@@ -823,6 +848,9 @@ SvStream& operator<<( SvStream& rOStm, const Impl_Font& rImpl_Font )
rOStm << (BOOL) rImpl_Font.mbVertical;
rOStm << (UINT16) rImpl_Font.meEmphasisMark;
+ // new in version 3
+ rOStm << (UINT16) rImpl_Font.meOverline;
+
return rOStm;
}
@@ -1082,8 +1110,8 @@ BOOL Font::IsOutline() const { return mpImplFont->mbOutline; }
BOOL Font::IsShadow() const { return mpImplFont->mbShadow; }
FontRelief Font::GetRelief() const { return mpImplFont->meRelief; }
FontUnderline Font::GetUnderline() const { return mpImplFont->meUnderline; }
+FontUnderline Font::GetOverline() const { return mpImplFont->meOverline; }
FontStrikeout Font::GetStrikeout() const { return mpImplFont->meStrikeout; }
FontEmphasisMark Font::GetEmphasisMark() const { return mpImplFont->meEmphasisMark; }
BOOL Font::IsWordLineMode() const { return mpImplFont->mbWordLine; }
BOOL Font::IsSameInstance( const Font& rFont ) const { return (mpImplFont == rFont.mpImplFont); }
-