21 #ifndef CUTELEE_MARKUPDIRECTOR_H
22 #define CUTELEE_MARKUPDIRECTOR_H
24 #include "abstractmarkupbuilder.h"
25 #include "cutelee_textdocument_export.h"
27 #include <QtGui/QTextDocument>
28 #include <QtGui/QTextFrame>
33 class QTextCharFormat;
38 class MarkupDirectorPrivate;
108 virtual void processDocument(QTextDocument *doc);
114 virtual QTextFrame::iterator processFrame(QTextFrame::iterator it,
124 virtual QTextFrame::iterator processBlock(QTextFrame::iterator it,
125 const QTextBlock &block);
133 virtual QTextFrame::iterator processObject(QTextFrame::iterator it,
134 const QTextBlock &block,
135 QTextObject *textObject);
143 virtual std::pair<QTextFrame::iterator, QTextBlock>
144 processBlockGroup(QTextFrame::iterator it,
const QTextBlock &block,
145 QTextBlockGroup *textBlockGroup);
153 virtual std::pair<QTextFrame::iterator, QTextBlock>
154 processList(QTextFrame::iterator it,
const QTextBlock &block,
155 QTextList *textList);
162 virtual QTextFrame::iterator processBlockContents(QTextFrame::iterator it,
163 const QTextBlock &block);
169 virtual void processCustomFragment(
const QTextFragment &fragment,
170 QTextDocument
const *doc);
177 virtual QTextBlock::iterator processFragment(QTextBlock::iterator it,
178 const QTextFragment &fragment,
179 QTextDocument
const *doc);
189 virtual QTextBlock::iterator
190 processCharTextObject(QTextBlock::iterator it,
const QTextFragment &fragment,
191 QTextObject *textObject);
200 virtual QTextBlock::iterator processImage(QTextBlock::iterator it,
201 const QTextImageFormat &imageFormat,
211 virtual QTextFrame::iterator processTable(QTextFrame::iterator it,
218 virtual void processTableCell(
const QTextTableCell &tableCell,
225 void processDocumentContents(QTextFrame::iterator begin,
226 QTextFrame::iterator end);
235 std::pair<QTextFrame::iterator, QTextBlock>
236 skipBlockGroup(QTextFrame::iterator it,
const QTextBlock &_block,
237 QTextBlockGroup *blockGroup);
246 QList<int> sortOpeningOrder(QSet<int> openingTags,
247 QTextBlock::iterator it)
const;
253 virtual void processClosingElements(QTextBlock::iterator it);
258 virtual void processOpeningElements(QTextBlock::iterator it);
263 virtual QSet<int> getElementsToClose(QTextBlock::iterator it)
const;
268 virtual QList<int> getElementsToOpen(QTextBlock::iterator it);
278 SpanForeground = 0x08,
279 SpanBackground = 0x10,
280 SpanFontFamily = 0x20,
281 SpanFontPointSize = 0x40,
290 MarkupDirectorPrivate *
const d_ptr;
Interface for creating marked-up text output.
Instructs a builder object to create markup output.
AbstractMarkupBuilder * m_builder
The Cutelee namespace holds all public Cutelee API.