/* -*- 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: */