1 /************************************************************** 2 * 3 * Licensed to the Apache Software Foundation (ASF) under one 4 * or more contributor license agreements. See the NOTICE file 5 * distributed with this work for additional information 6 * regarding copyright ownership. The ASF licenses this file 7 * to you under the Apache License, Version 2.0 (the 8 * "License"); you may not use this file except in compliance 9 * with the License. You may obtain a copy of the License at 10 * 11 * http://www.apache.org/licenses/LICENSE-2.0 12 * 13 * Unless required by applicable law or agreed to in writing, 14 * software distributed under the License is distributed on an 15 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16 * KIND, either express or implied. See the License for the 17 * specific language governing permissions and limitations 18 * under the License. 19 * 20 *************************************************************/ 21 22 23 #ifndef _SVX_CRSDITEM_HXX 24 #define _SVX_CRSDITEM_HXX 25 26 // include --------------------------------------------------------------- 27 28 #include <vcl/vclenum.hxx> 29 #include <svl/eitem.hxx> 30 #include <editeng/editengdllapi.h> 31 32 class SvXMLUnitConverter; 33 namespace rtl 34 { 35 class OUString; 36 } 37 38 // class SvxCrossedOutItem ----------------------------------------------- 39 40 /* 41 [Beschreibung] 42 Dieses Item beschreibt, ob und wie durchstrichen ist. 43 */ 44 45 class EDITENG_DLLPUBLIC SvxCrossedOutItem : public SfxEnumItem 46 { 47 public: 48 TYPEINFO(); 49 50 SvxCrossedOutItem( const FontStrikeout eSt /*= STRIKEOUT_NONE*/, 51 const sal_uInt16 nId ); 52 53 // "pure virtual Methoden" vom SfxPoolItem 54 virtual SfxItemPresentation GetPresentation( SfxItemPresentation ePres, 55 SfxMapUnit eCoreMetric, 56 SfxMapUnit ePresMetric, 57 String &rText, const IntlWrapper * = 0 ) const; 58 59 virtual SfxPoolItem* Clone( SfxItemPool *pPool = 0 ) const; 60 virtual SfxPoolItem* Create(SvStream &, sal_uInt16) const; 61 virtual SvStream& Store(SvStream &, sal_uInt16 nItemVersion) const; 62 virtual String GetValueTextByPos( sal_uInt16 nPos ) const; 63 virtual sal_uInt16 GetValueCount() const; 64 virtual sal_Bool QueryValue( com::sun::star::uno::Any& rVal, sal_uInt8 nMemberId = 0 ) const; 65 virtual sal_Bool PutValue( const com::sun::star::uno::Any& rVal, sal_uInt8 nMemberId = 0 ); 66 67 // MS VC4.0 kommt durcheinander SetValue(sal_uInt16 nNewVal)68 void SetValue( sal_uInt16 nNewVal ) 69 {SfxEnumItem::SetValue(nNewVal); } 70 71 virtual int HasBoolValue() const; 72 virtual sal_Bool GetBoolValue() const; 73 virtual void SetBoolValue( sal_Bool bVal ); 74 operator =(const SvxCrossedOutItem & rCross)75 inline SvxCrossedOutItem& operator=(const SvxCrossedOutItem& rCross) 76 { 77 SetValue( rCross.GetValue() ); 78 return *this; 79 } 80 81 // enum cast GetStrikeout() const82 FontStrikeout GetStrikeout() const 83 { return (FontStrikeout)GetValue(); } SetStrikeout(FontStrikeout eNew)84 void SetStrikeout( FontStrikeout eNew ) 85 { SetValue( (sal_uInt16)eNew ); } 86 }; 87 88 #endif // #ifndef _SVX_CRSDITEM_HXX 89 90