LibreOffice Module lotuswordpro (master) 1
lwpmarker.hxx
Go to the documentation of this file.
1/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2/*************************************************************************
3 *
4 * The Contents of this file are made available subject to the terms of
5 * either of the following licenses
6 *
7 * - GNU Lesser General Public License Version 2.1
8 * - Sun Industry Standards Source License Version 1.1
9 *
10 * Sun Microsystems Inc., October, 2000
11 *
12 * GNU Lesser General Public License Version 2.1
13 * =============================================
14 * Copyright 2000 by Sun Microsystems, Inc.
15 * 901 San Antonio Road, Palo Alto, CA 94303, USA
16 *
17 * This library is free software; you can redistribute it and/or
18 * modify it under the terms of the GNU Lesser General Public
19 * License version 2.1, as published by the Free Software Foundation.
20 *
21 * This library is distributed in the hope that it will be useful,
22 * but WITHOUT ANY WARRANTY; without even the implied warranty of
23 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
24 * Lesser General Public License for more details.
25 *
26 * You should have received a copy of the GNU Lesser General Public
27 * License along with this library; if not, write to the Free Software
28 * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
29 * MA 02111-1307 USA
30 *
31 *
32 * Sun Industry Standards Source License Version 1.1
33 * =================================================
34 * The contents of this file are subject to the Sun Industry Standards
35 * Source License Version 1.1 (the "License"); You may not use this file
36 * except in compliance with the License. You may obtain a copy of the
37 * License at http://www.openoffice.org/license.html.
38 *
39 * Software provided under this License is provided on an "AS IS" basis,
40 * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING,
41 * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS,
42 * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING.
43 * See the License for the specific provisions governing your rights and
44 * obligations concerning the Software.
45 *
46 * The Initial Developer of the Original Code is: IBM Corporation
47 *
48 * Copyright: 2008 by IBM Corporation
49 *
50 * All Rights Reserved.
51 *
52 * Contributor(s): _______________________________________
53 *
54 *
55 ************************************************************************/
56/*************************************************************************
57 * @file
58 * For LWP filter architecture prototype
59 ************************************************************************/
60
61#ifndef INCLUDED_LOTUSWORDPRO_SOURCE_FILTER_LWPMARKER_HXX
62#define INCLUDED_LOTUSWORDPRO_SOURCE_FILTER_LWPMARKER_HXX
63
64#include <lwpobjid.hxx>
65#include "lwpdlvlist.hxx"
66#include <lwpfrib.hxx>
67
69{
70public:
71 LwpMarker(LwpObjectHeader const &objHdr, LwpSvStream *pStrm);
72 void Read() override;
73 OUString GetNamedProperty(std::u16string_view name);
74protected:
75 enum{
78 };
79private:
80 sal_uInt16 m_nFlag;
81 sal_uInt16 m_nPageNumber;
82 sal_uInt16 m_nNeedUpdate;
86
87};
88
90{
91public:
93 void Read(LwpObjectStream* pObjStrm);
94private:
97};
98
100{
101public:
102 LwpStoryMarker(LwpObjectHeader const &objHdr, LwpSvStream *pStrm);
103 void Read() override;
104private:
106 sal_uInt16 m_nFlag;
107};
108
110{
111public:
112 LwpCHBlkMarker(LwpObjectHeader const &objHdr, LwpSvStream *pStrm);
113 void Read() override;
114 sal_uInt16 GetAction() const {return m_nAction;}
115 void ConvertCHBlock(XFContentContainer* pXFPara,sal_uInt8 nType);
116 enum{
132 };
133private:
134 void ProcessPlaceHolder(XFContentContainer* pXFPara,sal_uInt16 nAction,sal_uInt8 nType);
135 void ProcessOtherCHB(XFContentContainer* pXFPara,sal_uInt8 nType);
136 void ProcessKeylist(XFContentContainer* pXFPara,sal_uInt8 nType);
137 bool IsHasFilled() const;
138 bool IsBubbleHelp() const;
139 OUString GetPromptText() const;
140 void EnumAllKeywords();
141private:
142 enum{
144 CHB_EDIT = 0x02,
145 CHB_HELP = 0x04,
146 CHB_TAB = 0x08,
151 CHB_NOEARS = 0x100,
156 };
158 sal_uInt32 m_nTab;
159 sal_uInt16 m_nFlag;
160 sal_uInt16 m_nAction;
163 std::vector<OUString> m_Keylist;
164};
165
167{
168public:
169 LwpBookMark(LwpObjectHeader const &objHdr, LwpSvStream *pStrm);
170protected:
171 void Read() override;
172public:
173 bool IsRightMarker(LwpObjectID objMarker);
174 OUString const & GetName();
175private:
176 enum { BKMK_NOTESFX = 0x0001,
177 BKMK_OLDNOTESFX = 0x0002
178 };
180 sal_uInt16 m_nFlag;
181};
182
184{
185public:
186 LwpFieldMark(LwpObjectHeader const &objHdr, LwpSvStream *pStrm);
187 void Read() override;
188 void ParseIndex(OUString& sKey1,OUString& sKey2);
189 void ParseTOC(OUString& sLevel,OUString& sText);
190 sal_uInt16 GetFieldType() const {return m_nFieldType;}
191 bool IsFormulaInsert() const;
192 bool IsDateTimeField(sal_uInt8& type,OUString& formula);
193 bool IsCrossRefField(sal_uInt8& nType, OUString& sMarkName);
194 bool IsDocPowerField(sal_uInt8& nType,OUString& sFormula);
195 OUString const & GetFormula() const {return m_Formula.str();}
196 void SetStyleFlag(bool bFalg){m_bHasStyle = bFalg;}
197 bool GetStyleFlag() const {return m_bHasStyle;}
198 bool GetStart() const {return m_bHasStart;}
199 void SetStart(bool bFlag){m_bHasStart = bFlag;}
201 void SetStartFrib(LwpFrib* pFrib){m_pFrib = pFrib;}
202 bool GetRevisionFlag() const {return m_bRevisionFlag;}
203 void SetRevisionFlag(bool bFlag){m_bRevisionFlag = bFlag;}
204
205 enum{
206 FLD_FIELD = 0x0003,
207 FLD_INDEX = 0x0008,
208 FLD_TOC = 0x000B
209 };
210 enum{
212 };
213 enum{
218 };
219 enum{
225 };
226 enum{
231 };
232private:
235 sal_uInt16 m_nFlag;
236 sal_uInt16 m_nFieldType;
238
241
244};
245
247{
248public:
249 LwpRubyMarker(LwpObjectHeader const &objHdr, LwpSvStream *pStrm);
250 void Read() override;
251 const OUString& GetRubyText() const {return m_strRubyText;}
252 void SetRubyText(const OUString& sText){m_strRubyText = sText;}
253 const OUString& GetTextStyleName() const {return m_TextStyle;}
254 void SetTextStyleName(const OUString& sName){m_TextStyle = sName;}
255 const OUString& GetRubyStyleName() const {return m_RubyStyle;}
256 void SetRubyStyleName(const OUString& sName){m_RubyStyle = sName;}
257private:
260 OUString m_RubyStyle;
261 OUString m_TextStyle;
262};
263#endif
264
265/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
AtomHolder class of Word Pro to hold a string.
const OUString & str() const
OUString const & GetName()
Definition: lwpmarker.cxx:342
LwpBookMark(LwpObjectHeader const &objHdr, LwpSvStream *pStrm)
Definition: lwpmarker.cxx:317
sal_uInt16 m_nFlag
Definition: lwpmarker.hxx:180
void Read() override
@descr Read LwpDLNFVList data from object stream
Definition: lwpmarker.cxx:323
bool IsRightMarker(LwpObjectID objMarker)
Definition: lwpmarker.cxx:337
LwpObjectID m_objMarker
Definition: lwpmarker.hxx:179
void ProcessPlaceHolder(XFContentContainer *pXFPara, sal_uInt16 nAction, sal_uInt8 nType)
Definition: lwpmarker.cxx:182
void ConvertCHBlock(XFContentContainer *pXFPara, sal_uInt8 nType)
Definition: lwpmarker.cxx:152
std::vector< OUString > m_Keylist
Definition: lwpmarker.hxx:163
LwpCHBlkMarker(LwpObjectHeader const &objHdr, LwpSvStream *pStrm)
Definition: lwpmarker.cxx:119
bool IsBubbleHelp() const
Definition: lwpmarker.cxx:293
void Read() override
@descr Read name of LwpDLNFVList from object stream
Definition: lwpmarker.cxx:127
sal_uInt16 GetAction() const
Definition: lwpmarker.hxx:114
void ProcessOtherCHB(XFContentContainer *pXFPara, sal_uInt8 nType)
Definition: lwpmarker.cxx:223
LwpAtomHolder m_Help
Definition: lwpmarker.hxx:161
void ProcessKeylist(XFContentContainer *pXFPara, sal_uInt8 nType)
Definition: lwpmarker.cxx:249
sal_uInt32 m_nTab
Definition: lwpmarker.hxx:158
@ CLICKHERE_CHBEHAVIORDRAWING
Definition: lwpmarker.hxx:122
@ CLICKHERE_CHBEHAVIORPAGENUM
Definition: lwpmarker.hxx:131
@ CLICKHERE_CHBEHAVIORFILE
Definition: lwpmarker.hxx:123
@ CLICKHERE_CHBEHAVIORSYMBOL
Definition: lwpmarker.hxx:129
@ CLICKHERE_CHBEHAVIOREQUATION
Definition: lwpmarker.hxx:125
@ CLICKHERE_CHBEHAVIORSTRINGLIST
Definition: lwpmarker.hxx:127
@ CLICKHERE_CHBEHAVIORDATETIME
Definition: lwpmarker.hxx:128
@ CLICKHERE_CHBEHAVIOROLEOBJECT
Definition: lwpmarker.hxx:120
@ CLICKHERE_CHBEHAVIORINTERNETLINK
Definition: lwpmarker.hxx:126
@ CLICKHERE_CHBEHAVIORPICTURE
Definition: lwpmarker.hxx:119
@ CLICKHERE_CHBEHAVIORGLOSSARY
Definition: lwpmarker.hxx:124
@ CLICKHERE_CHBEHAVIORTEXT
Definition: lwpmarker.hxx:117
@ CLICKHERE_CHBEHAVIORTABLE
Definition: lwpmarker.hxx:118
@ CLICKHERE_CHBEHAVIORCHART
Definition: lwpmarker.hxx:121
@ CLICKHERE_CHBEHAVIORDOCFIELD
Definition: lwpmarker.hxx:130
void EnumAllKeywords()
Definition: lwpmarker.cxx:298
bool IsHasFilled() const
Definition: lwpmarker.cxx:288
@ CHB_ALLOWVALUESNOTINLIST
Definition: lwpmarker.hxx:148
OUString GetPromptText() const
Definition: lwpmarker.cxx:142
LwpAtomHolder m_Mirror
Definition: lwpmarker.hxx:162
sal_uInt16 m_nFlag
Definition: lwpmarker.hxx:159
sal_uInt16 m_nAction
Definition: lwpmarker.hxx:160
LwpObjectID m_objPromptStory
Definition: lwpmarker.hxx:157
Double Linked Named Family Properties Virtual List.
Definition: lwpdlvlist.hxx:119
Double Linked Named Family Virtual List.
Definition: lwpdlvlist.hxx:91
sal_uInt16 GetFieldType() const
Definition: lwpmarker.hxx:190
bool IsCrossRefField(sal_uInt8 &nType, OUString &sMarkName)
Definition: lwpmarker.cxx:461
bool IsDocPowerField(sal_uInt8 &nType, OUString &sFormula)
Definition: lwpmarker.cxx:496
bool GetRevisionFlag() const
Definition: lwpmarker.hxx:202
LwpFieldMark(LwpObjectHeader const &objHdr, LwpSvStream *pStrm)
Definition: lwpmarker.cxx:347
bool GetStart() const
Definition: lwpmarker.hxx:198
void SetRevisionFlag(bool bFlag)
Definition: lwpmarker.hxx:203
LwpObjectID m_objResultContent
Definition: lwpmarker.hxx:234
bool IsFormulaInsert() const
Definition: lwpmarker.cxx:413
LwpFrib * m_pFrib
Definition: lwpmarker.hxx:242
OUString const & GetFormula() const
Definition: lwpmarker.hxx:195
bool m_bRevisionFlag
Definition: lwpmarker.hxx:243
sal_uInt16 m_nFieldType
Definition: lwpmarker.hxx:236
void ParseTOC(OUString &sLevel, OUString &sText)
Definition: lwpmarker.cxx:391
LwpAtomHolder m_Formula
Definition: lwpmarker.hxx:237
void ParseIndex(OUString &sKey1, OUString &sKey2)
Definition: lwpmarker.cxx:371
bool m_bHasStyle
Definition: lwpmarker.hxx:239
void SetStart(bool bFlag)
Definition: lwpmarker.hxx:199
void SetStyleFlag(bool bFalg)
Definition: lwpmarker.hxx:196
LwpFrib * GetStartFrib()
Definition: lwpmarker.hxx:200
bool m_bHasStart
Definition: lwpmarker.hxx:240
sal_uInt16 m_nFlag
Definition: lwpmarker.hxx:235
bool GetStyleFlag() const
Definition: lwpmarker.hxx:197
LwpObjectID m_objFormulaStory
Definition: lwpmarker.hxx:233
bool IsDateTimeField(sal_uInt8 &type, OUString &formula)
Definition: lwpmarker.cxx:418
void SetStartFrib(LwpFrib *pFrib)
Definition: lwpmarker.hxx:201
void Read() override
@descr Read name of LwpDLNFVList from object stream
Definition: lwpmarker.cxx:358
LwpObjectID m_StartPara
Definition: lwpmarker.hxx:95
LwpObjectID m_EndPara
Definition: lwpmarker.hxx:96
void Read(LwpObjectStream *pObjStrm)
Definition: lwpmarker.cxx:113
void Read() override
@descr Read name of LwpDLNFVList from object stream
Definition: lwpmarker.cxx:77
@ MARKER_START
Definition: lwpmarker.hxx:76
LwpMarker(LwpObjectHeader const &objHdr, LwpSvStream *pStrm)
Definition: lwpmarker.cxx:69
sal_uInt16 m_nNeedUpdate
Definition: lwpmarker.hxx:82
LwpObjectID m_objLayout
Definition: lwpmarker.hxx:83
sal_uInt16 m_nPageNumber
Definition: lwpmarker.hxx:81
LwpObjectID m_objContent
Definition: lwpmarker.hxx:85
sal_uInt16 m_nFlag
Definition: lwpmarker.hxx:80
OUString GetNamedProperty(std::u16string_view name)
Definition: lwpmarker.cxx:90
LwpObjectID m_objMarkerList
Definition: lwpmarker.hxx:84
Base class of all Lwp VO objects.
Definition: lwpobjhdr.hxx:71
object id class
Definition: lwpobjid.hxx:79
stream class for LwpObject body data provide stream like interface to read object data
Definition: lwpobjstrm.hxx:77
const OUString & GetTextStyleName() const
Definition: lwpmarker.hxx:253
void Read() override
@descr Read name of LwpDLNFVList from object stream
Definition: lwpmarker.cxx:530
const OUString & GetRubyStyleName() const
Definition: lwpmarker.hxx:255
const OUString & GetRubyText() const
Definition: lwpmarker.hxx:251
void SetRubyStyleName(const OUString &sName)
Definition: lwpmarker.hxx:256
void SetRubyText(const OUString &sText)
Definition: lwpmarker.hxx:252
OUString m_RubyStyle
Definition: lwpmarker.hxx:260
void SetTextStyleName(const OUString &sName)
Definition: lwpmarker.hxx:254
LwpObjectID m_objLayout
Definition: lwpmarker.hxx:258
OUString m_TextStyle
Definition: lwpmarker.hxx:261
LwpRubyMarker(LwpObjectHeader const &objHdr, LwpSvStream *pStrm)
Definition: lwpmarker.cxx:526
OUString m_strRubyText
Definition: lwpmarker.hxx:259
LwpFribRange m_Range
Definition: lwpmarker.hxx:105
sal_uInt16 m_nFlag
Definition: lwpmarker.hxx:106
LwpStoryMarker(LwpObjectHeader const &objHdr, LwpSvStream *pStrm)
Definition: lwpmarker.cxx:99
void Read() override
@descr Read name of LwpDLNFVList from object stream
Definition: lwpmarker.cxx:105
encapsulate XInputStream to provide SvStream like interfaces
Definition: lwpsvstream.hxx:69
A container for content.
OUString sName
const char * name
unsigned char sal_uInt8