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 --- .../star/lang/ArrayIndexOutOfBoundsException.idl | 43 ++++++ .../com/sun/star/lang/ClassNotFoundException.idl | 40 +++++ udkapi/com/sun/star/lang/DisposedException.idl | 44 ++++++ udkapi/com/sun/star/lang/EventObject.idl | 44 ++++++ .../com/sun/star/lang/IllegalAccessException.idl | 40 +++++ .../com/sun/star/lang/IllegalArgumentException.idl | 44 ++++++ .../sun/star/lang/IndexOutOfBoundsException.idl | 43 ++++++ .../com/sun/star/lang/InvalidListenerException.idl | 43 ++++++ .../com/sun/star/lang/ListenerExistException.idl | 42 ++++++ udkapi/com/sun/star/lang/Locale.idl | 103 +++++++++++++ udkapi/com/sun/star/lang/MultiServiceFactory.idl | 64 ++++++++ udkapi/com/sun/star/lang/NoSuchFieldException.idl | 39 +++++ udkapi/com/sun/star/lang/NoSuchMethodException.idl | 39 +++++ udkapi/com/sun/star/lang/NoSupportException.idl | 47 ++++++ .../com/sun/star/lang/NotInitializedException.idl | 42 ++++++ udkapi/com/sun/star/lang/NullPointerException.idl | 45 ++++++ .../com/sun/star/lang/RegistryServiceManager.idl | 78 ++++++++++ udkapi/com/sun/star/lang/ServiceManager.idl | 127 ++++++++++++++++ .../star/lang/ServiceNotRegisteredException.idl | 42 ++++++ udkapi/com/sun/star/lang/SystemDependent.idl | 96 ++++++++++++ .../com/sun/star/lang/WrappedTargetException.idl | 50 +++++++ .../star/lang/WrappedTargetRuntimeException.idl | 49 ++++++ udkapi/com/sun/star/lang/XComponent.idl | 117 +++++++++++++++ udkapi/com/sun/star/lang/XConnectionPoint.idl | 166 +++++++++++++++++++++ .../sun/star/lang/XConnectionPointContainer.idl | 90 +++++++++++ udkapi/com/sun/star/lang/XEventListener.idl | 55 +++++++ udkapi/com/sun/star/lang/XInitialization.idl | 62 ++++++++ udkapi/com/sun/star/lang/XLocalizable.idl | 48 ++++++ udkapi/com/sun/star/lang/XMain.idl | 53 +++++++ .../com/sun/star/lang/XMultiComponentFactory.idl | 81 ++++++++++ udkapi/com/sun/star/lang/XMultiServiceFactory.idl | 79 ++++++++++ udkapi/com/sun/star/lang/XServiceDisplayName.idl | 61 ++++++++ udkapi/com/sun/star/lang/XServiceInfo.idl | 65 ++++++++ udkapi/com/sun/star/lang/XServiceName.idl | 48 ++++++ .../com/sun/star/lang/XSingleComponentFactory.idl | 66 ++++++++ udkapi/com/sun/star/lang/XSingleServiceFactory.idl | 66 ++++++++ udkapi/com/sun/star/lang/XTypeProvider.idl | 67 +++++++++ udkapi/com/sun/star/lang/XUnoTunnel.idl | 66 ++++++++ 38 files changed, 2394 insertions(+) create mode 100644 udkapi/com/sun/star/lang/ArrayIndexOutOfBoundsException.idl create mode 100644 udkapi/com/sun/star/lang/ClassNotFoundException.idl create mode 100644 udkapi/com/sun/star/lang/DisposedException.idl create mode 100644 udkapi/com/sun/star/lang/EventObject.idl create mode 100644 udkapi/com/sun/star/lang/IllegalAccessException.idl create mode 100644 udkapi/com/sun/star/lang/IllegalArgumentException.idl create mode 100644 udkapi/com/sun/star/lang/IndexOutOfBoundsException.idl create mode 100644 udkapi/com/sun/star/lang/InvalidListenerException.idl create mode 100644 udkapi/com/sun/star/lang/ListenerExistException.idl create mode 100644 udkapi/com/sun/star/lang/Locale.idl create mode 100644 udkapi/com/sun/star/lang/MultiServiceFactory.idl create mode 100644 udkapi/com/sun/star/lang/NoSuchFieldException.idl create mode 100644 udkapi/com/sun/star/lang/NoSuchMethodException.idl create mode 100644 udkapi/com/sun/star/lang/NoSupportException.idl create mode 100644 udkapi/com/sun/star/lang/NotInitializedException.idl create mode 100644 udkapi/com/sun/star/lang/NullPointerException.idl create mode 100644 udkapi/com/sun/star/lang/RegistryServiceManager.idl create mode 100644 udkapi/com/sun/star/lang/ServiceManager.idl create mode 100644 udkapi/com/sun/star/lang/ServiceNotRegisteredException.idl create mode 100644 udkapi/com/sun/star/lang/SystemDependent.idl create mode 100644 udkapi/com/sun/star/lang/WrappedTargetException.idl create mode 100644 udkapi/com/sun/star/lang/WrappedTargetRuntimeException.idl create mode 100644 udkapi/com/sun/star/lang/XComponent.idl create mode 100644 udkapi/com/sun/star/lang/XConnectionPoint.idl create mode 100644 udkapi/com/sun/star/lang/XConnectionPointContainer.idl create mode 100644 udkapi/com/sun/star/lang/XEventListener.idl create mode 100644 udkapi/com/sun/star/lang/XInitialization.idl create mode 100644 udkapi/com/sun/star/lang/XLocalizable.idl create mode 100644 udkapi/com/sun/star/lang/XMain.idl create mode 100644 udkapi/com/sun/star/lang/XMultiComponentFactory.idl create mode 100644 udkapi/com/sun/star/lang/XMultiServiceFactory.idl create mode 100644 udkapi/com/sun/star/lang/XServiceDisplayName.idl create mode 100644 udkapi/com/sun/star/lang/XServiceInfo.idl create mode 100644 udkapi/com/sun/star/lang/XServiceName.idl create mode 100644 udkapi/com/sun/star/lang/XSingleComponentFactory.idl create mode 100644 udkapi/com/sun/star/lang/XSingleServiceFactory.idl create mode 100644 udkapi/com/sun/star/lang/XTypeProvider.idl create mode 100644 udkapi/com/sun/star/lang/XUnoTunnel.idl (limited to 'udkapi/com/sun/star/lang') diff --git a/udkapi/com/sun/star/lang/ArrayIndexOutOfBoundsException.idl b/udkapi/com/sun/star/lang/ArrayIndexOutOfBoundsException.idl new file mode 100644 index 000000000..a0deac4ed --- /dev/null +++ b/udkapi/com/sun/star/lang/ArrayIndexOutOfBoundsException.idl @@ -0,0 +1,43 @@ +/* -*- 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_lang_ArrayIndexOutOfBoundsException_idl__ +#define __com_sun_star_lang_ArrayIndexOutOfBoundsException_idl__ + +#include + + + +module com { module sun { module star { module lang { + +/** This exception is thrown to indicate that an array has been + accessed with an illegal index. + +

The index is either negative or greater than or equal to + the size of the array.

+ */ +published exception ArrayIndexOutOfBoundsException: com::sun::star::lang::IndexOutOfBoundsException +{ +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/udkapi/com/sun/star/lang/ClassNotFoundException.idl b/udkapi/com/sun/star/lang/ClassNotFoundException.idl new file mode 100644 index 000000000..ef3c228a3 --- /dev/null +++ b/udkapi/com/sun/star/lang/ClassNotFoundException.idl @@ -0,0 +1,40 @@ +/* -*- 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_lang_ClassNotFoundException_idl__ +#define __com_sun_star_lang_ClassNotFoundException_idl__ + +#include + + + +module com { module sun { module star { module lang { + +/** This exception is thrown when an application tries to load + the information on the type through its string name. + */ +published exception ClassNotFoundException: com::sun::star::uno::Exception +{ +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/udkapi/com/sun/star/lang/DisposedException.idl b/udkapi/com/sun/star/lang/DisposedException.idl new file mode 100644 index 000000000..ace3c5f5f --- /dev/null +++ b/udkapi/com/sun/star/lang/DisposedException.idl @@ -0,0 +1,44 @@ +/* -*- 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_lang_DisposedException_idl__ +#define __com_sun_star_lang_DisposedException_idl__ + +#include + + + + module com { module sun { module star { module lang { + +/** This exception occurs if the object behind this interface has been + disposed before and can't uphold its method specification anymore. + +

The implementation normally should implement the + com::sun::star::lang::XComponent interface + to indicate this possibility.

+ */ +published exception DisposedException: com::sun::star::uno::RuntimeException +{ +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/udkapi/com/sun/star/lang/EventObject.idl b/udkapi/com/sun/star/lang/EventObject.idl new file mode 100644 index 000000000..3fa039fb3 --- /dev/null +++ b/udkapi/com/sun/star/lang/EventObject.idl @@ -0,0 +1,44 @@ +/* -*- 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_lang_EventObject_idl__ +#define __com_sun_star_lang_EventObject_idl__ + +#include + + + + module com { module sun { module star { module lang { + +/** specifies the base for all event objects and identifies the + source of the event. + */ +published struct EventObject +{ + /** refers to the object that fired the event. + */ + com::sun::star::uno::XInterface Source; + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/udkapi/com/sun/star/lang/IllegalAccessException.idl b/udkapi/com/sun/star/lang/IllegalAccessException.idl new file mode 100644 index 000000000..e4fb8fd7b --- /dev/null +++ b/udkapi/com/sun/star/lang/IllegalAccessException.idl @@ -0,0 +1,40 @@ +/* -*- 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_lang_IllegalAccessException_idl__ +#define __com_sun_star_lang_IllegalAccessException_idl__ + +#include + + + + module com { module sun { module star { module lang { + +/** This exception is thrown when an application tries to change + a constant property. + */ +published exception IllegalAccessException: com::sun::star::uno::Exception +{ +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/udkapi/com/sun/star/lang/IllegalArgumentException.idl b/udkapi/com/sun/star/lang/IllegalArgumentException.idl new file mode 100644 index 000000000..9e522b8e3 --- /dev/null +++ b/udkapi/com/sun/star/lang/IllegalArgumentException.idl @@ -0,0 +1,44 @@ +/* -*- 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_lang_IllegalArgumentException_idl__ +#define __com_sun_star_lang_IllegalArgumentException_idl__ + +#include + +module com { module sun { module star { module lang { + +/** This exception is thrown to indicate that a method has + passed an illegal or inappropriate argument. + */ +published exception IllegalArgumentException + : com::sun::star::uno::RuntimeException +{ + /** identifies the position of the illegal argument. + +

This field is -1 if the position is not known.

+ */ + short ArgumentPosition; + +}; + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/udkapi/com/sun/star/lang/IndexOutOfBoundsException.idl b/udkapi/com/sun/star/lang/IndexOutOfBoundsException.idl new file mode 100644 index 000000000..6c64ef7a0 --- /dev/null +++ b/udkapi/com/sun/star/lang/IndexOutOfBoundsException.idl @@ -0,0 +1,43 @@ +/* -*- 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_lang_IndexOutOfBoundsException_idl__ +#define __com_sun_star_lang_IndexOutOfBoundsException_idl__ + +#include + + + +module com { module sun { module star { module lang { + +/** This exception is thrown to indicate that a container has been + accessed with an illegal index. + +

The index is either negative or greater than or equal to + the count of the elements.

+ */ +published exception IndexOutOfBoundsException: com::sun::star::uno::Exception +{ +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/udkapi/com/sun/star/lang/InvalidListenerException.idl b/udkapi/com/sun/star/lang/InvalidListenerException.idl new file mode 100644 index 000000000..27825f533 --- /dev/null +++ b/udkapi/com/sun/star/lang/InvalidListenerException.idl @@ -0,0 +1,43 @@ +/* -*- 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_lang_InvalidListenerException_idl__ +#define __com_sun_star_lang_InvalidListenerException_idl__ + +#include + + + +module com { module sun { module star { module lang { + +/** is thrown by the XConnectionPoint::advice() method + to indicate that the listener has not supplied the necessary + interface. + + @see XConnectionPoint + */ +published exception InvalidListenerException: com::sun::star::uno::Exception +{ +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/udkapi/com/sun/star/lang/ListenerExistException.idl b/udkapi/com/sun/star/lang/ListenerExistException.idl new file mode 100644 index 000000000..2e7970383 --- /dev/null +++ b/udkapi/com/sun/star/lang/ListenerExistException.idl @@ -0,0 +1,42 @@ +/* -*- 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_lang_ListenerExistException_idl__ +#define __com_sun_star_lang_ListenerExistException_idl__ + +#include + + + + module com { module sun { module star { module lang { + +/** is thrown by the XConnectionPoint::advise() method + to indicate that there is only one listener allowed. + + @see XConnectionPoint + */ +published exception ListenerExistException: com::sun::star::uno::Exception +{ +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/udkapi/com/sun/star/lang/Locale.idl b/udkapi/com/sun/star/lang/Locale.idl new file mode 100644 index 000000000..1f7c2db06 --- /dev/null +++ b/udkapi/com/sun/star/lang/Locale.idl @@ -0,0 +1,103 @@ +/* -*- 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_lang_Locale_idl__ +#define __com_sun_star_lang_Locale_idl__ + +#include + + + +module com { module sun { module star { module lang { + +/** object represents a specific geographical, political, or cultural region. + +

An operation that requires a Locale to perform + its task is called locale-sensitive and uses the + Locale to tailor information for the user. For example, + displaying a number is a locale-sensitive operation; the number + should be formatted according to the customs/conventions of the + user's native country, region, or culture.

+ */ +published struct Locale +{ + /** specifies an ISO 639 Language Code. + +

These codes are preferably the lower-case two-letter codes as + defined by ISO 639-1, or three-letter codes as defined by ISO + 639-3. You can find a full list of these codes at a number of + sites, such as:
+ + https://iso639-3.sil.org/code_tables/639/data. +

+ +

If this field contains an empty string, the meaning depends on the + context.

+ +

Since LibreOffice 4.2, if the locale can not be represented + using only ISO 639 and ISO 3166 codes this field contains the + ISO 639-3 reserved for local use code "qlt" and + a BCP 47 language tag is present in the Variant + field.

+ */ + string Language; + + /** specifies an ISO 3166 Country Code. + +

These codes are the upper-case two-letter codes as + defined by ISO 3166-1. You can find a full list of these codes + at a number of sites, such as:
+ + https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2. +

+ +

If this field contains an empty string, the meaning depends on the + context.

+ */ + string Country; + + /** specifies a BCP 47 Language Tag. + +

Since LibreOffice 4.2, if the Language field + is the code "qlt" this field contains the full + BCP 47 language tag. If the Language field is not "qlt" this + field is empty.

+ +

You can find BCP 47 language tag resources at
+ + https://en.wikipedia.org/wiki/IETF_language_tag and + + https://www.w3.org/International/articles/language-tags/.

+ +

Earlier versions of the documentation mentioned "vendor and + browser-specific" codes but that was never supported. Use of any + arbitrary strings in the Variant field that do not form a valid + BCP 47 language tag is strongly deprecated. +

+ */ + string Variant; + +}; + + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/udkapi/com/sun/star/lang/MultiServiceFactory.idl b/udkapi/com/sun/star/lang/MultiServiceFactory.idl new file mode 100644 index 000000000..272d694dc --- /dev/null +++ b/udkapi/com/sun/star/lang/MultiServiceFactory.idl @@ -0,0 +1,64 @@ +/* -*- 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_lang_MultiServiceFactory_idl__ +#define __com_sun_star_lang_MultiServiceFactory_idl__ + +#include +#include + +#include + + + +module com { module sun { module star { module lang { + + +/** Provides a collection of implementations of services. + +

The factories for instantiating objects of implementations + are accessed via a service name.

+ +

The com::sun::star::container::XContentEnumerationAccess + interface can be supported optionally. + If it is supported, it is possible to enumerate all implementations that + support the service specified with the argument of + com::sun::star::container::XContentEnumerationAccess::createContentEnumeration(). + The enumerator returns interfaces. The type of the interface is not specified. + Commonly this is XSingleComponentFactory.

+*/ +published service MultiServiceFactory +{ + /** This interface uses a service name to instantiate a component + which supports the specified service. + */ + interface com::sun::star::lang::XMultiServiceFactory; + + /** This interface uses a service name and a component context to instantiate + a component which supports the specified service. + */ + interface com::sun::star::lang::XMultiComponentFactory; + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/udkapi/com/sun/star/lang/NoSuchFieldException.idl b/udkapi/com/sun/star/lang/NoSuchFieldException.idl new file mode 100644 index 000000000..72c2125e2 --- /dev/null +++ b/udkapi/com/sun/star/lang/NoSuchFieldException.idl @@ -0,0 +1,39 @@ +/* -*- 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_lang_NoSuchFieldException_idl__ +#define __com_sun_star_lang_NoSuchFieldException_idl__ + +#include + + + +module com { module sun { module star { module lang { + +/** signals that the class does not have a field of a specified name. + */ +published exception NoSuchFieldException: com::sun::star::uno::Exception +{ +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/udkapi/com/sun/star/lang/NoSuchMethodException.idl b/udkapi/com/sun/star/lang/NoSuchMethodException.idl new file mode 100644 index 000000000..5511cc489 --- /dev/null +++ b/udkapi/com/sun/star/lang/NoSuchMethodException.idl @@ -0,0 +1,39 @@ +/* -*- 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_lang_NoSuchMethodException_idl__ +#define __com_sun_star_lang_NoSuchMethodException_idl__ + +#include + + + +module com { module sun { module star { module lang { + +/** signals that the interface does not have a method of a specified name. + */ +published exception NoSuchMethodException: com::sun::star::uno::Exception +{ +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/udkapi/com/sun/star/lang/NoSupportException.idl b/udkapi/com/sun/star/lang/NoSupportException.idl new file mode 100644 index 000000000..dcdb91783 --- /dev/null +++ b/udkapi/com/sun/star/lang/NoSupportException.idl @@ -0,0 +1,47 @@ +/* -*- 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_lang_NoSupportException_idl__ +#define __com_sun_star_lang_NoSupportException_idl__ + +#include + + + +module com { module sun { module star { module lang { + + +/** This exception is thrown when a feature of an interface is not + supported. + +

An example is a setParent(...) method and the object + does not allow the change.

+ + @see XEnumeration + @see com::sun::star::container::XChild::setParent + */ +published exception NoSupportException: com::sun::star::uno::Exception +{ +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/udkapi/com/sun/star/lang/NotInitializedException.idl b/udkapi/com/sun/star/lang/NotInitializedException.idl new file mode 100644 index 000000000..54478fbbe --- /dev/null +++ b/udkapi/com/sun/star/lang/NotInitializedException.idl @@ -0,0 +1,42 @@ +/* -*- 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_lang_NotInitializedException_idl__ +#define __com_sun_star_lang_NotInitializedException_idl__ + +#include + + +module com { module sun { module star { module lang { + + +/** is thrown when a component is attempted to be used before it was + completely constructed. +*/ +published exception NotInitializedException : com::sun::star::uno::RuntimeException +{ +}; + + +}; }; }; }; + + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/udkapi/com/sun/star/lang/NullPointerException.idl b/udkapi/com/sun/star/lang/NullPointerException.idl new file mode 100644 index 000000000..fbdcc382f --- /dev/null +++ b/udkapi/com/sun/star/lang/NullPointerException.idl @@ -0,0 +1,45 @@ +/* -*- 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_lang_NullPointerException_idl__ +#define __com_sun_star_lang_NullPointerException_idl__ + +#include + + + + module com { module sun { module star { module lang { + +/** This exception is thrown when an application attempts to use + `NULL` in a case where an object is required. + +

Applications should throw instances of this class to indicate + other illegal uses of the `NULL` object.

+ + @see com::sun::star::reflection::XIdlReflection::forName + */ +published exception NullPointerException: com::sun::star::uno::Exception +{ +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/udkapi/com/sun/star/lang/RegistryServiceManager.idl b/udkapi/com/sun/star/lang/RegistryServiceManager.idl new file mode 100644 index 000000000..bae17cc68 --- /dev/null +++ b/udkapi/com/sun/star/lang/RegistryServiceManager.idl @@ -0,0 +1,78 @@ +/* -*- 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_lang_RegistryServiceManager_idl__ +#define __com_sun_star_lang_RegistryServiceManager_idl__ + +#include + +#include + +#include + +#include + +#include + + + +module com { module sun { module star { module lang { + + +/** Provides a collection of implementations for services reading from a + persistent registry storage. + + For usage of the service manager have a look at service description + of ServiceManager. + + @see ServiceManager +*/ +published service RegistryServiceManager +{ + /** This is a derived ServiceManager service. + */ + service com::sun::star::lang::ServiceManager; + + /** The first two arguments of the initialization arguments reference: +
    +
  1. a simple registry + (com::sun::star::registry::XSimpleRegistry), + i.e. the registry to be read from
  2. +
  3. a component context + (com::sun::star::uno::XComponentContext) + to be installed as "DefaultContext" property of the + ServiceManager which is the context to be used + using the XMultiServiceFactory interface.
  4. +
+ */ + interface com::sun::star::lang::XInitialization; + + /** Property access. + */ + interface com::sun::star::beans::XPropertySet; + /** Specifies the current registry to be read from. + */ + [readonly, property] com::sun::star::registry::XSimpleRegistry Registry; +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/udkapi/com/sun/star/lang/ServiceManager.idl b/udkapi/com/sun/star/lang/ServiceManager.idl new file mode 100644 index 000000000..85d9a750c --- /dev/null +++ b/udkapi/com/sun/star/lang/ServiceManager.idl @@ -0,0 +1,127 @@ +/* -*- 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_lang_ServiceManager_idl__ +#define __com_sun_star_lang_ServiceManager_idl__ + +#include + +#include + +#include + +#include + +#include +#include + +#include + +#include + + +module com { module sun { module star { module lang { + + +/** Provides a collection of implementations for services. This is a singleton + you commonly find in your component context under key + /singletons/com.sun.star.lang.theServiceManager. + +

+ The factories are accessed with a service name. It is possible to + access the factories with their implementation names, but you should + avoid this. +

+ +

Service factories added via com::sun::star::container::XSet + should support the following interfaces:

+ +
+
XServiceInfo
+
supported interfaces/ implementation name
+ +
XSingleComponentFactory(optional)
+
is used to create instances of the implementation.
+ +
XComponent (optional)
+
The service manager calls the method + com::sun::star::lang::XComponent::dispose() + on the factory when going down (i.e. it is commonly disposed by the component context).
+
+ +

Since LibreOffice 3.6, in addition to instances of + XServiceInfo et al, the + com::sun::star::container::XSet of at least the default + C++ service manager implementation now also supports sequences of + com::sun::star::beans::NamedValue in insert + and remove. The sequence elements must each have a + Name of uri and a string Value that + is the URI of a service rdb. It is legal for there to be no such + uri elements. For insert, there can additionally + be an optional element with a Name of + component-context and a value that is a non-null reference of + type com::sun::star::uno::XComponentContext that shall + be used instead of this service manager's default component context when + loading the corresponding implementations. + + @see com::sun::star::uno::XComponentContext +*/ +published service ServiceManager +{ + /** This is a derived MultiServiceFactory service. + */ + service com::sun::star::lang::MultiServiceFactory; + + /** Disposing of service manager. +

+ The component context disposes its service manager singleton when going down + (i.e. when the component context is disposed). +

+ */ + interface com::sun::star::lang::XComponent; + + /** Management of service factories. + */ + interface com::sun::star::container::XSet; + + /** Enumeration of all service factories. +

+ It is possible to enumerate all implementations that support the + service specified with the argument of the + com::sun::star::container::XContentEnumerationAccess::createContentEnumeration() method. + The enumerator commonly returns XSingleComponentFactory + interfaces. +

+ */ + interface com::sun::star::container::XContentEnumerationAccess; + + /** Property access. + */ + [optional] interface com::sun::star::beans::XPropertySet; + /** specifies the default component context to be used, if instantiating services + via XMultiServiceFactory + */ + [optional, property] com::sun::star::uno::XComponentContext DefaultContext; +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/udkapi/com/sun/star/lang/ServiceNotRegisteredException.idl b/udkapi/com/sun/star/lang/ServiceNotRegisteredException.idl new file mode 100644 index 000000000..bbf7447d3 --- /dev/null +++ b/udkapi/com/sun/star/lang/ServiceNotRegisteredException.idl @@ -0,0 +1,42 @@ +/* -*- 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_lang_ServiceNotRegisteredException_idl__ +#define __com_sun_star_lang_ServiceNotRegisteredException_idl__ + +#include + + + +module com { module sun { module star { module lang { + +/** This exception is thrown when a needed service is not found. + +

Applications should throw instances of this class to indicate + that a needed service is not registered.

+ */ +published exception ServiceNotRegisteredException: com::sun::star::uno::Exception +{ +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/udkapi/com/sun/star/lang/SystemDependent.idl b/udkapi/com/sun/star/lang/SystemDependent.idl new file mode 100644 index 000000000..4d1c3c5e6 --- /dev/null +++ b/udkapi/com/sun/star/lang/SystemDependent.idl @@ -0,0 +1,96 @@ +/* -*- 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_lang_SystemDependent_idl__ +#define __com_sun_star_lang_SystemDependent_idl__ + + + +module com { module sun { module star { module lang { + +/** These constants are used to specify systems which depend on return values. + +

You should avoid system-dependent methods if possible. + + @code{.cpp} + #ifdef _WIN32 // Microsoft Windows + HWND hWin = (HWND)xInterface->getWindowHandle(SystemDependentWIN32); + if( hWin ) ... + #elif( ... ) // other systems + ... + #endif + @endcode + +

The Symbols are now prepended with SYSTEM_ thus we avoid collisions + with system headers.

+ + @see com::sun::star::awt::XSystemDependentWindowPeer + @deprecated + */ +published constants SystemDependent +{ + /** The called interface method returns a value specified for Windows. + +

These are Windows XP or higher.

+ */ + const short SYSTEM_WIN32 = 1; + + /** The called interface method returns a value specified for 16-bit Windows. + +

This is Windows 3.11.

+ */ + const short SYSTEM_WIN16 = 2; + + /** The called interface method returns a value specified for Java. + +

These are JRE 1.1, JRE 1.2, JDK 1.1, + JDK 1.2 or higher.

+ +

The return should be a handle to a Java object locked with + the call JavaEnvironment->NewGlobalRef( ... ) + by the callee.

+ */ + const short SYSTEM_JAVA = 3; + + /** The called interface method returns a value specified for OS/2. + */ + const short SYSTEM_OS2 = 4; + /** The called interface method returns a value specified for macOS. + */ + const short SYSTEM_MAC = 5; + + /** The called interface method returns a value specified for the X Window System. + */ + const short SYSTEM_XWINDOW = 6; + + /** The called interface method returns a value specified for iOS. + */ + const short SYSTEM_IOS = 7; + + /** The called interface method returns a value specified for Android. + */ + const short SYSTEM_ANDROID = 8; + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/udkapi/com/sun/star/lang/WrappedTargetException.idl b/udkapi/com/sun/star/lang/WrappedTargetException.idl new file mode 100644 index 000000000..de07139b8 --- /dev/null +++ b/udkapi/com/sun/star/lang/WrappedTargetException.idl @@ -0,0 +1,50 @@ +/* -*- 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_lang_WrappedTargetException_idl__ +#define __com_sun_star_lang_WrappedTargetException_idl__ + +#include + + + +module com { module sun { module star { module lang { + +/** This is a checked exception that wraps an exception thrown + by the original target. + +

Normally this exception is declared for generic methods.

+ + @see com::sun::star::container::XIndexAccess + @see com::sun::star::container::XNameAccess + @see com::sun::star::beans::XPropertySet + */ +published exception WrappedTargetException: com::sun::star::uno::Exception +{ + /** The exception is thrown by the target. + */ + any TargetException; + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/udkapi/com/sun/star/lang/WrappedTargetRuntimeException.idl b/udkapi/com/sun/star/lang/WrappedTargetRuntimeException.idl new file mode 100644 index 000000000..ee5958859 --- /dev/null +++ b/udkapi/com/sun/star/lang/WrappedTargetRuntimeException.idl @@ -0,0 +1,49 @@ +/* -*- 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_lang_WrappedTargetRuntimeException_idl__ +#define __com_sun_star_lang_WrappedTargetRuntimeException_idl__ + +#include + + +module com { module sun { module star { module lang { + + +/** This is a runtime exception that wraps any other exception thrown + by the original target. +

+ This exception should not be declared at interfaces, use + WrappedTargetException instead. It was defined + to transport an exception via interface-methods, that do not + specify the appropriate exceptions (so using this exception + should in general be avoided). + */ +published exception WrappedTargetRuntimeException: ::com::sun::star::uno::RuntimeException +{ + /** The exception is thrown by the target. + */ + any TargetException; +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/udkapi/com/sun/star/lang/XComponent.idl b/udkapi/com/sun/star/lang/XComponent.idl new file mode 100644 index 000000000..b0390d3a8 --- /dev/null +++ b/udkapi/com/sun/star/lang/XComponent.idl @@ -0,0 +1,117 @@ +/* -*- 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_lang_XComponent_idl__ +#define __com_sun_star_lang_XComponent_idl__ + +#include + + +module com { module sun { module star { module lang { + + published interface XEventListener; + +/** allows to explicitly free resources and break cyclic references. + +

Actually the real lifetime of a UNO object is controlled by + references kept on interfaces of this object. But there are two + distinct meanings in keeping a reference to an interface: + 1st to own the object and 2nd to know the object. + +

You are only allowed to keep references of interfaces + to UNO objects if you are by definition the owner of that object or + your reference is very temporary or you have registered an + EventListener at that object and release the reference when + "disposing" is called.

+ */ +published interface XComponent: com::sun::star::uno::XInterface +{ + /** The owner of an object calls this method to explicitly free all + resources kept by this object and thus break cyclic references. + +

Only the owner of this object is allowed to call this method. + The object should release all resources and references in the + easiest possible manner ( for instance no serialization should + take place anymore ). +

+

+ The object must notify all registered listeners using the method + XEventListener::disposing(). All notified objects + should release there references to this object without + calling XComponent::removeEventListener() + (the disposed object will release the listeners eitherway). +

+ +

After this method has been called, the object should behave as passive + as possible, thus it should ignore all calls + in case it can comply with its specification (for instance addEventListener()). + Often the object can't fulfill its specification anymore, + in this case it must throw the DisposedException + (which is derived from com::sun::star::uno::RuntimeException) + when it gets called.

+ +

For some objects no real owner can be identified, thus it can be + disposed from multiple reference holders. In this case + the object should be able to cope with multiple dispose()-calls (which + are inevitable in a multithreaded environment). + */ + void dispose(); + + /** adds an event listener to the object. + +

The broadcaster fires the disposing method of this listener + if the XComponent::dispose() method is called.

+ +

It is suggested to allow multiple registration of the same listener, + thus for each time a listener is added, it has to be removed.

+ +

If this XComponent is already disposed when + XComponent::addEventListener() is called, the call will not fail + with a DisposedException, but the caller will be notified via the + XEventListener::disposing() + callback. This callback can occur synchronously within the + addEventListener() call.

+ + @see XComponent::removeEventListener + */ + void addEventListener( [in] XEventListener xListener ); + + /** removes an event listener from the listener list. + +

It is a "noop" if the specified listener is not registered.

+ +

It is suggested to allow multiple registration of the same listener, + thus for each time a listener is added, it has to be removed. + +

If this XComponent is already disposed when + XComponent::removeEventListener() is called, the call will not + fail with a DisposedException, + but will rather be ignored silently.

+ + @see XComponent::addEventListener + */ + void removeEventListener( [in] XEventListener aListener ); + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/udkapi/com/sun/star/lang/XConnectionPoint.idl b/udkapi/com/sun/star/lang/XConnectionPoint.idl new file mode 100644 index 000000000..702ffae1b --- /dev/null +++ b/udkapi/com/sun/star/lang/XConnectionPoint.idl @@ -0,0 +1,166 @@ +/* -*- 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_lang_XConnectionPoint_idl__ +#define __com_sun_star_lang_XConnectionPoint_idl__ + +#include +#include + +#include + +#include + + + +module com { module sun { module star { module lang { + +/** supports connection points for connectable objects. + +

Connectable objects support the following features:

+ +
    +
  • outgoing interfaces, such as event sets;
  • +
  • the ability to enumerate the types of the outgoing interfaces; +
  • the ability to connect and disconnect sinks to the object + for those outgoing types;
  • +
  • the ability to enumerate the connections that exist to a + particular outgoing interface.
  • +
+ +

When to Implement?

+ +

To create a connectable object, you need to implement objects + that provide two related interfaces:

+ +
    +
  • XConnectionPointContainer
  • +
  • XConnectionPoint
  • +
+ +

The XConnectionPointContainer interface is implemented + on the connectable object to indicate the existence of the outgoing + interfaces. It provides a sequence of sub-objects. It also provides + access to all the connection point sub-objects, each of which + implements the XConnectionPoint interface. The + XConnectionPoint interface provides a sequence of + sub-objects.

+ +

Each connection point is a separate sub-object to avoid circular + reference counting problems. A connection point controls how many + connections (one or more) it will allow in its implementation of + XConnectionPoint::advise().

+ +

When to use?

+ +

A client can use the XConnectionPointContainer interface:

+ + - to get a sequence of connection points for each outgoing type. + + - to obtain access to connection point sub-objects with the + XConnectionPoint interface for each + outgoing type. Through the XConnectionPoint interface, + a client starts or terminates an advisory loop with the + connectable object and the client's own sink. The + client can also use the XConnectionPoint + interface to get a sequence of the connections that it + knows about. + + @see XConnectionPointContainer + */ +published interface XConnectionPoint: com::sun::star::uno::XInterface +{ + /** @returns + the type of the outgoing interface managed by this + connection point. + +

Using the XConnectionPointContainer::getConnectionPoints() + method, a client can obtain an XConnectionPoint + interface. Using that interface and this method, the client + can determine the type of each connection point enumerated. The + type returned from this method must enable the caller to access + this same connection point through + XConnectionPointContainer::findConnectionPoint(). + + @see XConnectionPointContainer::findConnectionPoint + */ + type getConnectionType(); + + /** @returns + the XConnectionPointContainer interface on + the parent connectable object. + + @see XConnectionPointContainer + */ + com::sun::star::lang::XConnectionPointContainer getConnectionPointContainer(); + + /** creates a connection between a connection point and a + client's sink, where the sink implements the outgoing interface + supported by this connection point. + +

A few add...Listener methods need additional parameters + to add listeners or throw exceptions. One of these methods is + com::sun::star::beans::XPropertySet::addPropertyChangeListener(). + We ignore the problem in this interface. A solution must be provided + in an additional XConnectionPoint interface.

+ + @param xListener + specifies the listener interface on the client's advise sink. + The client's sink receives outgoing calls from the + connection point container. + + @throws ListenerExistException + if it is an unicast broadcaster and a listener is already set. + + @throws InvalidListenerException + if the listener does not supply the needed interfaces. + + @see com::sun::star::beans::XPropertySet::addPropertyChangeListener + */ + void advise( [in] com::sun::star::uno::XInterface xListener ) + raises( com::sun::star::lang::ListenerExistException, + com::sun::star::lang::InvalidListenerException ); + + /** terminates a notification previously set up with advise. + +

A few remove...Listener methods need additional + parameters to add listeners or throw exceptions. One of these methods + is com::sun::star::beans::XPropertySet::removePropertyChangeListener(). + We ignore the problem in this interface. A solution must be + provided in an additional XConnectionPoint interface.

+ + @param xListener + specifies the listener interface on the client's advise sink. + + @see com::sun::star::beans::XPropertySet::removePropertyChangeListener + */ + void unadvise( [in] com::sun::star::uno::XInterface xListener ); + + /** @returns + a sequence of all currently advised connections. + */ + sequence getConnections(); + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/udkapi/com/sun/star/lang/XConnectionPointContainer.idl b/udkapi/com/sun/star/lang/XConnectionPointContainer.idl new file mode 100644 index 000000000..56e698ea7 --- /dev/null +++ b/udkapi/com/sun/star/lang/XConnectionPointContainer.idl @@ -0,0 +1,90 @@ +/* -*- 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_lang_XConnectionPointContainer_idl__ +#define __com_sun_star_lang_XConnectionPointContainer_idl__ + +#include + + +module com { module sun { module star { module lang { + + published interface XConnectionPoint; + +/** makes it possible to locate a specific connection point + for a specified UIK and manages a sequence of connections points. + +

An implementation of this interface must + support the com::sun::star::uno::XWeak interface. + Look at the language binding for a superclass or something else.

+ + @see XConnectionPoint + @see com::sun::star::uno::XWeak + */ +published interface XConnectionPointContainer: com::sun::star::uno::XInterface +{ + /** @returns + a sequence of all outgoing types; specifies which are supported + by this connectable object. + */ + sequence getConnectionPointTypes(); + + /** @returns + an XConnectionPoint interface of a + connection point for a specified type if that type + describes a supported outgoing interface. It is + NULL on failure of the call. + + @param aType + specifies the connection point's type. + */ + XConnectionPoint queryConnectionPoint( [in] type aType ); + + /** creates a connection between this object and a + client's sink, where the sink implements the outgoing + interface specified with ID. + +

The interface is advised under the connection point you + get with queryConnectionPoint( id ).

+ +

Use this method instead of the advise method at the + connection point, only if you know that the broadcaster supports + the outgoing interface, or if it does not matter that the + outgoing interface is not supported.

+ + @see XConnectionPoint::advise + */ + void advise( [in] type aType, + [in] com::sun::star::uno::XInterface xListener ); + + /** terminates a notification previously set up with + advise at the container or at the suitable connection point. + + @see XConnectionPoint::unadvise + */ + void unadvise( [in] type aType, + [in] com::sun::star::uno::XInterface xListener ); + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/udkapi/com/sun/star/lang/XEventListener.idl b/udkapi/com/sun/star/lang/XEventListener.idl new file mode 100644 index 000000000..5b808df56 --- /dev/null +++ b/udkapi/com/sun/star/lang/XEventListener.idl @@ -0,0 +1,55 @@ +/* -*- 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_lang_XEventListener_idl__ +#define __com_sun_star_lang_XEventListener_idl__ + +#include + +#include + + + +module com { module sun { module star { module lang { + +/** base interface for all event listeners interfaces. + */ +published interface XEventListener: com::sun::star::uno::XInterface +{ + /** gets called when the broadcaster is about to be disposed. + +

All listeners and all other objects, which reference the + broadcaster should release the reference to the source. + No method should be invoked anymore on this object ( + including XComponent::removeEventListener() ). +

+ +

This method is called for every listener registration + of derived listener interfaced, not only for registrations + at XComponent.

+ */ + void disposing( [in] com::sun::star::lang::EventObject Source ); + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/udkapi/com/sun/star/lang/XInitialization.idl b/udkapi/com/sun/star/lang/XInitialization.idl new file mode 100644 index 000000000..553f51690 --- /dev/null +++ b/udkapi/com/sun/star/lang/XInitialization.idl @@ -0,0 +1,62 @@ +/* -*- 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_lang_XInitialization_idl__ +#define __com_sun_star_lang_XInitialization_idl__ + +#include + +#include + + + +module com { module sun { module star { module lang { + +/** initializes an object directly after its creation. + +

This interface works together with factories. If you want to + initialize the object after creation, you should + support this interface and you may support other interfaces + which offer type-safe initialization methods.

+ +

Instead of calling XSingleComponentFactory::createInstanceWithContext() + and later initialize(), you should call + XSingleComponentFactory::createInstanceWithArgumentsAndContext() + to pass the arguments to the instance. The reason is, that a component may want to + return the same instance for the same set of parameters, and it can do so by implementing + the factory itself. +

+ + */ +published interface XInitialization: com::sun::star::uno::XInterface +{ + /** initializes the object. + +

It should be called directly after the object is created. + */ + void initialize( [in] sequence aArguments ) + raises( com::sun::star::uno::Exception ); + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/udkapi/com/sun/star/lang/XLocalizable.idl b/udkapi/com/sun/star/lang/XLocalizable.idl new file mode 100644 index 000000000..e89dada2e --- /dev/null +++ b/udkapi/com/sun/star/lang/XLocalizable.idl @@ -0,0 +1,48 @@ +/* -*- 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_lang_XLocalizable_idl__ +#define __com_sun_star_lang_XLocalizable_idl__ + +#include + +#include + + +module com { module sun { module star { module lang { + +/** makes it possible to set a Locale to be used by the object. + */ +published interface XLocalizable: com::sun::star::uno::XInterface +{ + /** sets the locale to be used by this object. + */ + void setLocale( [in] Locale eLocale ); + + /** @returns + the locale, which is used by this object. + */ + Locale getLocale(); +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/udkapi/com/sun/star/lang/XMain.idl b/udkapi/com/sun/star/lang/XMain.idl new file mode 100644 index 000000000..c869b964f --- /dev/null +++ b/udkapi/com/sun/star/lang/XMain.idl @@ -0,0 +1,53 @@ +/* -*- 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_lang_XMain_idl__ +#define __com_sun_star_lang_XMain_idl__ + +#include + +#include + + + +module com { module sun { module star { module lang { + + +/** Executing interface for executable components run by the uno executable + loader. This is an application to run components passing the command + line arguments. +*/ +published interface XMain: com::sun::star::uno::XInterface +{ + /** This method is called to run the component. + + @param aArguments + arguments passed to the component, + i.e. the command line arguments + @return + return value passed to be returned by main() + */ + long run( [in] sequence< string > aArguments ); +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/udkapi/com/sun/star/lang/XMultiComponentFactory.idl b/udkapi/com/sun/star/lang/XMultiComponentFactory.idl new file mode 100644 index 000000000..f036ece81 --- /dev/null +++ b/udkapi/com/sun/star/lang/XMultiComponentFactory.idl @@ -0,0 +1,81 @@ +/* -*- 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_lang_XMultiComponentFactory_idl__ +#define __com_sun_star_lang_XMultiComponentFactory_idl__ + +#include + + + +module com { module sun { module star { module lang { + +/** Factory interface for creating component instances giving a context from + which to retrieve deployment values. + + @see XInitialization +*/ +published interface XMultiComponentFactory : com::sun::star::uno::XInterface +{ + /** Creates an instance of a component which supports the + services specified by the factory. + + @param aServiceSpecifier + service name + @param Context + context the component instance gets its deployment values from + @return + component instance + */ + com::sun::star::uno::XInterface createInstanceWithContext( + [in] string aServiceSpecifier, + [in] com::sun::star::uno::XComponentContext Context ) + raises (com::sun::star::uno::Exception); + + /** Creates an instance of a component which supports the + services specified by the factory, and initializes the new instance + with the given arguments and context. + + @param ServiceSpecifier + service name + @param Arguments + arguments + @param Context + context the component instance gets its deployment values from + @return + component instance + */ + com::sun::star::uno::XInterface createInstanceWithArgumentsAndContext( + [in] string ServiceSpecifier, + [in] sequence Arguments, + [in] com::sun::star::uno::XComponentContext Context ) + raises (com::sun::star::uno::Exception); + + /** Gets the names of all supported services. + + @returns + sequence of all service names + */ + sequence< string > getAvailableServiceNames(); +}; + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/udkapi/com/sun/star/lang/XMultiServiceFactory.idl b/udkapi/com/sun/star/lang/XMultiServiceFactory.idl new file mode 100644 index 000000000..31b5725d9 --- /dev/null +++ b/udkapi/com/sun/star/lang/XMultiServiceFactory.idl @@ -0,0 +1,79 @@ +/* -*- 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_lang_XMultiServiceFactory_idl__ +#define __com_sun_star_lang_XMultiServiceFactory_idl__ + +#include + +#include + + + +module com { module sun { module star { module lang { + + +/** Allows creating instances specified by a string name. + + @note + Although this interface deals with the notion of "services", it is + not restricted to services but is more general. + This interface can be used for all kinds + of factories for all kinds of instances, not only UNO services. +*/ +published interface XMultiServiceFactory: com::sun::star::uno::XInterface +{ + /** Creates an instance classified by the specified name. + + @param aServiceSpecifier + classified name of instance + @return + instance + */ + com::sun::star::uno::XInterface createInstance( [in] string aServiceSpecifier ) + raises( com::sun::star::uno::Exception ); + + /** Creates an instance classified by the specified name and passes the arguments + to that instance. + + @param ServiceSpecifier + classified name of instance + @param Arguments + arguments passed to the instance + @return + instance + */ + com::sun::star::uno::XInterface createInstanceWithArguments( + [in] string ServiceSpecifier, + [in] sequence Arguments ) + raises( com::sun::star::uno::Exception ); + + /** Provides the available names of the factory to be used to create instances. + + @returns + sequence of all names + */ + sequence getAvailableServiceNames(); +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/udkapi/com/sun/star/lang/XServiceDisplayName.idl b/udkapi/com/sun/star/lang/XServiceDisplayName.idl new file mode 100644 index 000000000..eb22008c7 --- /dev/null +++ b/udkapi/com/sun/star/lang/XServiceDisplayName.idl @@ -0,0 +1,61 @@ +/* -*- 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_lang_XServiceDisplayName_idl__ +#define __com_sun_star_lang_XServiceDisplayName_idl__ + +#include + +#include + + +module com { module sun { module star { module lang { + +/** provides a name for the service to be used in displays. + +

This name can be used in displays (dialogs, menus, etc.) to provide + a more memorable / meaningful name than the service name or its + implementation name. It should not be used to identify / select a + specific service / implementation.

+ */ +published interface XServiceDisplayName : ::com::sun::star::uno::XInterface +{ + /** returns the display name of the service for a given language. + +

The caller may specify a + com::sun::star::lang::Locale for the preferred + language of the resulting string. + However, if that locale is not supported the resulting string may + be given in a different language. Usually this should be English.

+ + @param aLocale + the preferred language for the resulting display name. + + @returns + the string to be used for the service in displays. + */ + string getServiceDisplayName( + [in] ::com::sun::star::lang::Locale aLocale ); +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/udkapi/com/sun/star/lang/XServiceInfo.idl b/udkapi/com/sun/star/lang/XServiceInfo.idl new file mode 100644 index 000000000..ff9603c25 --- /dev/null +++ b/udkapi/com/sun/star/lang/XServiceInfo.idl @@ -0,0 +1,65 @@ +/* -*- 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_lang_XServiceInfo_idl__ +#define __com_sun_star_lang_XServiceInfo_idl__ + +#include + + + +module com { module sun { module star { module lang { + + +/** Provides information regarding the implementation: which services + are implemented and the name of the implementation. +*/ +published interface XServiceInfo: com::sun::star::uno::XInterface +{ + /** Provides the implementation name of the service implementation. + + @returns + unique name of the implementation + */ + string getImplementationName(); + + /** Tests whether the specified service is supported, i.e. implemented + by the implementation. + + @param ServiceName + name of service to be tested + @return + true, if service is supported, false otherwise + */ + boolean supportsService( [in] string ServiceName ); + + /** Provides the supported service names of the implementation, including + also indirect service names. + + @return + sequence of service names that are supported + */ + sequence getSupportedServiceNames(); +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/udkapi/com/sun/star/lang/XServiceName.idl b/udkapi/com/sun/star/lang/XServiceName.idl new file mode 100644 index 000000000..74da05043 --- /dev/null +++ b/udkapi/com/sun/star/lang/XServiceName.idl @@ -0,0 +1,48 @@ +/* -*- 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_lang_XServiceName_idl__ +#define __com_sun_star_lang_XServiceName_idl__ + +#include + + + + module com { module sun { module star { module lang { + +/** identifies the object with a service name which can be used to create + such an object by a factory. + */ +published interface XServiceName: com::sun::star::uno::XInterface +{ + /** @returns + the service name that can be used to create such an object + by a factory. + + @see com::sun::star::io::XPersistObject::getServiceName + */ + string getServiceName(); + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/udkapi/com/sun/star/lang/XSingleComponentFactory.idl b/udkapi/com/sun/star/lang/XSingleComponentFactory.idl new file mode 100644 index 000000000..d10f369bf --- /dev/null +++ b/udkapi/com/sun/star/lang/XSingleComponentFactory.idl @@ -0,0 +1,66 @@ +/* -*- 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_lang_XSingleComponentFactory_idl__ +#define __com_sun_star_lang_XSingleComponentFactory_idl__ + +#include + + + +module com { module sun { module star { module lang { + +/** Factory interface to create instances of an implementation of a service + specification. + + @see XInitialization +*/ +published interface XSingleComponentFactory : com::sun::star::uno::XInterface +{ + /** Creates an instance of a service implementation. + + @param Context + the instance gets its deployment values from this + @return + component instance + */ + com::sun::star::uno::XInterface createInstanceWithContext( + [in] com::sun::star::uno::XComponentContext Context ) + raises (com::sun::star::uno::Exception); + + /** Creates an instance of a component and initializes the new instance + with the given arguments and context. + + @param Arguments + arguments passed to implementation + @param Context + the instance gets its deployment values from this + @return + component instance + */ + com::sun::star::uno::XInterface createInstanceWithArgumentsAndContext( + [in] sequence Arguments, + [in] com::sun::star::uno::XComponentContext Context ) + raises( com::sun::star::uno::Exception ); +}; + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/udkapi/com/sun/star/lang/XSingleServiceFactory.idl b/udkapi/com/sun/star/lang/XSingleServiceFactory.idl new file mode 100644 index 000000000..b1fe4486f --- /dev/null +++ b/udkapi/com/sun/star/lang/XSingleServiceFactory.idl @@ -0,0 +1,66 @@ +/* -*- 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_lang_XSingleServiceFactory_idl__ +#define __com_sun_star_lang_XSingleServiceFactory_idl__ + +#include + +#include + + + +module com { module sun { module star { module lang { + + +/** Factory interface to produce instances of an implementation + of a service specification. + + This interface is deprecated. Please use XSingleComponentFactory. + + @see XInitialization + @deprecated +*/ +published interface XSingleServiceFactory: com::sun::star::uno::XInterface +{ + /** Creates an instance of a service implementation. + + @return + service instance + */ + com::sun::star::uno::XInterface createInstance() + raises( com::sun::star::uno::Exception ); + + /** Creates an instance of a service implementation initialized with + some arguments. + + @param aArguments + arguments passed to implementation + @return + service instance + */ + com::sun::star::uno::XInterface createInstanceWithArguments( [in] sequence aArguments ) + raises( com::sun::star::uno::Exception ); +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/udkapi/com/sun/star/lang/XTypeProvider.idl b/udkapi/com/sun/star/lang/XTypeProvider.idl new file mode 100644 index 000000000..efc0cd881 --- /dev/null +++ b/udkapi/com/sun/star/lang/XTypeProvider.idl @@ -0,0 +1,67 @@ +/* -*- 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_lang_XTypeProvider_idl__ +#define __com_sun_star_lang_XTypeProvider_idl__ + +#include + +#include + + +module com { module sun { module star { module lang { + + +/** interface to get information about the types + (usually interface types) supported by an object. + */ +published interface XTypeProvider: com::sun::star::uno::XInterface +{ + + /** returns + a sequence of all types (usually interface types) provided by the object. + @attention + If the object aggregates other objects the sequence also has + to contain all types supported by the aggregated objects. + */ + sequence getTypes(); + + + /** Obsolete unique identifier. + + Originally returned a sequence of bytes which, when non-empty, was used + as an ID to distinguish unambiguously between two sets of types, for + example to realise hashing functionality when the object is + introspected. Two objects that returned the same non-empty ID had to + return the same set of types in getTypes(). (If a unique ID could not + be provided, this method was always allowed to return an empty sequence, + though). + + @deprecated This feature should no longer be used, and implementations + are encouraged to always return an empty sequence. + */ + sequence getImplementationId(); +}; + + +}; }; }; }; + +#endif + + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/udkapi/com/sun/star/lang/XUnoTunnel.idl b/udkapi/com/sun/star/lang/XUnoTunnel.idl new file mode 100644 index 000000000..0b96ccc18 --- /dev/null +++ b/udkapi/com/sun/star/lang/XUnoTunnel.idl @@ -0,0 +1,66 @@ +/* -*- 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_lang_XUnoTunnel_idl__ +#define __com_sun_star_lang_XUnoTunnel_idl__ + +#include + + + + +module com { module sun { module star { module lang { + + +/** An interface to tunnel UNO. This means providing access to data or + something else, which is not specified by UNO-IDL. + + @attention + Restrictive usage. Use only, if there is no better possibility left. + It is definitely a hack. + +

+ Common usage: + Getting a C++ object pointer in the same process, thus to use an + implementation directly, most often because of a design flaw. +

+*/ +published interface XUnoTunnel: com::sun::star::uno::XInterface +{ + /** Call this method to get something which is not specified in UNO, e.g. + an address to some C++ object. + + @attention + The identifier specifies how the return value is to be reinterpreted. + The identifier must be globally unique, because it is unknown where + the implementation resides. + + @param aIdentifier + identifier + @return + something + */ + hyper getSomething( [in] sequence< byte > aIdentifier ); +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ -- cgit v1.2.3