From 940b4d1848e8c70ab7642901a68594e8016caffc Mon Sep 17 00:00:00 2001
From: Daniel Baumann
Date: Sat, 27 Apr 2024 18:51:28 +0200
Subject: Adding upstream version 1:7.0.4.
Signed-off-by: Daniel Baumann
---
offapi/com/sun/star/ui/XUIElementFactory.idl | 130 +++++++++++++++++++++++++++
1 file changed, 130 insertions(+)
create mode 100644 offapi/com/sun/star/ui/XUIElementFactory.idl
(limited to 'offapi/com/sun/star/ui/XUIElementFactory.idl')
diff --git a/offapi/com/sun/star/ui/XUIElementFactory.idl b/offapi/com/sun/star/ui/XUIElementFactory.idl
new file mode 100644
index 000000000..c87638c0e
--- /dev/null
+++ b/offapi/com/sun/star/ui/XUIElementFactory.idl
@@ -0,0 +1,130 @@
+/* -*- 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_ui_XUIElementFactory_idl__
+#define __com_sun_star_ui_XUIElementFactory_idl__
+
+#include
+#include
+#include
+#include
+
+
+module com { module sun { module star { module ui {
+
+
+/** specifies a user interface element factory that can create and initialize
+ user interface elements.
+
+
+ User interface element factories must be registered at a
+ UIElementFactoryManager service to provide access to itself.
+
+ Currently the following user interface element types are defined:
+
+ - menubarA configurable user interface element.
+ - popupmenuA configurable user interface element.
+ - toolbarA configurable user interface element.
+ - statusbarA configurable user interface element.
+ - floaterA basic user interface element.
+
+
+
+ @since OOo 2.0
+*/
+
+interface XUIElementFactory : ::com::sun::star::uno::XInterface
+{
+ /** creates a new instances of a specific user interface element.
+
+ @param ResourceURL
+ specifies which unique user interface element should be created
+ by the factory. A resource URL must meet the following syntax:
+ "private:resource/$type/$name. It is only allowed to use ASCII
+ characters for type and name. This argument must not be empty to
+ have a working user interface element instance.The implementation
+ can throw an
+ com::sun::star::container::NoSuchElementException
+ if it doesn't know how to create the request user interface
+ element.
+
+ @param Args
+ The following arguments are supported:
+
+ - Frame
+ specifies the com::sun::star::frame::XFrame
+ instance to which the user interface element belongs to. To
+ create a configurable user interface element the frame
+ instance must contain a visible component. Otherwise it is
+ not possible to determine the correct user interface
+ configuration manager. This argument is mandatory to
+ have a working configurable user interface element instance.
+
+ - ParentWindow
+ specifies a parent window to use for the window(s) representing
+ the UI element. Depending on the concrete UI element type, this parameter
+ might be required or ignored by an implementation.
+
+ - Persistent
+ specifies if changes to a configurable
+ user interface element should be persistent. This is an
+ optional argument. The default value is `TRUE`.
+
+ - Module
+ specifies the current module name (as a string).
+ May be empty.
+
+ - Controller
+ (Sidebar only) specifies the current com::sun::star::frame::XController2 instance.
+ May be empty.
+
+ - Canvas
+ (Sidebar only) specifies the current com::sun::star::rendering::XSpriteCanvas instance.
+
+ - ApplicationName
+ (Sidebar only) Specifies the current application name (as a string)
+
+ - ContextName
+ (Sidebar only) Specifies the current context (as a string)
+
+
+
+
+ An implementation is responsible to initialize every newly created user
+ interface element if the necessary properties are provided. Especially
+ it must connect a configurable user interface element to the correct user
+ interface configuration manager. Without this connection the configurable
+ user interface element cannot retrieve its structure data and changes to
+ the user interface element structure won't be persistent. It is up to the
+ implementation to throw an
+ com::sun::star::lang::IllegalArgumentException
+ if it cannot create a user interface element with the provided arguments.
+
+ @see ConfigurableUIElement
+ @see UIElement
+
+ */
+ ::com::sun::star::ui::XUIElement createUIElement( [in] string ResourceURL, [in] sequence< com::sun::star::beans::PropertyValue > Args ) raises ( com::sun::star::container::NoSuchElementException, com::sun::star::lang::IllegalArgumentException );
+};
+
+}; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
--
cgit v1.2.3