/* -*- 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 configuration {
/** provides information about a dynamic element that can be inserted into a
homogeneous set of elements within a hierarchy .
< p > Provides information about the element .
Provides access to its containing set object .
Allows controlling the lifetime of the element .
< / p >
< p > Set elements may be added to and removed from the hierarchy at runtime .
They bear user - defined names . They may exist independently , outside any
container .
< / p >
< p > New set element instances generally are created through members of
com : : sun : : star : : lang : : XSingleServiceFactory or ,
if supported , com : : sun : : star : : lang : : XMultiServiceFactory
on an implementation of SetUpdate . Initially , they are not
contained in a set object and have no meaningful name .
< / p >
< p > While an instance is not contained in a set object , it is owned by
the client and can be disposed by calling
com : : sun : : star : : lang : : XComponent : : dispose ( ) . The name
of the object can freely be changed in that situation though without
persistent effect .
< / p >
< p > When the instance is inserted into a set ( this includes replacing an
existing element ) , ownership is transferred to the container .
While it is contained in the container , clients must not dispose the
object . When inserted , the name of the object is fixed and is used to
identify it within the container . An implementation may support
com : : sun : : star : : container : : XNamed : : setName ( ) even in
this case . If it does , changing the name has the same effect of removing
the object ( under the old name ) and then reinserting it into the same
container ( using the new name ) .
< / p >
< p > When an instance is removed from a set ( this includes being replaced by
a new element ) , ownership is transferred to the client again . It can then be
disposed or reinserted into a container . An instance can only be inserted
into a container , if it was obtained from the same hierarchy .
< / p >
< p > When a set element is removed from its set from outside the hierarchy , the
container disposes of the object . This occurrence can be detected by registering
a com : : sun : : star : : lang : : XEventListener with the object .
< / p >
< p > If an implementation is part of a < em > read - only < / em > view of the hierarchy ,
changing the name or parent is not supported ( the object can ' t be removed from
its container anyway ) .
< / p >
@ see com : : sun : : star : : configuration : : SetAccess
Parent objects of this service generally implement service SetAccess .
@ see com : : sun : : star : : configuration : : GroupElement
A complementary service for elements of a static heterogeneous collection .
@ see com : : sun : : star : : configuration : : AccessRootElement
A complementary service for the root element of a hierarchy .
*/
published service SetElement
{
/** is the basic service for accessing information about an element in the
hierarchy .
*/
service HierarchyElement;
/** provides access to the containing set object.
< p > In this service , this interface is mandatory < / p >
< p > com : : sun : : star : : container : : XChild : : getParent ( )
returns ` NULL ` , if the object is currently not contained in a container .
< / p >
< p > An implementation may also support
com : : sun : : star : : container : : XChild : : setParent ( ) .
If it does , changing the parent has the effect of first removing the object
from its old parent ( if any ) and then inserting it into the new parent
( unless that is ` NULL ` ) under the same name . The new parent must be part of
the same hierarchy as the old one . The name of the object must have been set
before .
< / p >
*/
interface com::sun::star::container::XChild;
/** allows controlling or observing the lifetime of the object.
< p > Clients may dispose of the object using
com : : sun : : star : : lang : : XComponent : : dispose ( ) , only if
the object is currently not contained in a container (
com : : sun : : star : : container : : XChild : : getParent ( )
returns ` NULL ` ) .
< / p >
< p > Clients may register a com : : sun : : star : : lang : : XEventListener
to be notified , if the object is removed from its container by an outside source .
< / p >
*/
interface com::sun::star::lang::XComponent;
/** provides information about the type of the element.
< p > Set elements have a predetermined structure ( their < em > type < / em > ) ,
that is described by and can be generated from a < em > template < / em > .
< / p >
< p > If the object was created using interface
com : : sun : : star : : lang : : XSingleServiceFactory
on an implementation of SetUpdate , this interface describes the
same template as interface XTemplateContainer on that
SetUpdate .
< / p >
< p > If the object was created using interface
com : : sun : : star : : lang : : XMultiServiceFactory
on an implementation of SetUpdate , this interface describes the
template whose name was used as a service identifier for the factory method .
< / p >
< p > Otherwise , the semantics of the information provided about the template depends on the
implementation .
< / p >
@ see com : : sun : : star : : configuration : : XTemplateContainer
*/
interface com::sun::star::configuration::XTemplateInstance;
};
}; }; }; };
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
Messung V0.5 in Prozent C=96 H=100 G=97
¤ Dauer der Verarbeitung: 0.11 Sekunden
(vorverarbeitet am 2026-10-04)
¤
*© Formatika GbR, Deutschland