IWORKTextRecorder.h
Go to the documentation of this file.
1 /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
2 /*
3  * This file is part of the libetonyek 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 
10 #ifndef IWORKTEXTRECORDER_H_INCLUDED
11 #define IWORKTEXTRECORDER_H_INCLUDED
12 
13 #include <memory>
14 #include <string>
15 
16 #include "IWORKStyle_fwd.h"
17 
18 namespace libetonyek
19 {
20 
21 class IWORKText;
22 
24 {
25 public:
27 
28  void replay(IWORKText &text) const;
29 
31  void pushBaseParagraphStyle(const IWORKStylePtr_t &style);
32 
33  void setLayoutStyle(const IWORKStylePtr_t &style);
34  void flushLayout();
35 
36  void setListStyle(const IWORKStylePtr_t &style);
37  void setListLevel(const unsigned level);
38  void flushList();
39 
40  void setParagraphStyle(const IWORKStylePtr_t &style);
41  void flushParagraph();
42 
43  void setSpanStyle(const IWORKStylePtr_t &style);
44  void setLanguage(const IWORKStylePtr_t &style);
45  void flushSpan();
46 
47  void openLink(const std::string &url);
48  void closeLink();
49 
50  void insertText(const std::string &text);
51  void insertTab();
52  void insertSpace();
53  void insertLineBreak();
54  void insertPageBreak();
55 
56 private:
57  struct Impl;
58 
59 private:
60  std::shared_ptr<Impl> m_impl;
61 };
62 
63 }
64 
65 #endif // IWORKTEXTRECORDER_H_INCLUDED
66 
67 /* vim:set shiftwidth=2 softtabstop=2 expandtab: */
Definition: IWORKBezierElement.cpp:18
void replay(IWORKText &text) const
Definition: IWORKTextRecorder.cpp:313
void insertTab()
Definition: IWORKTextRecorder.cpp:395
void openLink(const std::string &url)
Definition: IWORKTextRecorder.cpp:380
void insertText(const std::string &text)
Definition: IWORKTextRecorder.cpp:390
void flushSpan()
Definition: IWORKTextRecorder.cpp:375
Definition: IWORKText.h:32
void insertPageBreak()
Definition: IWORKTextRecorder.cpp:410
std::shared_ptr< IWORKStyle > IWORKStylePtr_t
Definition: IWORKStyle_fwd.h:21
void pushBaseLayoutStyle(const IWORKStylePtr_t &style)
Definition: IWORKTextRecorder.cpp:320
Definition: IWORKToken.h:284
void setSpanStyle(const IWORKStylePtr_t &style)
Definition: IWORKTextRecorder.cpp:365
void flushParagraph()
Definition: IWORKTextRecorder.cpp:360
void insertSpace()
Definition: IWORKTextRecorder.cpp:400
Definition: IWORKToken.h:268
void insertLineBreak()
Definition: IWORKTextRecorder.cpp:405
Definition: KEY1Token.h:133
void setLanguage(const IWORKStylePtr_t &style)
Definition: IWORKTextRecorder.cpp:370
void flushList()
Definition: IWORKTextRecorder.cpp:350
void setLayoutStyle(const IWORKStylePtr_t &style)
Definition: IWORKTextRecorder.cpp:330
void pushBaseParagraphStyle(const IWORKStylePtr_t &style)
Definition: IWORKTextRecorder.cpp:325
void setListStyle(const IWORKStylePtr_t &style)
Definition: IWORKTextRecorder.cpp:340
Definition: IWORKTextRecorder.cpp:296
Definition: IWORKToken.h:266
void setParagraphStyle(const IWORKStylePtr_t &style)
Definition: IWORKTextRecorder.cpp:355
std::shared_ptr< Impl > m_impl
Definition: IWORKTextRecorder.h:57
void flushLayout()
Definition: IWORKTextRecorder.cpp:335
void setListLevel(const unsigned level)
Definition: IWORKTextRecorder.cpp:345
IWORKTextRecorder()
Definition: IWORKTextRecorder.cpp:308
void closeLink()
Definition: IWORKTextRecorder.cpp:385
Definition: IWORKTextRecorder.h:23

Generated for libetonyek by doxygen 1.8.13