fdo#74697 Add Bluez 5 support for impress remote.
[LibreOffice.git] / autodoc / source / parser_i / inc / s2_dsapi / cx_docu2.hxx
blob2fc3cbccc2d6d066a590ef4af2942457ef545112
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 DSAPI_CX_DOCU2_HXX
21 #define DSAPI_CX_DOCU2_HXX
23 // USED SERVICES
24 // BASE CLASSES
25 #include <tokens/tkpcont2.hxx>
26 // COMPONENTS
27 // PARAMETERS
28 #include <s2_dsapi/tk_xml.hxx>
30 namespace csi
32 namespace dsapi
35 class Token_Receiver;
38 /**
39 @descr
42 class Cx_Base : public ::TkpContext
44 public:
45 virtual bool PassNewToken();
46 virtual TkpContext &
47 FollowUpContext();
48 protected:
49 // LIFECYCLE
50 Cx_Base(
51 Token_Receiver & o_rReceiver,
52 TkpContext & i_rFollowUpContext )
53 : rReceiver(o_rReceiver),
54 pFollowUpContext(&i_rFollowUpContext)
55 // pNewToken
56 { }
57 protected:
58 void SetToken(
59 DYN Token * let_dpToken )
60 { pNewToken = let_dpToken; }
61 void Handle_DocuSyntaxError(
62 CharacterSource & io_rText );
64 private:
65 // DATA
66 Token_Receiver & rReceiver;
67 TkpContext * pFollowUpContext;
68 Dyn<Token> pNewToken;
72 class Cx_EoHtml : public Cx_Base
74 public:
75 // LIFECYCLE
76 Cx_EoHtml(
77 Token_Receiver & o_rReceiver,
78 TkpContext & i_rFollowUpContext )
79 : Cx_Base(o_rReceiver, i_rFollowUpContext) {}
80 // OPERATIONS
81 virtual void ReadCharChain(
82 CharacterSource & io_rText );
83 void SetIfIsStartOfParagraph(
84 bool i_bNextTokenProperty )
85 { bToken_IsStartOfParagraph = i_bNextTokenProperty; }
87 private:
88 bool bToken_IsStartOfParagraph;
91 class Cx_EoXmlConst : public Cx_Base
93 public:
94 // LIFECYCLE
95 Cx_EoXmlConst(
96 Token_Receiver & o_rReceiver,
97 TkpContext & i_rFollowUpContext )
98 : Cx_Base(o_rReceiver, i_rFollowUpContext) {}
99 // OPERATIONS
100 virtual void ReadCharChain(
101 CharacterSource & io_rText );
102 void SetTokenId(
103 lux::Enum< Tok_XmlConst::E_TokenId >
104 i_eTokenId )
105 { eTokenId = i_eTokenId; }
106 private:
107 Tok_XmlConst::EV_TokenId
108 eTokenId;
111 class Cx_EoXmlLink_BeginTag : public Cx_Base
113 public:
114 // LIFECYCLE
115 Cx_EoXmlLink_BeginTag(
116 Token_Receiver & o_rReceiver,
117 TkpContext & i_rFollowUpContext )
118 : Cx_Base(o_rReceiver, i_rFollowUpContext) {}
119 // OPERATIONS
120 virtual void ReadCharChain(
121 CharacterSource & io_rText );
122 void SetTokenId(
123 Tok_XmlLink_BeginTag::EV_TokenId
124 i_eTokenId )
125 { eTokenId = i_eTokenId; }
126 private:
127 Tok_XmlLink_BeginTag::EV_TokenId
128 eTokenId;
131 class Cx_EoXmlLink_EndTag : public Cx_Base
133 public:
134 // LIFECYCLE
135 Cx_EoXmlLink_EndTag(
136 Token_Receiver & o_rReceiver,
137 TkpContext & i_rFollowUpContext )
138 : Cx_Base(o_rReceiver, i_rFollowUpContext) {}
139 // OPERATIONS
140 virtual void ReadCharChain(
141 CharacterSource & io_rText );
142 void SetTokenId(
143 Tok_XmlLink_EndTag::EV_TokenId
144 i_eTokenId )
145 { eTokenId = i_eTokenId; }
146 private:
147 Tok_XmlLink_EndTag::E_TokenId
148 eTokenId;
151 class Cx_EoXmlFormat_BeginTag : public Cx_Base
153 public:
154 // LIFECYCLE
155 Cx_EoXmlFormat_BeginTag(
156 Token_Receiver & o_rReceiver,
157 TkpContext & i_rFollowUpContext )
158 : Cx_Base(o_rReceiver, i_rFollowUpContext) {}
159 // OPERATIONS
160 virtual void ReadCharChain(
161 CharacterSource & io_rText );
162 void SetTokenId(
163 lux::Enum< Tok_XmlFormat_BeginTag::E_TokenId >
164 i_eTokenId )
165 { eTokenId = i_eTokenId; }
166 private:
167 lux::Enum< Tok_XmlFormat_BeginTag::E_TokenId >
168 eTokenId;
171 class Cx_EoXmlFormat_EndTag : public Cx_Base
173 public:
174 // LIFECYCLE
175 Cx_EoXmlFormat_EndTag(
176 Token_Receiver & o_rReceiver,
177 TkpContext & i_rFollowUpContext )
178 : Cx_Base(o_rReceiver, i_rFollowUpContext) {}
179 // OPERATIONS
180 virtual void ReadCharChain(
181 CharacterSource & io_rText );
182 void SetTokenId(
183 lux::Enum< Tok_XmlFormat_EndTag::E_TokenId >
184 i_eTokenId )
185 { eTokenId = i_eTokenId; }
186 private:
187 lux::Enum< Tok_XmlFormat_EndTag::E_TokenId >
188 eTokenId;
191 class Cx_CheckStar : public Cx_Base
193 public:
194 // LIFECYCLE
195 Cx_CheckStar(
196 Token_Receiver & o_rReceiver,
197 TkpContext & i_rFollowUpContext )
198 : Cx_Base(o_rReceiver, i_rFollowUpContext),
199 bIsEnd(false), bEndTokenFound(false)
201 void Set_End_FolloUpContext(
202 TkpContext & i_rEnd_FollowUpContext )
203 { pEnd_FollowUpContext = &i_rEnd_FollowUpContext; }
205 virtual void ReadCharChain(
206 CharacterSource & io_rText );
207 void SetIsEnd(
208 bool i_bIsEnd )
209 { bIsEnd = i_bIsEnd; }
210 virtual TkpContext &
211 FollowUpContext();
212 private:
213 TkpContext * pEnd_FollowUpContext;
214 bool bIsEnd;
215 bool bEndTokenFound;
219 } // namespace dsapi
220 } // namespace csi
224 #endif
226 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */