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_PARAPREV_HXX 24 #define _SVX_PARAPREV_HXX 25 26 // include --------------------------------------------------------------- 27 28 #include <vcl/window.hxx> 29 #include <editeng/svxenum.hxx> 30 #include "svx/svxdllapi.h" 31 32 // enum ------------------------------------------------------------------ 33 34 enum SvxPrevLineSpace 35 { 36 SVX_PREV_LINESPACE_1 = 0, 37 SVX_PREV_LINESPACE_15, 38 SVX_PREV_LINESPACE_2, 39 SVX_PREV_LINESPACE_PROP, 40 SVX_PREV_LINESPACE_MIN, 41 SVX_PREV_LINESPACE_DURCH 42 }; 43 44 // class SvxParaPrevWindow ----------------------------------------------- 45 46 class SVX_DLLPUBLIC SvxParaPrevWindow : public Window 47 { 48 using Window::Draw; 49 private: 50 Size aWinSize; 51 Size aSize; 52 53 // Einzuege 54 long nLeftMargin; 55 long nRightMargin; 56 short nFirstLineOfst; 57 // Abstaende 58 sal_uInt16 nUpper; 59 sal_uInt16 nLower; 60 // Ausrichtung 61 SvxAdjust eAdjust; 62 // Letzte Zeile im Blocksatz 63 SvxAdjust eLastLine; 64 // Zeilenabstand 65 SvxPrevLineSpace eLine; 66 sal_uInt16 nLineVal; 67 68 String aText; 69 Rectangle Lines[9]; 70 71 protected: 72 virtual void Paint( const Rectangle& rRect ); 73 74 void DrawParagraph( sal_Bool bAll ); 75 76 public: 77 SvxParaPrevWindow( Window* pParent, const ResId& rId ); 78 SetFirstLineOfst(short nNew)79 void SetFirstLineOfst( short nNew ) { nFirstLineOfst = nNew; } SetLeftMargin(long nNew)80 void SetLeftMargin( long nNew ) { nLeftMargin = nNew; } SetRightMargin(long nNew)81 void SetRightMargin( long nNew ) { nRightMargin = nNew; } SetUpper(sal_uInt16 nNew)82 void SetUpper( sal_uInt16 nNew ) { nUpper = nNew; } SetLower(sal_uInt16 nNew)83 void SetLower( sal_uInt16 nNew ) { nLower = nNew; } SetAdjust(SvxAdjust eNew)84 void SetAdjust( SvxAdjust eNew ) { eAdjust = eNew; } SetLastLine(SvxAdjust eNew)85 void SetLastLine( SvxAdjust eNew ) { eLastLine = eNew; } SetLineSpace(SvxPrevLineSpace eNew,sal_uInt16 nNew=0)86 void SetLineSpace( SvxPrevLineSpace eNew, sal_uInt16 nNew = 0 ) 87 { eLine = eNew; nLineVal = nNew; } SetText(const String & rStr)88 void SetText( const String& rStr ) { aText = rStr; } SetSize(Size aNew)89 void SetSize( Size aNew ) { aSize = aNew; } 90 GetFirstLineOfst() const91 short GetFirstLineOfst() const { return nFirstLineOfst; } GetLeftMargin() const92 long GetLeftMargin() const { return nLeftMargin; } GetRightMargin() const93 long GetRightMargin() const { return nRightMargin; } GetUpper() const94 sal_uInt16 GetUpper() const { return nUpper; } GetLower() const95 sal_uInt16 GetLower() const { return nLower; } GetAdjust() const96 SvxAdjust GetAdjust() const { return eAdjust; } 97 GetLineEnum() const98 SvxPrevLineSpace GetLineEnum() const { return eLine; } GetLineValue() const99 sal_uInt16 GetLineValue() const { return nLineVal; } GetText() const100 String GetText() const { return aText; } GetSize() const101 Size GetSize() const { return aSize; } 102 103 void OutputSizeChanged(); 104 Draw(sal_Bool bAll)105 void Draw( sal_Bool bAll ) { DrawParagraph( bAll ); } 106 }; 107 108 #endif 109 110