nss: upgrade to release 3.73
[LibreOffice.git] / sc / inc / rowheightcontext.hxx
blob0543603963067c60f49de72a2cad7d7dec2c807c
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*
3 * This file is part of the LibreOffice project.
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
8 */
10 #ifndef INCLUDED_SC_INC_ROWHEIGHTCONTEXT_HXX
11 #define INCLUDED_SC_INC_ROWHEIGHTCONTEXT_HXX
13 #include "scdllapi.h"
15 #include <tools/fract.hxx>
16 #include <vcl/vclptr.hxx>
17 #include <vcl/outdev.hxx>
19 #include "compressedarray.hxx"
20 #include "types.hxx"
22 using RowHeightsArray = ScCompressedArray<SCROW, sal_uInt16>;
24 namespace sc {
26 class SC_DLLPUBLIC RowHeightContext
28 RowHeightsArray maHeights;
30 double mfPPTX;
31 double mfPPTY;
32 Fraction maZoomX;
33 Fraction maZoomY;
34 VclPtr<OutputDevice> mpOutDev;
36 sal_uInt16 mnExtraHeight;
37 bool mbForceAutoSize; /// whether to set height to optimal even when the manual height flag is set.
39 public:
40 RowHeightContext(
41 SCROW nMaxRow, double fPPTX, double fPPTY, const Fraction& rZoomX, const Fraction& rZoomY,
42 OutputDevice* pOutDev );
44 ~RowHeightContext();
46 double getPPTX() const { return mfPPTX;}
47 double getPPTY() const { return mfPPTY;}
48 const Fraction& getZoomX() const { return maZoomX;}
49 const Fraction& getZoomY() const { return maZoomY;}
51 OutputDevice* getOutputDevice() { return mpOutDev;}
53 void setExtraHeight( sal_uInt16 nH );
54 sal_uInt16 getExtraHeight() const { return mnExtraHeight;}
56 void setForceAutoSize( bool b );
57 bool isForceAutoSize() const { return mbForceAutoSize;}
59 RowHeightsArray& getHeightArray() { return maHeights; }
64 #endif
66 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */