LibreOffice Module writerperfect (master) 1
EPUBExportFilter.hxx
Go to the documentation of this file.
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#pragma once
11
12#include <vector>
13
15
16#include <com/sun/star/document/XFilter.hpp>
17#include <com/sun/star/document/XExporter.hpp>
18#include <com/sun/star/lang/XServiceInfo.hpp>
19
20namespace com::sun::star::uno
21{
22class XComponentContext;
23}
24
25namespace writerperfect
26{
27namespace exp
28{
29struct FixedLayoutPage;
30}
31
34 : public cppu::WeakImplHelper<css::document::XFilter, css::document::XExporter,
35 css::lang::XServiceInfo>
36{
37 css::uno::Reference<css::uno::XComponentContext> mxContext;
38 css::uno::Reference<css::lang::XComponent> mxSourceDocument;
39
40public:
41 EPUBExportFilter(css::uno::Reference<css::uno::XComponentContext> xContext);
42
43 // XFilter
44 sal_Bool SAL_CALL
45 filter(const css::uno::Sequence<css::beans::PropertyValue>& rDescriptor) override;
46 void SAL_CALL cancel() override;
47
48 // XExporter
49 void SAL_CALL
50 setSourceDocument(const css::uno::Reference<css::lang::XComponent>& xDocument) override;
51
52 // XServiceInfo
53 OUString SAL_CALL getImplementationName() override;
54 sal_Bool SAL_CALL supportsService(const OUString& rServiceName) override;
55 css::uno::Sequence<OUString> SAL_CALL getSupportedServiceNames() override;
56
58 static sal_Int32 GetDefaultVersion();
60 static sal_Int32 GetDefaultSplitMethod();
62 static sal_Int32 GetDefaultLayoutMethod();
63
64private:
66 void CreateMetafiles(std::vector<exp::FixedLayoutPage>& rPageMetafiles);
67};
68
69} // namespace writerperfect
70
71/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
EPUB export XFilter implementation.
css::uno::Reference< css::lang::XComponent > mxSourceDocument
static sal_Int32 GetDefaultSplitMethod()
Gives the default split method.
void CreateMetafiles(std::vector< exp::FixedLayoutPage > &rPageMetafiles)
Create page metafiles in case of fixed layout.
OUString SAL_CALL getImplementationName() override
void SAL_CALL cancel() override
static sal_Int32 GetDefaultVersion()
Gives the default EPUB version.
static sal_Int32 GetDefaultLayoutMethod()
Gives the default layout method.
css::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames() override
sal_Bool SAL_CALL supportsService(const OUString &rServiceName) override
sal_Bool SAL_CALL filter(const css::uno::Sequence< css::beans::PropertyValue > &rDescriptor) override
void SAL_CALL setSourceDocument(const css::uno::Reference< css::lang::XComponent > &xDocument) override
EPUBExportFilter(css::uno::Reference< css::uno::XComponentContext > xContext)
css::uno::Reference< css::uno::XComponentContext > mxContext
Contains info about a fixed-layout page.
Definition: xmlimp.hxx:48
unsigned char sal_Bool