1*cdf0e10cSrcweir /************************************************************************* 2*cdf0e10cSrcweir * 3*cdf0e10cSrcweir * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4*cdf0e10cSrcweir * 5*cdf0e10cSrcweir * Copyright 2000, 2010 Oracle and/or its affiliates. 6*cdf0e10cSrcweir * 7*cdf0e10cSrcweir * OpenOffice.org - a multi-platform office productivity suite 8*cdf0e10cSrcweir * 9*cdf0e10cSrcweir * This file is part of OpenOffice.org. 10*cdf0e10cSrcweir * 11*cdf0e10cSrcweir * OpenOffice.org is free software: you can redistribute it and/or modify 12*cdf0e10cSrcweir * it under the terms of the GNU Lesser General Public License version 3 13*cdf0e10cSrcweir * only, as published by the Free Software Foundation. 14*cdf0e10cSrcweir * 15*cdf0e10cSrcweir * OpenOffice.org is distributed in the hope that it will be useful, 16*cdf0e10cSrcweir * but WITHOUT ANY WARRANTY; without even the implied warranty of 17*cdf0e10cSrcweir * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 18*cdf0e10cSrcweir * GNU Lesser General Public License version 3 for more details 19*cdf0e10cSrcweir * (a copy is included in the LICENSE file that accompanied this code). 20*cdf0e10cSrcweir * 21*cdf0e10cSrcweir * You should have received a copy of the GNU Lesser General Public License 22*cdf0e10cSrcweir * version 3 along with OpenOffice.org. If not, see 23*cdf0e10cSrcweir * <http://www.openoffice.org/license.html> 24*cdf0e10cSrcweir * for a copy of the LGPLv3 License. 25*cdf0e10cSrcweir * 26*cdf0e10cSrcweir ************************************************************************/ 27*cdf0e10cSrcweir 28*cdf0e10cSrcweir // MARKER(update_precomp.py): autogen include statement, do not remove 29*cdf0e10cSrcweir #include "precompiled_cui.hxx" 30*cdf0e10cSrcweir 31*cdf0e10cSrcweir #include <SpellAttrib.hxx> 32*cdf0e10cSrcweir #include <vcl/font.hxx> 33*cdf0e10cSrcweir #include <com/sun/star/uno/Reference.hxx> 34*cdf0e10cSrcweir #include <com/sun/star/linguistic2/XSpellAlternatives.hpp> 35*cdf0e10cSrcweir using namespace svx; 36*cdf0e10cSrcweir using namespace com::sun::star::linguistic2; 37*cdf0e10cSrcweir using namespace com::sun::star::uno; 38*cdf0e10cSrcweir 39*cdf0e10cSrcweir /*-- 26.06.2008 10:41:57--------------------------------------------------- 40*cdf0e10cSrcweir 41*cdf0e10cSrcweir -----------------------------------------------------------------------*/ 42*cdf0e10cSrcweir SpellErrorAttrib::SpellErrorAttrib( const SpellErrorDescription& rDesc ) : 43*cdf0e10cSrcweir TextAttrib(TEXTATTR_SPELL_ERROR), 44*cdf0e10cSrcweir m_aSpellErrorDescription( rDesc ) 45*cdf0e10cSrcweir { 46*cdf0e10cSrcweir } 47*cdf0e10cSrcweir 48*cdf0e10cSrcweir /*-- 10.09.2003 12:54:34--------------------------------------------------- 49*cdf0e10cSrcweir 50*cdf0e10cSrcweir -----------------------------------------------------------------------*/ 51*cdf0e10cSrcweir SpellErrorAttrib::SpellErrorAttrib( const SpellErrorAttrib& rAttr ) : 52*cdf0e10cSrcweir TextAttrib(TEXTATTR_SPELL_ERROR), 53*cdf0e10cSrcweir m_aSpellErrorDescription( rAttr.m_aSpellErrorDescription ) 54*cdf0e10cSrcweir { 55*cdf0e10cSrcweir } 56*cdf0e10cSrcweir /*-- 10.09.2003 12:54:34--------------------------------------------------- 57*cdf0e10cSrcweir 58*cdf0e10cSrcweir -----------------------------------------------------------------------*/ 59*cdf0e10cSrcweir SpellErrorAttrib::~SpellErrorAttrib() 60*cdf0e10cSrcweir { 61*cdf0e10cSrcweir } 62*cdf0e10cSrcweir /*-- 10.09.2003 12:54:35--------------------------------------------------- 63*cdf0e10cSrcweir 64*cdf0e10cSrcweir -----------------------------------------------------------------------*/ 65*cdf0e10cSrcweir void SpellErrorAttrib::SetFont( Font& ) const 66*cdf0e10cSrcweir { 67*cdf0e10cSrcweir //this attribute doesn't have a visual effect 68*cdf0e10cSrcweir } 69*cdf0e10cSrcweir /*-- 10.09.2003 12:54:35--------------------------------------------------- 70*cdf0e10cSrcweir 71*cdf0e10cSrcweir -----------------------------------------------------------------------*/ 72*cdf0e10cSrcweir TextAttrib* SpellErrorAttrib::Clone() const 73*cdf0e10cSrcweir { 74*cdf0e10cSrcweir return new SpellErrorAttrib(*this); 75*cdf0e10cSrcweir } 76*cdf0e10cSrcweir /*-- 10.09.2003 12:54:35--------------------------------------------------- 77*cdf0e10cSrcweir 78*cdf0e10cSrcweir -----------------------------------------------------------------------*/ 79*cdf0e10cSrcweir int SpellErrorAttrib::operator==( const TextAttrib& rAttr ) const 80*cdf0e10cSrcweir { 81*cdf0e10cSrcweir return Which() == rAttr.Which() && 82*cdf0e10cSrcweir m_aSpellErrorDescription == static_cast<const SpellErrorAttrib&>(rAttr).m_aSpellErrorDescription; 83*cdf0e10cSrcweir } 84*cdf0e10cSrcweir /*-- 10.09.2003 14:27:43--------------------------------------------------- 85*cdf0e10cSrcweir 86*cdf0e10cSrcweir -----------------------------------------------------------------------*/ 87*cdf0e10cSrcweir SpellLanguageAttrib::SpellLanguageAttrib(LanguageType eLang) : 88*cdf0e10cSrcweir TextAttrib(TEXTATTR_SPELL_LANGUAGE), 89*cdf0e10cSrcweir m_eLanguage(eLang) 90*cdf0e10cSrcweir { 91*cdf0e10cSrcweir } 92*cdf0e10cSrcweir /*-- 10.09.2003 14:27:43--------------------------------------------------- 93*cdf0e10cSrcweir 94*cdf0e10cSrcweir -----------------------------------------------------------------------*/ 95*cdf0e10cSrcweir SpellLanguageAttrib::SpellLanguageAttrib( const SpellLanguageAttrib& rAttr ) : 96*cdf0e10cSrcweir TextAttrib(TEXTATTR_SPELL_LANGUAGE), 97*cdf0e10cSrcweir m_eLanguage(rAttr.m_eLanguage) 98*cdf0e10cSrcweir { 99*cdf0e10cSrcweir } 100*cdf0e10cSrcweir /*-- 10.09.2003 14:27:43--------------------------------------------------- 101*cdf0e10cSrcweir 102*cdf0e10cSrcweir -----------------------------------------------------------------------*/ 103*cdf0e10cSrcweir SpellLanguageAttrib::~SpellLanguageAttrib() 104*cdf0e10cSrcweir { 105*cdf0e10cSrcweir } 106*cdf0e10cSrcweir /*-- 10.09.2003 14:27:43--------------------------------------------------- 107*cdf0e10cSrcweir 108*cdf0e10cSrcweir -----------------------------------------------------------------------*/ 109*cdf0e10cSrcweir void SpellLanguageAttrib::SetFont( Font& ) const 110*cdf0e10cSrcweir { 111*cdf0e10cSrcweir //no visual effect 112*cdf0e10cSrcweir } 113*cdf0e10cSrcweir /*-- 10.09.2003 14:27:44--------------------------------------------------- 114*cdf0e10cSrcweir 115*cdf0e10cSrcweir -----------------------------------------------------------------------*/ 116*cdf0e10cSrcweir TextAttrib* SpellLanguageAttrib::Clone() const 117*cdf0e10cSrcweir { 118*cdf0e10cSrcweir return new SpellLanguageAttrib(*this); 119*cdf0e10cSrcweir } 120*cdf0e10cSrcweir /*-- 10.09.2003 14:27:44--------------------------------------------------- 121*cdf0e10cSrcweir 122*cdf0e10cSrcweir -----------------------------------------------------------------------*/ 123*cdf0e10cSrcweir int SpellLanguageAttrib::operator==( const TextAttrib& rAttr ) const 124*cdf0e10cSrcweir { 125*cdf0e10cSrcweir return Which() == rAttr.Which() && 126*cdf0e10cSrcweir m_eLanguage == static_cast<const SpellLanguageAttrib&>(rAttr).m_eLanguage; 127*cdf0e10cSrcweir } 128*cdf0e10cSrcweir /*-- 31.10.2003 16:07:45--------------------------------------------------- 129*cdf0e10cSrcweir 130*cdf0e10cSrcweir -----------------------------------------------------------------------*/ 131*cdf0e10cSrcweir SpellBackgroundAttrib::SpellBackgroundAttrib(const Color& rCol) : 132*cdf0e10cSrcweir TextAttrib(TEXTATTR_SPELL_BACKGROUND), 133*cdf0e10cSrcweir m_aBackgroundColor(rCol) 134*cdf0e10cSrcweir { 135*cdf0e10cSrcweir } 136*cdf0e10cSrcweir /*-- 31.10.2003 16:07:45--------------------------------------------------- 137*cdf0e10cSrcweir 138*cdf0e10cSrcweir -----------------------------------------------------------------------*/ 139*cdf0e10cSrcweir SpellBackgroundAttrib::SpellBackgroundAttrib( const SpellBackgroundAttrib& rAttr ) : 140*cdf0e10cSrcweir TextAttrib(TEXTATTR_SPELL_BACKGROUND), 141*cdf0e10cSrcweir m_aBackgroundColor(rAttr.m_aBackgroundColor) 142*cdf0e10cSrcweir { 143*cdf0e10cSrcweir } 144*cdf0e10cSrcweir /*-- 31.10.2003 16:07:46--------------------------------------------------- 145*cdf0e10cSrcweir 146*cdf0e10cSrcweir -----------------------------------------------------------------------*/ 147*cdf0e10cSrcweir SpellBackgroundAttrib::~SpellBackgroundAttrib() 148*cdf0e10cSrcweir { 149*cdf0e10cSrcweir } 150*cdf0e10cSrcweir /*-- 31.10.2003 16:07:46--------------------------------------------------- 151*cdf0e10cSrcweir 152*cdf0e10cSrcweir -----------------------------------------------------------------------*/ 153*cdf0e10cSrcweir void SpellBackgroundAttrib::SetFont( Font& rFont ) const 154*cdf0e10cSrcweir { 155*cdf0e10cSrcweir rFont.SetFillColor(m_aBackgroundColor); 156*cdf0e10cSrcweir } 157*cdf0e10cSrcweir /*-- 31.10.2003 16:07:46--------------------------------------------------- 158*cdf0e10cSrcweir 159*cdf0e10cSrcweir -----------------------------------------------------------------------*/ 160*cdf0e10cSrcweir TextAttrib* SpellBackgroundAttrib::Clone() const 161*cdf0e10cSrcweir { 162*cdf0e10cSrcweir return new SpellBackgroundAttrib(*this); 163*cdf0e10cSrcweir } 164*cdf0e10cSrcweir /*-- 31.10.2003 16:07:47--------------------------------------------------- 165*cdf0e10cSrcweir 166*cdf0e10cSrcweir -----------------------------------------------------------------------*/ 167*cdf0e10cSrcweir int SpellBackgroundAttrib::operator==( const TextAttrib& rAttr ) const 168*cdf0e10cSrcweir { 169*cdf0e10cSrcweir return Which() == rAttr.Which() && 170*cdf0e10cSrcweir m_aBackgroundColor == static_cast<const SpellBackgroundAttrib&>(rAttr).m_aBackgroundColor; 171*cdf0e10cSrcweir } 172*cdf0e10cSrcweir 173