LibreOffice Module sc (master)  1
lotfntbf.hxx
Go to the documentation of this file.
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*
3  * This file is part of the LibreOffice project.
4  *
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  *
9  * This file incorporates work covered by the following license notice:
10  *
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 .
18  */
19 
20 #pragma once
21 
22 #include <editeng/fontitem.hxx>
23 #include <editeng/fhgtitem.hxx>
24 #include <optional>
25 
26 // Code in fontbuff.cxx (excel)
27 
29 {
30 private:
31  struct ENTRY
32  {
33  std::optional<OUString> xTmpName;
34  std::unique_ptr<SvxFontItem> pFont;
35  std::unique_ptr<SvxFontHeightItem> pHeight;
36  sal_Int32 nType = -1; // < 0 -> undefined
37  void TmpName( const OUString &rNew )
38  {
39  xTmpName = rNew;
40  }
41  void Height( std::unique_ptr<SvxFontHeightItem> pNew )
42  {
43  pHeight = std::move(pNew);
44  }
45  void Type( const sal_uInt16 nNew ) { nType = nNew; }
46  };
47 
48  static void MakeFont( ENTRY* pEntry );
49 public:
50  const static sal_uInt16 nSize = 8;
51  void Fill( const sal_uInt8 nIndex, SfxItemSet& rItemSet );
52  void SetName( const sal_uInt16 nIndex, const OUString& rName );
53  void SetHeight( const sal_uInt16 nIndex, const sal_uInt16 nHeight );
54  void SetType( const sal_uInt16 nIndex, const sal_uInt16 nType );
55 private:
57 };
58 
59 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
std::optional< OUString > xTmpName
Definition: lotfntbf.hxx:33
void Height(std::unique_ptr< SvxFontHeightItem > pNew)
Definition: lotfntbf.hxx:41
void SetName(const sal_uInt16 nIndex, const OUString &rName)
Definition: fontbuff.cxx:70
void TmpName(const OUString &rNew)
Definition: lotfntbf.hxx:37
static const sal_uInt16 nSize
Definition: lotfntbf.hxx:50
ENTRY pData[nSize]
Definition: lotfntbf.hxx:56
static void MakeFont(ENTRY *pEntry)
Definition: fontbuff.cxx:103
void SetType(const sal_uInt16 nIndex, const sal_uInt16 nType)
Definition: fontbuff.cxx:90
std::unique_ptr< SvxFontHeightItem > pHeight
Definition: lotfntbf.hxx:35
unsigned char sal_uInt8
std::unique_ptr< SvxFontItem > pFont
Definition: lotfntbf.hxx:34
void Type(const sal_uInt16 nNew)
Definition: lotfntbf.hxx:45
QPRO_FUNC_TYPE nType
Definition: qproform.cxx:400
void SetHeight(const sal_uInt16 nIndex, const sal_uInt16 nHeight)
Definition: fontbuff.cxx:83
void Fill(const sal_uInt8 nIndex, SfxItemSet &rItemSet)
Definition: fontbuff.cxx:31