:: com :: sun :: star :: ui ::

unpublished interface XUIElementFactoryRegistration
Usage Restrictions
not published
Description
is used to query, register and deregister user interface element factories.

A user interface element factory is registered for a set of three properties.

  • Typea string that identifies a type of a user interface element.
  • Namea string that identifies a single user interface element within a type class.
  • Modulea string that identifies a single module of OpenOffice.
    • A combination of these three property values can uniquely identifiy every user interface element within OpenOffice. Currently the following user interface element types are defined:
      • menubar
      • popupmenu
      • toolbar
      • statusbar
      • floater

Since
OOo 2.0

Methods' Summary
getRegisteredFactories function to retrieve a list of all registered user interface element factories  
getFactory function to retrieve a previously registered user interface element factory.  
registerFactory function to register a user interface element factory.  
deregisterFactory function to remove a previously defined user interface element factory.  
Methods' Details
getRegisteredFactories
sequence< sequence< ::com::sun::star::beans::PropertyValue > >
getRegisteredFactories();

Description
function to retrieve a list of all registered user interface element factories
Returns
a sequence of sequence of propert values which describe every registered user interface element factory.
The following properties are defined:
  • Typea string property that identifies the type of the user interface element which this factory can create.
  • Namean optional string property which identifies a single user interface element within a type class which this factory can create. If this property is not returned, the factory is a generic factory for all user interface elements of the same type.
  • Modulean optional string property that specifies to which module this factory is bound to. If this property is not returned, the factory is a generic factory.
getFactory
XUIElementFactory
getFactory( [in] string  ResourceURL,
[in] string  ModuleIdentifier );

Description
function to retrieve a previously registered user interface element factory.
Returns
a reference to a registered user interface element factory if a factory has been found. An empty reference when no factory has been found. The defined search order of factories must be from special to generic ones.
Parameter ResourceURL
a resource URL which identifies a user interface element. A resource URL uses the following syntax: "private:resource/$type/$name". It is only allowed to use ascii characters for type and name.
Parameter ModuleName
an optional module identifier. This value can remain empty, if a generic factory is requested. The module identifier can be retrieved from the ::com::sun::star::frame::ModuleManager service.
registerFactory
void
registerFactory( [in] string  aType,
[in] string  aName,
[in] string  aModuleIdentifier,
[in] string  aFactoryImplementationName )
raises( ::com::sun::star::container::ElementExistException );

Description
function to register a user interface element factory.
Parameter aType
a string that identifies a type of a user interface element. Currently the following types are supported:
  • menubar
  • toolbar
  • statusbar
Parameter aName
an optional name of a single user interface element. This name must be unique within a user interface element type class. This value can remain empty if no special factory for a single user interface element is needed.
Parameter aModuleIdentifier
an optional module identifier that can be used to register a factory only for a single module. This value can remain empty if no special factory for a single module is needed. The module identifier can be retrieved from the ::com::sun::star::frame::ModuleManager service.
Parameter aFactoryImplementationName
a UNO implementation name that can be used by an implementation to create a factory instance.
deregisterFactory
void
deregisterFactory( [in] string  aType,
[in] string  aName,
[in] string  aModuleIdentifier )
raises( ::com::sun::star::container::NoSuchElementException );

Description
function to remove a previously defined user interface element factory.
Parameter aType
a string that identifies a type of a user interface element. Currently the following types are supported:
  • menubar
  • toolbar
  • statusbar
Parameter aName
an optional name of a single user interface element. This name must be unique within a user interface element type class. This value can remain empty if no special factory for a single user interface element should be deregistered.
Parameter aModuleName
an optional module name that can be used to deregister a factory only for a single module. This value can remain empty if not a module based factory should be deregisted. The module identifier can be retrieved from the ::com::sun::star::frame::ModuleManager service.

Using this function can be very dangerous as other implementation with OpenOffice may not be able to create their user interface element anymore.

Top of Page