From ed5640d8b587fbcfed7dd7967f3de04b37a76f26 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sun, 7 Apr 2024 11:06:44 +0200 Subject: Adding upstream version 4:7.4.7. Signed-off-by: Daniel Baumann --- .../sun/star/drawing/framework/XConfiguration.idl | 126 +++++++++++++++++++++ 1 file changed, 126 insertions(+) create mode 100644 offapi/com/sun/star/drawing/framework/XConfiguration.idl (limited to 'offapi/com/sun/star/drawing/framework/XConfiguration.idl') diff --git a/offapi/com/sun/star/drawing/framework/XConfiguration.idl b/offapi/com/sun/star/drawing/framework/XConfiguration.idl new file mode 100644 index 000000000..a432359c1 --- /dev/null +++ b/offapi/com/sun/star/drawing/framework/XConfiguration.idl @@ -0,0 +1,126 @@ +/* -*- 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/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +#ifndef __com_sun_star_drawing_framework_XConfiguration_idl__ +#define __com_sun_star_drawing_framework_XConfiguration_idl__ + +#include +#include +#include + +module com { module sun { module star { module drawing { module framework { + +interface XResourceId; + +/** A configuration describes the resources of an application like panes, + views, and tool bars and their relationships that are currently active + or are requested to be activated. Resources are specified by ResourceId + structures rather than references so that not only the current + configuration but also a requested configuration can be represented. + +

Direct manipulation of a configuration object is not advised with the + exception of the ConfigurationController and objects that + implement the XConfigurationChangeRequest interface.

+ + @see XConfigurationController +*/ +interface XConfiguration + : ::com::sun::star::util::XCloneable +{ + /** Returns the list of resources that are bound directly and/or + indirectly to the given anchor. A URL filter can reduce the set of + returned resource ids. + @param xAnchorId + This anchor typically is either a pane or an empty + XResourceId object. An + empty reference is treated like an XResourceId object. + @param sTargetURLPrefix + When a non-empty string is given then resource ids are returned + only when their resource URL matches this prefix, i.e. when it + begins with this prefix or is equal to it. Characters with + special meaning to URLs are not interpreted. In the typical + usage the prefix specifies the type of a resource. A typical + value is "private:resource/floater/", which is the prefix for + pane URLs. In a recursive search, only resource ids at the top + level are matched against this prefix. +

Use an empty string to prevent filtering out resource ids.

+ @param eSearchMode + This flag defines whether to return only resources that are + directly bound to the given anchor or a recursive search is to + be made. Note that for the recursive search and an empty anchor + all resource ids are returned that belong to the configuration. + @return + The set of returned resource ids may be empty when there are no + resource ids that match all conditions. The resources in the + sequence are ordered with respect to the + XResourceId::compareTo() method. + */ + sequence getResources ( + [in] XResourceId xAnchorId, + [in] string sTargetURLPrefix, + [in] AnchorBindingMode eSearchMode); + + /**

Returns whether the specified resource is part of the + configuration.

+ This is independent of whether the resource does really exist and is + active, i.e. has a visible representation in the GUI. + @param xResourceId + The id of a resource. May be empty (empty reference or empty + XResourceId object) in which case `FALSE` is + returned. + @return + Returns `TRUE` when the resource is part of the configuration + and `FALSE` when it is not. + */ + boolean hasResource ([in] XResourceId xResourceId); + + /** Add a resource to the configuration. +

This method should be used only by objects that implement the + XConfigurationRequest interface or by the configuration + controller.

+ @param xResourceId + The resource to add to the configuration. When the specified + resource is already part of the configuration then this call is + silently ignored. + @throws IllegalArgumentException + When an empty resource id is given then an + IllegalArgumentException is thrown. + */ + void addResource ([in] XResourceId xResourceId); + + /** Remove a resource from the configuration. +

This method should be used only by objects that implement the + XConfigurationRequest interface or by the configuration + controller.

+ @param xResourceId + The resource to remove from the configuration. When the + specified resource is not part of the configuration then this + call is silently ignored. + @throws IllegalArgumentException + When an empty resource id is given then an + IllegalArgumentException is thrown. + */ + void removeResource ([in] XResourceId xResourceId); +}; + +}; }; }; }; }; // ::com::sun::star::drawing::framework + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ -- cgit v1.2.3