fix baseline build (old cairo) - 'cairo_rectangle_int_t' does not name a type
[LibreOffice.git] / sc / source / filter / inc / lotfntbf.hxx
blob6cf450d63e95edd6b523595ce5b24c6079d17da0
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/.
9 * This file incorporates work covered by the following license notice:
11 * Licensed to the Apache Software Foundation (ASF) under one or more
12 * contributor license agreements. See the NOTICE file distributed
13 * with this work for additional information regarding copyright
14 * ownership. The ASF licenses this file to you under the Apache
15 * License, Version 2.0 (the "License"); you may not use this file
16 * except in compliance with the License. You may obtain a copy of
17 * the License at http://www.apache.org/licenses/LICENSE-2.0 .
20 #ifndef INCLUDED_SC_SOURCE_FILTER_INC_LOTFNTBF_HXX
21 #define INCLUDED_SC_SOURCE_FILTER_INC_LOTFNTBF_HXX
23 #include "scitems.hxx"
24 #include <editeng/fontitem.hxx>
25 #include <editeng/fhgtitem.hxx>
26 #include <editeng/colritem.hxx>
28 // Code in fontbuff.cxx (excel)
30 class LotusFontBuffer
32 private:
33 struct ENTRY
35 OUString* pTmpName;
36 SvxFontItem* pFont;
37 SvxFontHeightItem* pHeight;
38 SvxColorItem* pColor;
39 sal_Int32 nType; // < 0 -> undefiniert
40 inline ENTRY()
42 pTmpName = NULL;
43 pFont = NULL;
44 pHeight = NULL;
45 pColor = NULL;
46 nType = -1;
48 inline ~ENTRY()
50 if( pTmpName )
51 delete pTmpName;
52 if( pFont )
53 delete pFont;
54 if( pHeight )
55 delete pHeight;
56 if( pColor )
57 delete pColor;
59 inline void TmpName( const OUString &rNew )
61 if( pTmpName )
62 *pTmpName = rNew;
63 else
64 pTmpName = new OUString( rNew );
66 inline void Font( SvxFontItem& rNew )
68 if( pFont )
69 delete pFont;
70 pFont = &rNew;
72 inline void Height( SvxFontHeightItem& rNew )
74 if( pHeight )
75 delete pHeight;
76 pHeight = &rNew;
78 inline void Color( SvxColorItem& rNew )
80 if( pColor )
81 delete pColor;
82 pColor = &rNew;
84 inline void Type( const sal_uInt16 nNew ) { nType = nNew; }
87 static void MakeFont( ENTRY* pEntry );
88 public:
89 const static sal_uInt16 nSize = 8;
90 void Fill( const sal_uInt8 nIndex, SfxItemSet& rItemSet );
91 void SetName( const sal_uInt16 nIndex, const OUString& rName );
92 void SetHeight( const sal_uInt16 nIndex, const sal_uInt16 nHeight );
93 void SetType( const sal_uInt16 nIndex, const sal_uInt16 nType );
94 private:
95 ENTRY pData[ nSize ];
98 #endif
100 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */