KEYText.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 KEYTEXT_H_INCLUDED
11#define KEYTEXT_H_INCLUDED
12
13#include <deque>
14
15#include "KEYObject.h"
16#include "KEYStyles_fwd.h"
17#include "KEYText_fwd.h"
18
19namespace libetonyek
20{
21
23{
24 struct Paragraph;
25 typedef boost::shared_ptr<Paragraph> ParagraphPtr_t;
26
27public:
28 typedef std::deque<ParagraphPtr_t> ParagraphList_t;
29
30public:
31 explicit KEYText(bool object = true);
32
34
35 const KEYGeometryPtr_t &getBoundingBox() const;
36 void setBoundingBox(const KEYGeometryPtr_t &boundingBox);
37
39 void closeParagraph();
40
42 void insertTab();
43 void insertLineBreak();
44
46 const ParagraphList_t &getParagraphs() const;
47 bool isObject() const;
48
49 bool empty() const;
50
51private:
53
54private:
59 const bool m_object;
60
62};
63
65
66}
67
68#endif // KEYTEXT_H_INCLUDED
69
70/* vim:set shiftwidth=2 softtabstop=2 expandtab: */
Definition: KEYText.h:23
KEYLayoutStylePtr_t m_layoutStyle
Definition: KEYText.h:55
void setBoundingBox(const KEYGeometryPtr_t &boundingBox)
Definition: KEYText.cpp:329
const bool m_object
Definition: KEYText.h:59
const KEYGeometryPtr_t & getBoundingBox() const
Definition: KEYText.cpp:324
int m_lineBreaks
Definition: KEYText.h:58
void openParagraph(const KEYParagraphStylePtr_t &style)
Definition: KEYText.cpp:334
ParagraphList_t m_paragraphs
Definition: KEYText.h:56
void insertText(const std::string &text, const KEYCharacterStylePtr_t &style)
Definition: KEYText.cpp:350
void insertLineBreak()
Definition: KEYText.cpp:366
const ParagraphList_t & getParagraphs() const
Definition: KEYText.cpp:378
boost::shared_ptr< Paragraph > ParagraphPtr_t
Definition: KEYText.h:24
ParagraphPtr_t m_currentParagraph
Definition: KEYText.h:57
bool empty() const
Definition: KEYText.cpp:400
KEYText(bool object=true)
Definition: KEYText.cpp:303
const KEYLayoutStylePtr_t & getLayoutStyle() const
Definition: KEYText.cpp:373
void setLayoutStyle(const KEYLayoutStylePtr_t &style)
Definition: KEYText.cpp:319
void insertDeferredLineBreaks()
Definition: KEYText.cpp:388
void closeParagraph()
Definition: KEYText.cpp:342
void insertTab()
Definition: KEYText.cpp:358
std::deque< ParagraphPtr_t > ParagraphList_t
Definition: KEYText.h:28
KEYGeometryPtr_t m_boundingBox
Definition: KEYText.h:61
bool isObject() const
Definition: KEYText.cpp:383
@ string
Definition: KEY1Token.h:75
@ style
Definition: KEY2Token.h:796
@ text
Definition: KEY2Token.h:854
Definition: EtonyekDocument.cpp:41
boost::shared_ptr< KEYParagraphStyle > KEYParagraphStylePtr_t
Definition: KEYStyles_fwd.h:51
boost::shared_ptr< KEYGeometry > KEYGeometryPtr_t
Definition: KEYTypes_fwd.h:25
boost::shared_ptr< KEYText > KEYTextPtr_t
Definition: KEYText_fwd.h:16
KEYObjectPtr_t makeObject(const KEYShapePtr_t &shape)
Object creator function for shape.
Definition: KEYShape.cpp:88
boost::shared_ptr< KEYObject > KEYObjectPtr_t
Definition: KEYObject.h:44
boost::shared_ptr< KEYCharacterStyle > KEYCharacterStylePtr_t
Definition: KEYStyles_fwd.h:26
boost::shared_ptr< KEYLayoutStyle > KEYLayoutStylePtr_t
Definition: KEYStyles_fwd.h:41
Definition: KEYText.cpp:30

Generated for libetonyek by doxygen 1.9.3