diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-15 05:54:39 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-15 05:54:39 +0000 |
commit | 267c6f2ac71f92999e969232431ba04678e7437e (patch) | |
tree | 358c9467650e1d0a1d7227a21dac2e3d08b622b2 /sw/source/ui/vba/vbacontentcontrol.hxx | |
parent | Initial commit. (diff) | |
download | libreoffice-267c6f2ac71f92999e969232431ba04678e7437e.tar.xz libreoffice-267c6f2ac71f92999e969232431ba04678e7437e.zip |
Adding upstream version 4:24.2.0.upstream/4%24.2.0
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'sw/source/ui/vba/vbacontentcontrol.hxx')
-rw-r--r-- | sw/source/ui/vba/vbacontentcontrol.hxx | 142 |
1 files changed, 142 insertions, 0 deletions
diff --git a/sw/source/ui/vba/vbacontentcontrol.hxx b/sw/source/ui/vba/vbacontentcontrol.hxx new file mode 100644 index 0000000000..9f98b92468 --- /dev/null +++ b/sw/source/ui/vba/vbacontentcontrol.hxx @@ -0,0 +1,142 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * 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/. + */ +#pragma once + +#include <com/sun/star/text/XTextDocument.hpp> +#include <ooo/vba/word/XContentControl.hpp> + +#include <vbahelper/vbahelperinterface.hxx> + +#include <textcontentcontrol.hxx> + +typedef InheritedHelperInterfaceWeakImpl<ooo::vba::word::XContentControl> SwVbaContentControl_BASE; + +class SwVbaContentControl : public SwVbaContentControl_BASE +{ +private: + css::uno::Reference<css::text::XTextDocument> mxTextDocument; + std::shared_ptr<SwContentControl> m_pCC; + +public: + /// @throws css::uno::RuntimeException + SwVbaContentControl(const css::uno::Reference<ooo::vba::XHelperInterface>& rParent, + const css::uno::Reference<css::uno::XComponentContext>& rContext, + const css::uno::Reference<css::text::XTextDocument>& xTextDocument, + std::shared_ptr<SwContentControl> pContentControl); + ~SwVbaContentControl() override; + + // XContentControl Properties + sal_Bool SAL_CALL getAllowInsertDeleteSection() override; + void SAL_CALL setAllowInsertDeleteSection(sal_Bool bSet) override; + + sal_Int32 SAL_CALL getAppearance() override; + void SAL_CALL setAppearance(sal_Int32 nSet) override; + + OUString SAL_CALL getBuildingBlockCategory() override; + void SAL_CALL setBuildingBlockCategory(const OUString& sSet) override; + + sal_Int32 SAL_CALL getBuildingBlockType() override; + void SAL_CALL setBuildingBlockType(sal_Int32 nSet) override; + + sal_Bool SAL_CALL getChecked() override; + void SAL_CALL setChecked(sal_Bool bSet) override; + + // returns or sets a WdColor (@since after 2010 I assume) + sal_Int32 SAL_CALL getColor() override; + void SAL_CALL setColor(sal_Int32 nSet) override; + + sal_Int32 SAL_CALL getDateCalendarType() override; + void SAL_CALL setDateCalendarType(sal_Int32 nSet) override; + + OUString SAL_CALL getDateDisplayFormat() override; + void SAL_CALL setDateDisplayFormat(const OUString& sSet) override; + + sal_Int32 SAL_CALL getDateDisplayLocale() override; + + sal_Int32 SAL_CALL getDateStorageFormat() override; + void SAL_CALL setDateStorageFormat(sal_Int32 nSet) override; + + css::uno::Any SAL_CALL getDropdownListEntries() override; + + // This is an integer used as a unique identifier string + OUString SAL_CALL getID() override; + + sal_Int32 SAL_CALL getLevel() override; + + // returns or sets if the user can delete the control + sal_Bool SAL_CALL getLockContentControl() override; + void SAL_CALL setLockContentControl(sal_Bool bSet) override; + + // returns or sets if the user can edit the contents (i.e. read-only flag) + sal_Bool SAL_CALL getLockContents() override; + void SAL_CALL setLockContents(sal_Bool bSet) override; + + sal_Bool SAL_CALL getMultiLine() override; + void SAL_CALL setMultiLine(sal_Bool bSet) override; + + // WRONG- THIS SHOULD RETURN XBUILDINGBLOCK + OUString SAL_CALL getPlaceholderText() override; + + sal_Bool SAL_CALL getShowingPlaceholderText() override; + + OUString SAL_CALL getRepeatingSectionItemTitle() override; + void SAL_CALL setRepeatingSectionItemTitle(const OUString& rSet) override; + + css::uno::Reference<ooo::vba::word::XRange> SAL_CALL getRange() override; + + OUString SAL_CALL getTag() override; + void SAL_CALL setTag(const OUString& rSet) override; + + // returns or sets if the control is removed after accepting user change (i.e. control -> text) + sal_Bool SAL_CALL getTemporary() override; + void SAL_CALL setTemporary(sal_Bool bSet) override; + + OUString SAL_CALL getTitle() override; + void SAL_CALL setTitle(const OUString& rSet) override; + + // returns or sets a WdContentControlType that represents the type for a content control. + sal_Int32 SAL_CALL getType() override; + void SAL_CALL setType(sal_Int32 nSet) override; + + // XContentControl Methods + + // Copies the content control from the active document to the Clipboard. + // Retrieve from the clipboard using the Paste method of the Selection object + // or of the Range object, or use the Paste function from within Microsoft Word. + void SAL_CALL Copy() override; + + // Removes the control from the active document and moves it to the Clipboard. + void SAL_CALL Cut() override; + + // Specifies whether to delete the contents of the content control. The default value is False. + // True removes both the content control and its contents. + // False removes the control but leaves the contents of the content control in the document. + void SAL_CALL Delete(const css::uno::Any& bDeleteContents) override; + + // Set the Unicode character used to display the checked state. + void SAL_CALL SetCheckedSymbol(sal_Int32 Character, const css::uno::Any& sFont) override; + + // Set the Unicode character used to display the unchecked state. + void SAL_CALL SetUnCheckedSymbol(sal_Int32 Character, const css::uno::Any& sFont) override; + + // Sets the placeholder text that displays until a user enters their own text. + // Only one of the parameters is used when specifying placeholder text. + // If more than one parameter is provided, use the text specified in the first parameter. + // If all parameters are omitted, the placeholder text is blank. + void SAL_CALL SetPlaceholderText(const css::uno::Any& BuildingBlock, const css::uno::Any& Range, + const css::uno::Any& sText) override; + + void SAL_CALL Ungroup() override; + + // XHelperInterface + OUString getServiceImplName() override; + css::uno::Sequence<OUString> getServiceNames() override; +}; + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ |