LibreOffice Module filter (master)
1
filter
source
graphicfilter
icgm
classx.cxx
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
21
#include "
cgm.hxx
"
22
#include "
elements.hxx
"
23
#include "
outact.hxx
"
24
25
26
void
CGM::ImplSetUnderlineMode
()
27
{
28
sal_uInt32 nMode =
ImplGetUI16
();
29
switch
( nMode )
30
{
31
case
1 :
pElement
->eUnderlineMode =
UM_LOW
;
break
;
32
case
2 :
pElement
->eUnderlineMode =
UM_HIGH
;
break
;
33
case
4 :
pElement
->eUnderlineMode =
UM_STRIKEOUT
;
break
;
34
case
8 :
pElement
->eUnderlineMode =
UM_OVERSCORE
;
break
;
35
default
:
pElement
->eUnderlineMode =
UM_OFF
;
break
;
36
}
37
pElement
->nUnderlineColor =
ImplGetBitmapColor
();
38
}
39
40
void
CGM::ImplDoClass6
()
41
{
42
switch
(
mnElementID
)
43
{
44
case
0x01 :
/*Escape*/
45
{
46
tools::Long
nIdentifier =
ImplGetI
(
pElement
->nIntegerPrecision );
47
switch
( nIdentifier )
48
{
49
case
0 :
/*inquire function support */
break
;
50
case
-1 :
/*set underline mode*/
51
{
52
ImplSetUnderlineMode
();
53
}
54
break
;
55
case
-2 :
/*set script mode */
break
;
56
case
-3 :
/*set shadow mode */
break
;
57
case
-6 :
/*inquire origin offset */
break
;
58
case
-8 :
/*set media size */
break
;
59
case
-10 :
/*set character mode */
break
;
60
case
-14 :
/*resolution mode */
break
;
61
case
-17 :
/*line cap */
break
;
62
case
-18 :
/*line join */
break
;
63
case
-19 :
/*edge join */
break
;
64
case
-30 :
/*media type */
break
;
65
case
-31 :
/*number of copies */
break
;
66
case
-32 :
/*orientation */
break
;
67
case
-33 :
/*device color representation */
break
;
68
case
-34 :
/*device font list */
break
;
69
case
-35 :
/*color reversal mode */
break
;
70
case
-36 :
/*line cap attributes */
break
;
71
case
-37 :
/*begin effect */
break
;
72
case
-38 :
/*end effect */
break
;
73
case
-39 :
/*begin effect definition */
break
;
74
case
-40 :
/*end effect definition */
break
;
75
case
-41 :
/*end style definition */
break
;
76
case
-42 :
/*begin eps data */
break
;
77
case
-43 :
/*eps data */
break
;
78
case
-44 :
/*end eps data */
break
;
79
case
-45 :
/*set background style */
break
;
80
case
-46 :
/*set eps mode */
break
;
81
case
-47 :
/*fill mode */
break
;
82
case
-48 :
/*begin symbol */
break
;
83
case
-49 :
/*end symbol */
break
;
84
case
-50 :
/*begin layer */
break
;
85
case
-51 :
/*end layer */
break
;
86
case
-52 :
/*layer visibility */
break
;
87
case
-53 :
/*inquire foreign data */
break
;
88
case
-54 :
/*set text offset */
break
;
89
case
-55 :
/*begin group */
break
;
90
case
-56 :
/*end group */
break
;
91
case
-100 :
/*begin patch */
break
;
92
case
-101 :
/*end patch */
break
;
93
case
-102 :
/*begin block text region */
break
;
94
case
-103 :
/*end block text region */
break
;
95
case
-120 :
/*region margins */
break
;
96
case
-121 :
/*region expansions */
break
;
97
case
-122 :
/*region anchor */
break
;
98
case
-123 :
/*paragraph horizontal align */
break
;
99
case
-124 :
/*paragraph vertical align */
break
;
100
case
-125 :
/*region line flow */
break
;
101
case
-130 :
/*paragraph spacing */
break
;
102
case
-131 :
/*paragraph indentation */
break
;
103
case
-132 :
/*paragraph tabs */
break
;
104
case
-133 :
/*paragraph bullet */
break
;
105
case
-134 :
/*paragraph bullet level */
break
;
106
case
-135 :
/*line horizontal align */
break
;
107
case
-136 :
/*line vertical align */
break
;
108
case
-137 :
/*line spacing */
break
;
109
case
-138 :
/*word wrap */
break
;
110
case
-150 :
/*forward advance distance */
break
;
111
case
-151 :
/*word spacing */
break
;
112
case
-152 :
/*external leading */
break
;
113
case
-160 :
/*set gradient offset */
break
;
114
case
-161 :
/*set gradient edge */
break
;
115
case
-162 :
/*set gradient angle */
break
;
116
case
-163 :
/*set gradient description */
break
;
117
case
-164 :
/*set gradient style */
break
;
118
case
-165 :
/*set background style */
break
;
119
case
-170 :
/*geometric pattern draw style */
break
;
120
case
-190 :
/*set character width */
break
;
121
case
-191 :
/*hyperlink definitions */
break
;
122
case
-192 :
/*set color name for pantone */
break
;
123
case
-32746 :
/*set text font */
break
;
124
case
-32747 :
/*font selection mode */
break
;
125
case
-32752 :
/*connecting edge */
break
;
126
case
-32753 :
/*set drawing mode */
break
;
127
case
-32754 :
/*inquire clip rectangle */
break
;
128
case
-32755 :
/*protection region indicator */
break
;
129
case
-32756 :
/*end protection region */
break
;
130
case
-32757 :
/*begin protection region */
break
;
131
case
-32758 :
/*geometric pattern definition */
break
;
132
case
-32759 :
/*hatch style definition */
break
;
133
case
-32760 :
/*close figure */
break
;
134
case
-32761 :
/*end figure*/
135
{
136
mpOutAct
->EndFigure();
137
mbFigure
=
false
;
138
}
139
break
;
140
case
-32762 :
/*begin figure*/
141
{
142
mbFigure
=
true
;
143
mpOutAct
->BeginFigure();
144
}
145
break
;
146
case
-32763 :
/*pop transformation */
break
;
147
case
-32764 :
/*push transformation */
break
;
148
case
-32765 :
/*copy segment */
break
;
149
case
-32766 :
/*endseg */
break
;
150
case
-32767 :
/*begin segment */
break
;
151
default :
break
;
152
}
153
mnParaSize
=
mnElementSize
;
154
}
155
break
;
156
case
0x02 :
/*Get Escape */
break
;
157
case
0x11 :
/*Set Underline Mode*/
158
{
159
ImplSetUnderlineMode
();
160
}
161
break
;
162
case
0x12 :
/*Set Script Mode */
break
;
163
case
0x13 :
/*Set Shadow Mode */
break
;
164
case
0x18 :
/*Set Media Size */
break
;
165
case
0x20 :
/*Set Character Mode */
break
;
166
case
0x24 :
/*Resolution Mode */
break
;
167
case
0x27 :
/*Line Cap */
break
;
168
case
0x28 :
/*Line Join */
break
;
169
case
0x29 :
/*Edge Join */
break
;
170
case
0x40 :
/*Media Type */
break
;
171
case
0x41 :
/*Number of Copies */
break
;
172
case
0x42 :
/*Origin */
break
;
173
case
0x45 :
/*Color Reversal Mode */
break
;
174
case
0x46 :
/*Line Cap Attributes */
break
;
175
case
0x49 :
/*Begin Effect Definition */
break
;
176
case
0x50 :
/*End Effect Definition */
break
;
177
case
0x51 :
/*Line End Style Attributes */
break
;
178
case
0x52 :
/*Begin Data */
break
;
179
case
0x53 :
/*Data */
break
;
180
case
0x54 :
/*End Data */
break
;
181
case
0x55 :
/*Set Background Style */
break
;
182
case
0x56 :
/*Set EPS Mode */
break
;
183
case
0x57 :
/*Fill Mode */
break
;
184
case
0x58 :
/*Begin Symbol */
break
;
185
case
0x59 :
/*End Symbol */
break
;
186
case
0x60 :
/*Begin Layer */
break
;
187
case
0x61 :
/*End Layer */
break
;
188
case
0x62 :
/*Layer Visibility */
break
;
189
case
0x64 :
/*Set Text Offset */
break
;
190
case
0xFF :
/*Inquire Function Support */
break
;
191
case
0xFE :
/*Inquire Origin */
break
;
192
case
0xFD :
/*Inquire Foreign Data Mode */
break
;
193
case
0xFC :
/*Inquire Text Extent */
break
;
194
case
0xFB :
/*Inquire DPI */
break
;
195
default
:
break
;
196
}
197
};
198
199
200
void
CGM::ImplDoClass8
()
201
{
202
switch
(
mnElementID
)
203
{
204
case
0x01 :
/*Copy Segment */
break
;
// NS
205
case
0x02 :
/*Inheritance Filter */
break
;
// NS
206
case
0x03 :
/*Clip Inheritance */
break
;
// NS
207
case
0x04 :
/*Segment Transformation */
break
;
208
case
0x05 :
/*Segment Highlighting */
break
;
// NS
209
case
0x06 :
/*Segment Display Priority */
break
;
// NS
210
case
0x07 :
/*Segment Pick Priority */
break
;
// NS
211
case
0xfe :
/*INQ Current Position */
break
;
212
case
0xff :
/*INQ Inserted Object Extent */
break
;
213
default
:
break
;
// NS
214
}
215
};
216
217
218
void
CGM::ImplDoClass9
()
219
{
220
switch
(
mnElementID
)
221
{
222
case
0x01 :
/*Pixel Array */
break
;
// NS
223
case
0x02 :
/*Create Bitmap */
break
;
// NS
224
case
0x03 :
/*Delete Bitmap */
break
;
// NS
225
case
0x04 :
/*Select Drawing Bitmap */
break
;
// NS
226
case
0x05 :
/*Display Bitmap */
break
;
// NS
227
case
0x06 :
/*Drawing Mode */
break
;
228
case
0x07 :
/*Mapped Bitmap ForeGround Color */
break
;
// NS
229
case
0x08 :
/*Fill Bitmap */
break
;
// NS
230
case
0x09 :
/*Two Operand BitBlt */
break
;
// NS
231
case
0x0a :
/*Three Operand BitBlt */
break
;
// NS
232
default
:
break
;
233
}
234
};
235
236
237
void
CGM::ImplDoClass15
()
238
{
239
switch
(
mnElementID
)
240
{
241
case
0x01 :
/*Inquire Error Stack */
break
;
242
case
0x02 :
/*Pop Error Stack */
break
;
243
case
0x03 :
/*Empty Error Stack */
break
;
244
default
:
break
;
245
}
246
};
247
248
249
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
cgm.hxx
UM_OVERSCORE
@ UM_OVERSCORE
Definition:
cgmtypes.hxx:105
UM_HIGH
@ UM_HIGH
Definition:
cgmtypes.hxx:105
UM_LOW
@ UM_LOW
Definition:
cgmtypes.hxx:105
UM_OFF
@ UM_OFF
Definition:
cgmtypes.hxx:105
UM_STRIKEOUT
@ UM_STRIKEOUT
Definition:
cgmtypes.hxx:105
CGM::ImplDoClass6
void ImplDoClass6()
Definition:
classx.cxx:40
CGM::mpOutAct
std::unique_ptr< CGMImpressOutAct > mpOutAct
Definition:
cgm.hxx:71
CGM::ImplGetI
sal_Int32 ImplGetI(sal_uInt32 nPrecision)
Definition:
cgm.cxx:96
CGM::mnElementID
sal_uInt32 mnElementID
Definition:
cgm.hxx:86
CGM::ImplGetBitmapColor
sal_uInt32 ImplGetBitmapColor(bool bDirectColor=false)
Definition:
cgm.cxx:334
CGM::ImplGetUI16
sal_uInt32 ImplGetUI16()
Definition:
cgm.cxx:82
CGM::ImplDoClass15
void ImplDoClass15()
Definition:
classx.cxx:237
CGM::mbFigure
bool mbFigure
Definition:
cgm.hxx:60
CGM::ImplSetUnderlineMode
void ImplSetUnderlineMode()
Definition:
classx.cxx:26
CGM::mnElementSize
sal_uInt32 mnElementSize
Definition:
cgm.hxx:87
CGM::pElement
std::unique_ptr< CGMElements > pElement
Definition:
cgm.hxx:69
CGM::ImplDoClass9
void ImplDoClass9()
Definition:
classx.cxx:218
CGM::ImplDoClass8
void ImplDoClass8()
Definition:
classx.cxx:200
CGM::mnParaSize
sal_uInt32 mnParaSize
Definition:
cgm.hxx:78
elements.hxx
tools::Long
long Long
outact.hxx
Generated on Sun Jul 30 2023 04:26:36 for LibreOffice Module filter (master) by
1.9.3