2
This file is part of the Grantlee template system.
4
Copyright (c) 2010 Stephen Kelly <steveire@gmail.com>
6
This library is free software; you can redistribute it and/or
7
modify it under the terms of the GNU Lesser General Public
8
License as published by the Free Software Foundation; either version
9
2 of the Licence, or (at your option) any later version.
11
This library is distributed in the hope that it will be useful,
12
but WITHOUT ANY WARRANTY; without even the implied warranty of
13
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14
Library General Public License for more details.
16
You should have received a copy of the GNU Lesser General Public
17
License along with this library. If not, see <http://www.gnu.org/licenses/>.
21
#ifndef AUDIOTEXTDOCUMENTDIRECTOR_H
22
#define AUDIOTEXTDOCUMENTDIRECTOR_H
24
#include <grantlee/markupdirector.h>
25
#include <grantlee/texthtmlbuilder.h>
26
#include <grantlee/plaintextmarkupbuilder.h>
28
#include "audioobject.h"
30
class AbstractAudioBuilder : virtual public Grantlee::AbstractMarkupBuilder
33
virtual void addAudioTag( const QString &source ) = 0;
36
class AudioTextHtmlBuilder : public Grantlee::TextHTMLBuilder, public AbstractAudioBuilder
39
AudioTextHtmlBuilder();
41
/* reimp */ void addAudioTag( const QString &source );
44
class AudioPlainTextBuilder : public Grantlee::PlainTextMarkupBuilder, public AbstractAudioBuilder
47
AudioPlainTextBuilder();
49
/* reimp */ void addAudioTag( const QString &source );
52
class AudioTextDocumentDirector : public Grantlee::MarkupDirector
56
AudioTextDocumentDirector(AbstractAudioBuilder* builder);
58
/* reimp */ void processCustomFragment( const QTextFragment& fragment, const QTextDocument* doc);
61
AbstractAudioBuilder *m_builder;