xref: /aoo4110/main/svx/inc/svx/sdtfsitm.hxx (revision b1cdbd2c)
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 _SDTFSITM_HXX
24 #define _SDTFSITM_HXX
25 
26 #include <svl/eitem.hxx>
27 #include <svx/svddef.hxx>
28 #include "svx/svxdllapi.h"
29 
30 enum SdrFitToSizeType {SDRTEXTFIT_NONE,         // - kein FitToSize
31 					   SDRTEXTFIT_PROPORTIONAL, // - Alle Buchstaben proportional umgroessern
32 					   SDRTEXTFIT_ALLLINES,     // - Zus. jede Zeile separat in der Breite stretchen
33 					   SDRTEXTFIT_RESIZEATTR};  // - Bei Rahmenumgroesserung (ausser Autogrow) wird
34 												//   die Schriftgroesse umattributiert (hart)
35 
36 // Bei SDRTEXTFIT_PROPORTIONAL und SDRTEXTFIT_ALLLINES gibt es kein AutoGrow und
37 // keine automatischen Umbrueche.
38 // Ist SDRTEXTFIT_RESIZEATTR gesetzt, so wird beim umgroessern des Textrahmens
39 // (ausser bei AutoGrow) die Schrift durch harte Attributierung ebenfalls
40 // umgegroessert.
41 // Bei AutoGrowingWidth gibt es ebenfalls keine automatischen Umbrueche (erst bei
42 // TextMaxFrameWidth).
43 
44 //--------------------------------
45 // class SdrTextFitToSizeTypeItem
46 //--------------------------------
47 class SVX_DLLPUBLIC SdrTextFitToSizeTypeItem: public SfxEnumItem {
48 public:
49 	TYPEINFO();
SdrTextFitToSizeTypeItem(SdrFitToSizeType eFit=SDRTEXTFIT_NONE)50 	SdrTextFitToSizeTypeItem(SdrFitToSizeType eFit=SDRTEXTFIT_NONE): SfxEnumItem(SDRATTR_TEXT_FITTOSIZE,(sal_uInt16)eFit) {}
SdrTextFitToSizeTypeItem(SvStream & rIn)51 	SdrTextFitToSizeTypeItem(SvStream& rIn)                        : SfxEnumItem(SDRATTR_TEXT_FITTOSIZE,rIn)  {}
52 	virtual SfxPoolItem*     Clone(SfxItemPool* pPool=NULL) const;
53 	virtual SfxPoolItem*     Create(SvStream& rIn, sal_uInt16 nVer) const;
54 	virtual sal_uInt16           GetValueCount() const; // { return 4; }
GetValue() const55 			SdrFitToSizeType GetValue() const      { return (SdrFitToSizeType)SfxEnumItem::GetValue(); }
56 
57 	virtual	sal_Bool        	 QueryValue( com::sun::star::uno::Any& rVal, sal_uInt8 nMemberId = 0 ) const;
58 	virtual	sal_Bool			 PutValue( const com::sun::star::uno::Any& rVal, sal_uInt8 nMemberId = 0 );
59 
60 	virtual String  GetValueTextByPos(sal_uInt16 nPos) const;
61     virtual SfxItemPresentation GetPresentation(SfxItemPresentation ePres, SfxMapUnit eCoreMetric, SfxMapUnit ePresMetric, String& rText, const IntlWrapper * = 0) const;
62 	virtual int              HasBoolValue() const;
63 	virtual sal_Bool             GetBoolValue() const;
64 	virtual void             SetBoolValue(sal_Bool bVal);
65 };
66 
67 #endif
68