diff options
author | Tor Lillqvist <tml@collabora.com> | 2018-06-12 20:01:41 +0300 |
---|---|---|
committer | Tor Lillqvist <tml@collabora.com> | 2018-06-13 07:06:45 +0200 |
commit | d1601e5d95400c1fc9dd49594672273d7c7d6bdc (patch) | |
tree | e0fc41c64ad48a124effeafbc39226787210aab9 /sw/source/ui/vba/vbamailmerge.cxx | |
parent | dc2d19b17c86c2a4e43d19ccb2a46c669c1dc530 (diff) |
Add a MailMerge class and object to the Writer VBA API
Just a dummy implementation so far. Needed because customer Automation
client software seems to access it (through the very obsolete
WordBasic API, even). It remains to be seen whether any actual mail
merge functionality is needed.
Change-Id: I40419da544f61173e4bcf759b887997c7f233b02
Reviewed-on: https://gerrit.libreoffice.org/55727
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Tor Lillqvist <tml@collabora.com>
Diffstat (limited to 'sw/source/ui/vba/vbamailmerge.cxx')
-rw-r--r-- | sw/source/ui/vba/vbamailmerge.cxx | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/sw/source/ui/vba/vbamailmerge.cxx b/sw/source/ui/vba/vbamailmerge.cxx new file mode 100644 index 000000000000..59711d7de8a8 --- /dev/null +++ b/sw/source/ui/vba/vbamailmerge.cxx @@ -0,0 +1,61 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4; fill-column:100 -*- */ +/* + * This file is part of the LibreOffice 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/. + */ + +#include "vbamailmerge.hxx" + +#include <ooo/vba/word/WdMailMergeMainDocType.hpp> + +SwVbaMailMerge::SwVbaMailMerge(const css::uno::Reference<ooo::vba::XHelperInterface>& xParent, + const css::uno::Reference<css::uno::XComponentContext>& xContext) + : SwVbaMailMerge_BASE(xParent, xContext) + , m_nMainDocType(ooo::vba::word::WdMailMergeMainDocType::wdNotAMergeDocument) +{ +} + +SwVbaMailMerge::~SwVbaMailMerge() {} + +rtl::Reference<SwVbaMailMerge> +SwVbaMailMerge::get(const css::uno::Reference<ooo::vba::XHelperInterface>& xParent, + const css::uno::Reference<css::uno::XComponentContext>& xContext) +{ + static rtl::Reference<SwVbaMailMerge> xInstance(new SwVbaMailMerge(xParent, xContext)); + + return xInstance; +} + +sal_Int32 SAL_CALL SwVbaMailMerge::getMainDocumentType() { return m_nMainDocType; } + +void SAL_CALL SwVbaMailMerge::setMainDocumentType(sal_Int32 _maindocumenttype) +{ + m_nMainDocType = _maindocumenttype; +} + +// Completely dummy, no-op. +void SAL_CALL SwVbaMailMerge::OpenDataSource( + const OUString&, const css::uno::Any&, const css::uno::Any&, const css::uno::Any&, + const css::uno::Any&, const css::uno::Any&, const css::uno::Any&, const css::uno::Any&, + const css::uno::Any&, const css::uno::Any&, const css::uno::Any&, const css::uno::Any&, + const css::uno::Any&, const css::uno::Any&, const css::uno::Any&, const css::uno::Any&) +{ +} + +OUString SwVbaMailMerge::getServiceImplName() { return OUString("SwVbaMailMerge"); } + +css::uno::Sequence<OUString> SwVbaMailMerge::getServiceNames() +{ + static css::uno::Sequence<OUString> aServiceNames; + if (aServiceNames.getLength() == 0) + { + aServiceNames.realloc(1); + aServiceNames[0] = "ooo.vba.word.MailMerge"; + } + return aServiceNames; +} + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ |