LibreOffice LibreOffice 25.2 SDK API Reference

Public Member Functions | List of all members
XComponentLoader Interface Referencepublished

this is a simple interface to load components by a URL into a frame environment More...

`import"XComponentLoader.idl";`

Inheritance diagram for XComponentLoader:

## Public Member Functions
com::sun::star::lang::XComponent | loadComponentFromURL ([in] string URL, [in] string TargetFrameName, [in] long SearchFlags, [in] sequence< com::sun::star::beans::PropertyValue > Arguments) raises ( com::sun::star::io::IOException, com::sun::star::lang::IllegalArgumentException )
| loads a component specified by a URL into the specified new or existing frame. More...
Public Member Functions inherited from XInterface
any | queryInterface ([in] type aType)
| queries for a new interface to an existing UNO object. More...
void | acquire ()
| increases the reference counter by one. More...
void | release ()
| decreases the reference counter by one. More...

## Detailed Description

this is a simple interface to load components by a URL into a frame environment

See also
  Desktop
  Frame
  XFrame

Developers Guide
  Text Documents - Handling Text Document Files - Creating and Loading Text Documents
  Office Development - Integrating Import and Export Filters
  Office Development - Handling Documents - Loading Documents
  Office Development - Using the Desktop
  Spreadsheet Documents - Handling Spreadsheet Documents Files - Creating and Loading Spreadsheet Documents

## Member Function Documentation

## ◆ loadComponentFromURL()

com::sun::star::lang::XComponent loadComponentFromURL | ( | [in] string | URL,
|  | [in] string | TargetFrameName,
|  | [in] long | SearchFlags,
|  | [in] sequence< com::sun::star::beans::PropertyValue > | Arguments
| ) |  |
raises | ( | com::sun::star::io::IOException,
|  | com::sun::star::lang::IllegalArgumentException
| ) |  |

loads a component specified by a URL into the specified new or existing frame.

Parameters

  URL | specifies the URL of the document to load

To create new documents, use "private:factory/scalc", "private:factory/swriter", etc. Other special protocols (e.g. "slot:", ".uno") are not allowed and raise a com::sun::star::lang::IllegalArgumentException.

Parameters

  TargetFrameName | specifies the name of the frame to view the document in

If a frame with the specified name already exists, it is used, otherwise it is created. There exist some special targets which never can be used as real frame names:

"_blank" | always creates a new frame
"_default" | special UI functionality (e.g. detecting of already loaded documents, using of empty frames of creating of new top frames as fallback)
"_self", ""(!) | means frame himself
"_parent" | address direct parent of frame
"_top" | indicates top frame of current path in tree
"_beamer" | means special sub frame

Parameters

  SearchFlags | use the values of FrameSearchFlag to specify how to find the specified TargetFrameName

Note: These flags are optional ones and will be used for non special target names only.

Parameters

  Arguments | these arguments specify component or filter specific behavior

For example, "ReadOnly" with a boolean value specifies whether the document is opened read-only. "FilterName" specifies the component type to create and the filter to use, for example: "Text - CSV". For more information see com::sun::star::document::MediaDescriptor.

Returns
  a com::sun::star::lang::XComponent for successfully loaded documents or
  `NULL`if it failed

This interface is a generic one and can be used to start further requests on loaded document or control the lifetime of it (means dispose() it after using). The real document service behind this interface can be one of follow three ones:

- com::sun::star::awt::XWindow for simple components
  Should be used for viewable components only. It is not allowed to dispose it after use directly, because the frame containing the component is its owner. Because the frame object is not accessible through the interface too, only an interacting user can do this by closing the frame's window.
- XController for richer components
  Should be used for real editable components which doesn't need a model. It is not allowed to dispose it after use directly, because the frame containing the component is its owner. Here the object can be disposed by disposing the frame, that the XController::getFrame() method of the controller returns. But for visible components the controller should be asked for permission by calling XController::suspend() before.
- XModel for full featured components
  A model that in general can be shared between several view/controller pairs, does not have an explicit owner. Every view and also the component that loaded the document may consider itself as an owner. Simply calling com::sun::star::lang::XComponent::dispose() on this model may cause problems, if some members of the "owner community" are currently busy working on the model. These problems are handled by explicit closing negotiations through the interface com::sun::star::util::XCloseable. Direct dispose of the model is allowed only, if this special interface doesn't exist.

Exceptions

  com::sun::star::io::IOException | when URL couldn't be found or was corrupt
  com::sun::star::lang::IllegalArgumentException | when given parameters doesn't perform the specification

The documentation for this interface was generated from the following file:

- com/sun/star/frame/XComponentLoader.idl