Files
loongoffice/offapi/com/sun/star/text/ContentControl.idl
Jaume Pujantell 5082d50d24 writerfilter: use content controls for text in block SDTs
Text inside block SDTs was shown as Text Fields wich ignored properties such as
alias and formatting. Now those texts are imported as content controls like in
the case of run SDTs.

Added the ability for content controls to remember and export the "multiline"
property of block SDT text.

Some existing tests have been changed due to some different export results.

Change-Id: Ice1eb4ca6dd53c99d5abb239371f8ac896c3b6e4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/156867
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
2023-10-11 15:19:58 +02:00

162 lines
4.5 KiB
Plaintext

/* -*- 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/.
*/
module com { module sun { module star { module text {
/** This service specifies a content control with properties in a TextDocument.
A content control wraps one or more text portions and controls the behavior of that content.
@since LibreOffice 7.4
*/
service ContentControl
{
/** Provides a way to insert the content control using insertTextContent().
*/
interface com::sun::star::text::XTextContent;
/** Current content is placeholder text.
*/
[optional, property] boolean ShowingPlaceHolder;
/** Display the content control as a checkbox.
*/
[optional, property] boolean Checkbox;
/** If Checkbox is true, is the checkbox checked?
*/
[optional, property] boolean Checked;
/** If Checkbox is true, the value of a checked checkbox.
*/
[optional, property] string CheckedState;
/** If Checkbox is true, the value of an unchecked checkbox.
*/
[optional, property] string UncheckedState;
/** List items of a dropdown: DisplayText + Value pairs with string values for each item.
*/
[optional, property] sequence< sequence< com::sun::star::beans::PropertyValue > > ListItems;
/** Display the content control as a picture.
*/
[optional, property] boolean Picture;
/** Display the content control as a date.
If true, a date picker is provided on the UI.
*/
[optional, property] boolean Date;
/** If Date is true, the date format in a syntax accepted by the NumberFormatter.
*/
[optional, property] string DateFormat;
/** If Date is true, the date's BCP 47 language tag.
*/
[optional, property] string DateLanguage;
/** Date in YYYY-MM-DDT00:00:00Z format.
*/
[optional, property] string CurrentDate;
/** Plain text, i.e. not rich text.
*/
[optional, property] boolean PlainText;
/** The placeholder's doc part: just remembered.
*/
[optional, property] string PlaceholderDocPart;
/** The data bindings's prefix mappings: just remembered.
*/
[optional, property] string DataBindingPrefixMappings;
/** The data bindings's XPath: just remembered.
*/
[optional, property] string DataBindingXpath;
/** The data bindings's store item ID: just remembered.
*/
[optional, property] string DataBindingStoreItemID;
/** The color: just remembered.
*/
[optional, property] string Color;
/** The appearance: just remembered.
@since LibreOffice 7.6
*/
[optional, property] string Appearance;
/** Combo box that allows free-form text as well, i.e. not dropdown.
@since LibreOffice 7.5
*/
[optional, property] boolean ComboBox;
/** Drop-down that does not allow free-form text, i.e. not combo box.
@since LibreOffice 7.5
*/
[optional, property] boolean DropDown;
/** The alias: kind of a human-readable title / description, show up on the UI.
-also used by VBA to group controls into a smaller, indexed collection
@since LibreOffice 7.5
*/
[optional, property] string Alias;
/** The tag: similar to Alias, but is meant to be machine-readable.
-also used by VBA to group controls into a smaller, indexed collection
@since LibreOffice 7.5
*/
[optional, property] string Tag;
/** The formatted date string, based on DateFormat, DateLanguage and CurrentDate.
@since LibreOffice 7.5
*/
[optional, property, readonly] string DateString;
/** A unique numeric id, used by macros to identify a specific control.
@since LibreOffice 7.5
*/
[optional, property] long Id;
/** Describes the order in which keyboard navigation moves between controls
@since LibreOffice 7.6
*/
[optional, property] unsigned long TabIndex;
/** Describes whether the control itself and/or its data can be modified or deleted by the user.
@since LibreOffice 7.6
*/
[optional, property] string Lock;
/** Indicates if the control accepts soft breaks.
@since LibreOffice 24.2
*/
[optional, property] string MultiLine;
};
}; }; }; };
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */