office-gobmx/udkapi/com/sun/star/beans/XIntrospectionAccess.idl
Stephan Bergmann 5687eba49f Drop obsolete preprocessor directives from UNOIDL files
...which were used by ildc, which is gone since
a8485d558f "[API CHANGE] Remove deprecated idlc
and regmerge from the SDK", and have always been ignored as legacy by its
unoidl-write replacement.

This change has been carried out (making use of GNU sed extensions) with

> for i in $(git ls-files \*.idl); do sed -i -z -E -e 's/\n\n((#[^\n]*\n)+\n)*(#[^\n]*\n)+\n?/\n\n/g' -e 's/\n(#[^\n]*\n)+/\n/g' "$i"; done && git checkout extensions/source/activex/so_activex.idl odk/examples/OLE/activex/so_activex.idl

which apparently happened to do the work.  (The final two files are not UNOIDL
source files.)

Change-Id: Ic9369e05d46e8f7e8a304ab01740b171b92335cd
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135683
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2022-06-13 16:27:45 +02:00

260 lines
9.3 KiB
Text

/* -*- 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 .
*/
module com { module sun { module star { module beans {
/** represents the result of an introspection operation done by
the inspect method of XIntrospection.
<p>This interface gives information about an object's
properties and methods as detected in the introspection
process. It's not possible to access properties or call
methods directly using this interface but it provides
access to other interfaces to do so.
See com::sun::star::beans::XIntrospectionAccess::queryAdapter()</p>
<p>The XExactName interface has to be supported
in order to implement inaccurate name access for all objects
which implement the com::sun::star::container::XNameAccess interface
or XPropertySet.</p>
<p>The XMaterialHolder interface has to be
supported to give access to the inspected object.</p>
@see XPropertySet
@see com::sun::star::beans::XExactName
*/
published interface XIntrospectionAccess: com::sun::star::uno::XInterface
{
/** returns information about which method concepts described in
the MethodConcept constants group are supported
by this XIntrospectionAccess implementation.
<p>The minimum supported concepts should be:</p>
<ul>
<li> MethodConcept::PROPERTY, </li>
<li> MethodConcept::LISTENER, </li>
<li> MethodConcept::ENUMERATION, </li>
<li> MethodConcept::NAMECONTAINER</li>
<li> MethodConcept::INDEXCONTAINER; </li>
</ul>
@returns
zero or more constants of the MethodConcept
constants group combined by an arithmetical or-operation.
*/
long getSuppliedMethodConcepts();
/** returns information about which property concepts described in
the PropertyConcept constants group are supported
by this XIntrospectionAccess implementation.
<p>The minimum supported concepts should be:</p>
<ul>
<li> PropertyConcept::PROPERTYSET, </li>
<li> PropertyConcept::ATTRIBUTES and </li>
<li> PropertyConcept::METHODS. </li>
</ul>
@returns
zero or more constants of the PropertyConcept
constants group.combined by an arithmetical or-operation.
*/
long getSuppliedPropertyConcepts();
/** returns information about a property if a property with
the demanded name exists and if it accords to one of the
demanded PropertyConcepts. The information
is provided as Property struct.
@returns
A Property struct providing
information about the demanded property,
if a corresponding property exists.
@param aName
the name of the property.
@param nPropertyConcepts
zero or more constants of the PropertyConcept
constants group combined by an arithmetical
or-operation.
@throws NoSuchElementException
when a property with the demanded name doesn't exist
or if it accords to a wrong PropertyConcept.
*/
com::sun::star::beans::Property getProperty( [in] string aName,
[in] long nPropertyConcepts )
raises( com::sun::star::container::NoSuchElementException );
/** allows to ask if a property with the demanded name exists
and if it accords to one of the demanded PropertyConcept.
@returns
`TRUE` if the property exists and accords to one of
the demanded PropertyConcepts, otherwise
`FALSE` is returned.
@param aName
the name of the property.
@param nPropertyConcepts
zero or more constants of the PropertyConcept
constants group combined by an arithmetical
or-operation.
*/
boolean hasProperty( [in] string aName,
[in] long nPropertyConcepts );
/** returns a sequence of properties of the introspected object
@returns
all properties of the introspected object which accord
to the demanded PropertyConcepts.
@param nPropertyConcepts
zero or more constants of the PropertyConcept
constants group combined by an arithmetical
or-operation.
*/
sequence<com::sun::star::beans::Property> getProperties(
[in] long nPropertyConcepts );
/** returns information about a method if a method with
the demanded name exists and if it accords to one of
the demanded MethodConcepts. The information is
provided as com::sun::star::reflection::XIdlMethod.
@returns
A com::sun::star::reflection::XIdlMethod providing
information about and
access to the demanded method if a corresponding
method exists.
@param aName
the name of the method.
@param nMethodConcepts
zero or more constants of the MethodConcept
constants group combined by an arithmetical
or-operation.
@throws NoSuchElementException
when a method with the demanded name doesn't exist
or if it accords to a wrong MethodConcept.
*/
com::sun::star::reflection::XIdlMethod getMethod( [in] string aName,
[in] long nMethodConcepts )
raises( com::sun::star::lang::NoSuchMethodException );
/** allows to ask if a method with the demanded name exists
and if it accords to one of the demanded MethodConcept.
@returns
`TRUE` if the method exists and accords to one of
the demanded MethodConcepts, otherwise
`FALSE` is returned.
@param aName
the name of the method.
@param nMethodConcepts
zero or more constants of the MethodConcept
constants group combined by an arithmetical
or-operation.
*/
boolean hasMethod( [in] string aName,
[in] long nMethodConcepts );
/** returns a sequence of methods of the introspected object.
@returns
all methods of the introspected object which accord
to the demanded MethodConcepts.
@param nMethodConcepts
zero or more constants of the MethodConcept
constants group combined by an arithmetical
or-operation.
*/
sequence<com::sun::star::reflection::XIdlMethod> getMethods(
[in] long nMethodConcepts );
/** returns the listener types supported by the introspected
object.
<p>If the introspected object has the methods
<code>addFooListener( XFooListener xFoo )</code> and
<code>removeFooListener( XFooListener xFoo )</code>
the type of XFooListener will be one of the elements
in the returned sequence.
@returns
a sequence of the types of listener interfaces
which are supported by the introspected object.
*/
sequence<type> getSupportedListeners();
/** creates an adapter that implements an interface with the
specified type.
<p>To access properties, query for the XPropertySet
interface. If the XPropertySet can
be queried, the XFastPropertySet interface
must be supported too. </p>
<p>If the introspected object implements a name container,
the introspection should return the
com::sun::star::container::XNameAccess and
com::sun::star::container::XNameContainer interfaces.</p>
<p>If the introspected object implements an index container,
the introspection should return the
com::sun::star::container::XIndexAccess and
com::sun::star::container::XIndexContainer interfaces.</p>
<p>If the introspected object implements an enumeration
container, the introspection should return the
com::sun::star::container::XEnumerationAccess interface.</p>
<p>If the introspected object implements the
com::sun::star::reflection::XIdlArray interface,
the introspection should return this.</p>
<p>To implement inaccurate name access, at all objects,
which implement the com::sun::star::container::XNameAccess or
XPropertySet interface, the XExactName interface has to be supported.
</p>
@see com::sun::star::beans::XExactName
*/
com::sun::star::uno::XInterface queryAdapter( [in] type aInterfaceType )
raises( com::sun::star::beans::IllegalTypeException );
};
}; }; }; };
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */