summaryrefslogtreecommitdiff
path: root/sw/source/ui/vba/vbamailmerge.cxx
diff options
context:
space:
mode:
authorTor Lillqvist <tml@collabora.com>2018-06-12 20:01:41 +0300
committerTor Lillqvist <tml@collabora.com>2018-06-13 07:06:45 +0200
commitd1601e5d95400c1fc9dd49594672273d7c7d6bdc (patch)
treee0fc41c64ad48a124effeafbc39226787210aab9 /sw/source/ui/vba/vbamailmerge.cxx
parentdc2d19b17c86c2a4e43d19ccb2a46c669c1dc530 (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.cxx61
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: */