/src/libreoffice/svgio/inc/svgvisitor.hxx
Line | Count | Source (jump to first uncovered line) |
1 | | /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ |
2 | | /* |
3 | | * This file is part of the LibreOffice 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 | | |
11 | | #pragma once |
12 | | |
13 | | #include <basegfx/DrawCommands.hxx> |
14 | | #include <memory> |
15 | | #include "svgnode.hxx" |
16 | | |
17 | | namespace svgio::svgreader |
18 | | { |
19 | | class SvgDrawVisitor final : public Visitor |
20 | | { |
21 | | private: |
22 | | std::shared_ptr<gfx::DrawRoot> mpDrawRoot; |
23 | | std::shared_ptr<gfx::DrawBase> mpCurrent; |
24 | | |
25 | | public: |
26 | | SvgDrawVisitor(); |
27 | | |
28 | | void visit(svgio::svgreader::SvgNode const& rNode) override; |
29 | | void goToChildren(svgio::svgreader::SvgNode const& rNode); |
30 | | |
31 | 0 | std::shared_ptr<gfx::DrawRoot> const& getDrawRoot() const { return mpDrawRoot; } |
32 | | }; |
33 | | } |
34 | | |
35 | | /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ |