LibreOffice Module filter (master)
1
filter
source
graphicfilter
icgm
chart.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 <
sal/types.h
>
23
24
#include <memory>
25
#include <vector>
26
27
/* FILE TYPE CONSTANTS: */
28
#define BULCHART 32
/* Bullet chart file. */
29
/* the following were added although SPC doesn't have a #define */
30
/* for them... */
31
#define AUTOTTLCHT 95
/* Autobuild TTL CHT */
32
#define AUTOBULCHT 96
/* Autobuild BUL CHT */
33
#define AUTOTABCHT 97
/* Autobuild TAB CHT */
34
35
typedef
struct
TextEntry
36
{
37
sal_uInt16
nTypeOfText
;
38
sal_uInt16
nRowOrLineNum
;
39
sal_uInt16
nColumnNum
;
40
sal_uInt16
nZoneSize
;
// textzone attributes
41
sal_uInt16
nLineType
;
42
sal_uInt16
nAttributes
;
43
char
*
pText
;
// null terminated text
44
}
TextEntry
;
45
46
struct
DataNode
47
{
48
sal_Int16
nBoxX1
;
49
sal_Int16
nBoxY1
;
50
sal_Int16
nBoxX2
;
51
sal_Int16
nBoxY2
;
52
sal_Int8
nZoneEnum
;
53
DataNode
()
54
:
nBoxX1
(0)
55
,
nBoxY1
(0)
56
,
nBoxX2
(0)
57
,
nBoxY2
(0)
58
,
nZoneEnum
(0)
59
{
60
}
61
};
62
63
class
CGM
;
64
class
CGMImpressOutAct
;
65
class
CGMChart
final
66
{
67
friend
class
CGM
;
68
friend
class
CGMImpressOutAct
;
69
70
sal_Int8
mnCurrentFileType
;
71
::std::vector< std::unique_ptr<TextEntry> >
maTextEntryList
;
72
DataNode
mDataNode
[ 7 ];
73
74
public
:
75
CGMChart
();
76
~CGMChart
();
77
78
void
InsertTextEntry
( std::unique_ptr<TextEntry> );
79
80
void
ResetAnnotation
();
81
bool
IsAnnotation
()
const
;
82
};
83
84
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
TextEntry
struct TextEntry TextEntry
CGMChart
Definition:
chart.hxx:66
CGMChart::mDataNode
DataNode mDataNode[7]
Definition:
chart.hxx:72
CGMChart::InsertTextEntry
void InsertTextEntry(std::unique_ptr< TextEntry >)
Definition:
chart.cxx:42
CGMChart::ResetAnnotation
void ResetAnnotation()
Definition:
chart.cxx:47
CGMChart::mnCurrentFileType
sal_Int8 mnCurrentFileType
Definition:
chart.hxx:70
CGMChart::CGMChart
CGMChart()
Definition:
chart.cxx:23
CGMChart::IsAnnotation
bool IsAnnotation() const
Definition:
chart.cxx:52
CGMChart::maTextEntryList
::std::vector< std::unique_ptr< TextEntry > > maTextEntryList
Definition:
chart.hxx:71
CGMChart::~CGMChart
~CGMChart()
Definition:
chart.cxx:32
CGMImpressOutAct
Definition:
outact.hxx:42
CGM
Definition:
cgm.hxx:39
DataNode
Definition:
chart.hxx:47
DataNode::nZoneEnum
sal_Int8 nZoneEnum
Definition:
chart.hxx:52
DataNode::nBoxY1
sal_Int16 nBoxY1
Definition:
chart.hxx:49
DataNode::nBoxY2
sal_Int16 nBoxY2
Definition:
chart.hxx:51
DataNode::DataNode
DataNode()
Definition:
chart.hxx:53
DataNode::nBoxX2
sal_Int16 nBoxX2
Definition:
chart.hxx:50
DataNode::nBoxX1
sal_Int16 nBoxX1
Definition:
chart.hxx:48
TextEntry
Definition:
chart.hxx:36
TextEntry::nTypeOfText
sal_uInt16 nTypeOfText
Definition:
chart.hxx:37
TextEntry::nAttributes
sal_uInt16 nAttributes
Definition:
chart.hxx:42
TextEntry::pText
char * pText
Definition:
chart.hxx:43
TextEntry::nColumnNum
sal_uInt16 nColumnNum
Definition:
chart.hxx:39
TextEntry::nRowOrLineNum
sal_uInt16 nRowOrLineNum
Definition:
chart.hxx:38
TextEntry::nLineType
sal_uInt16 nLineType
Definition:
chart.hxx:41
TextEntry::nZoneSize
sal_uInt16 nZoneSize
Definition:
chart.hxx:40
types.h
sal_Int8
signed char sal_Int8
Generated on Sun Jul 30 2023 04:26:36 for LibreOffice Module filter (master) by
1.9.3