QXPCollector.h
Go to the documentation of this file.
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
/*
* This file is part of the libqxp project.
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*/
#ifndef QXPCOLLECTOR_H_INCLUDED
#define QXPCOLLECTOR_H_INCLUDED
#include "libqxp_utils.h"
namespace libqxp
{
struct Box;
struct Group;
struct Line;
struct Page;
struct QXPDocumentProperties;
struct Text;
struct TextBox;
struct TextPath;
class QXPCollector
{
// disable copying
QXPCollector(const QXPCollector &other) = delete;
QXPCollector &operator=(const QXPCollector &other) = delete;
public:
QXPCollector() = default;
virtual ~QXPCollector() = default;
virtual void startDocument() { }
virtual void endDocument() { }
virtual void startPage(const Page &) { }
virtual void endPage() { }
virtual void collectDocumentProperties(const QXPDocumentProperties &) { }
virtual void collectLine(const std::shared_ptr<Line> &) { }
virtual void collectBox(const std::shared_ptr<Box> &) { }
virtual void collectTextBox(const std::shared_ptr<TextBox> &) { }
virtual void collectTextPath(const std::shared_ptr<TextPath> &) { }
virtual void collectGroup(const std::shared_ptr<Group> &) { }
virtual void collectText(const std::shared_ptr<Text> &, const unsigned) { }
};
class QXPDummyCollector : public QXPCollector
{
public:
QXPDummyCollector() = default;
};
}
#endif // QXPCOLLECTOR_H_INCLUDED
/* vim:set shiftwidth=2 softtabstop=2 expandtab: */
libqxp::QXPCollector::endDocument
virtual void endDocument()
Definition QXPCollector.h:38
libqxp::QXPCollector::startPage
virtual void startPage(const Page &)
Definition QXPCollector.h:40
libqxp::QXPCollector::collectLine
virtual void collectLine(const std::shared_ptr< Line > &)
Definition QXPCollector.h:45
libqxp::QXPCollector::collectTextBox
virtual void collectTextBox(const std::shared_ptr< TextBox > &)
Definition QXPCollector.h:47
libqxp::QXPCollector::collectDocumentProperties
virtual void collectDocumentProperties(const QXPDocumentProperties &)
Definition QXPCollector.h:43
libqxp::QXPCollector::~QXPCollector
virtual ~QXPCollector()=default
libqxp::QXPCollector::QXPCollector
QXPCollector()=default
libqxp::QXPCollector::operator=
QXPCollector & operator=(const QXPCollector &other)=delete
libqxp::QXPCollector::endPage
virtual void endPage()
Definition QXPCollector.h:41
libqxp::QXPCollector::collectText
virtual void collectText(const std::shared_ptr< Text > &, const unsigned)
Definition QXPCollector.h:51
libqxp::QXPCollector::collectTextPath
virtual void collectTextPath(const std::shared_ptr< TextPath > &)
Definition QXPCollector.h:48
libqxp::QXPCollector::collectGroup
virtual void collectGroup(const std::shared_ptr< Group > &)
Definition QXPCollector.h:49
libqxp::QXPCollector::startDocument
virtual void startDocument()
Definition QXPCollector.h:37
libqxp::QXPCollector::QXPCollector
QXPCollector(const QXPCollector &other)=delete
libqxp::QXPCollector::collectBox
virtual void collectBox(const std::shared_ptr< Box > &)
Definition QXPCollector.h:46
libqxp::QXPDummyCollector::QXPDummyCollector
QXPDummyCollector()=default
libqxp_utils.h
libqxp
Definition libqxp_utils.cpp:25
libqxp::Box
Definition QXPTypes.h:487
libqxp::Group
Definition QXPTypes.h:528
libqxp::Line
Definition QXPTypes.h:450
libqxp::Page
Definition QXPTypes.h:546
libqxp::QXPDocumentProperties
Definition QXPTypes.h:561
libqxp::TextBox
Definition QXPTypes.h:504
libqxp::TextPath
Definition QXPTypes.h:461
libqxp::Text
Definition QXPTypes.h:316