diff options
Diffstat (limited to 'offapi/com/sun/star/embed/XInplaceClient.idl')
-rw-r--r-- | offapi/com/sun/star/embed/XInplaceClient.idl | 242 |
1 files changed, 242 insertions, 0 deletions
diff --git a/offapi/com/sun/star/embed/XInplaceClient.idl b/offapi/com/sun/star/embed/XInplaceClient.idl new file mode 100644 index 000000000000..b4edc9794c7e --- /dev/null +++ b/offapi/com/sun/star/embed/XInplaceClient.idl @@ -0,0 +1,242 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ +#ifndef __com_sun_star_embed_XInplaceClient_idl__ +#define __com_sun_star_embed_XInplaceClient_idl__ + +#ifndef __com_sun_star_uno_XInterface_idl__ +#include <com/sun/star/uno/XInterface.idl> +#endif + +#ifndef __com_sun_star_container_XIndexAccess_idl__ +#include <com/sun/star/container/XIndexAccess.idl> +#endif + +#ifndef __com_sun_star_frame_XDispatchProvider_idl__ +#include <com/sun/star/frame/XDispatchProvider.idl> +#endif + +#ifndef __com_sun_star_frame_XLayoutManager_idl__ +#include <com/sun/star/frame/XLayoutManager.idl> +#endif + +#ifndef __com_sun_star_awt_XWindow_idl__ +#include <com/sun/star/awt/XWindow.idl> +#endif + +#ifndef __com_sun_star_awt_Rectangle_idl__ +#include <com/sun/star/awt/Rectangle.idl> +#endif + +#ifndef __com_sun_star_awt_Size_idl__ +#include <com/sun/star/awt/Size.idl> +#endif + +#ifndef __com_sun_star_awt_KeyEvent_idl__ +#include <com/sun/star/awt/KeyEvent.idl> +#endif + +#ifndef __com_sun_star_embed_WrongStateException_idl__ +#include <com/sun/star/embed/WrongStateException.idl> +#endif + + +//============================================================================ + + module com { module sun { module star { module embed { + +//============================================================================ +/** represents common functionality for inplace clients. + */ +interface XInplaceClient: com::sun::star::uno::XInterface +{ + //------------------------------------------------------------------------ + /** checks if the container can activate the object inplace. + + @return + <TRUE/> the container can activate the object inplace. + <FALSE/> otherwise. + */ + boolean canInplaceActivate(); + + //------------------------------------------------------------------------ + /** notifies container through the client that the object is to be + inplace activated. + + @throws com::sun::star::embed::WrongStateException + the container is not ready for activation + */ + void activatingInplace() + raises( ::com::sun::star::embed::WrongStateException ); + + //------------------------------------------------------------------------ + /** notifies container through the client that the object is to be + UI-activated. + + @throws com::sun::star::embed::WrongStateException + the container is not ready for activation + */ + void activatingUI() + raises( ::com::sun::star::embed::WrongStateException ); + + //------------------------------------------------------------------------ + /** notifies container through the client that the object is deactivated. + + @throws com::sun::star::embed::WrongStateException + the container is not ready for deactivation + */ + void deactivatedInplace() + raises( ::com::sun::star::embed::WrongStateException ); + + //------------------------------------------------------------------------ + /** notifies container through the client that the object is + UI-deactivated. + + <p> + After this notification the container can restore it's own UI and take focus. + </p> + + @throws com::sun::star::embed::WrongStateException + the container is not ready for deactivation + */ + void deactivatedUI() + raises( ::com::sun::star::embed::WrongStateException ); + + //------------------------------------------------------------------------ + /** allows to retrieve the + <type scope="com::sun::star::frame">LayoutManager</type> of the + container. + + @return + reference to object representing the + <type scope="com::sun::star::frame">LayoutManager</type> of the + container + + @throws com::sun::star::embed::WrongStateException + the object is in unexpected state to make such request + */ + ::com::sun::star::frame::XLayoutManager getLayoutManager() + raises( ::com::sun::star::embed::WrongStateException ); + + //------------------------------------------------------------------------ + /** allows to retrieve the container's dispatch provider. + + @return + reference to object implementing the + <type scope="com::sun::star::frame">XDispatchProvider</type> + + @throws com::sun::star::embed::WrongStateException + the object is in unexpected state to make such request + */ + ::com::sun::star::frame::XDispatchProvider getInplaceDispatchProvider() + raises( ::com::sun::star::embed::WrongStateException ); + + //------------------------------------------------------------------------ + /** gets the inplace object position rectangle. + + <p> + The rectangle is provided in object's parent window coordinates in + pixels. The intersection of position and clip rectangles specifies + the visible part of the object. In case the position window has a size + that is bigger than object's size, the object should either scale or + deactivate. + </p> + + @return + specifies a new position rectangle + + @throws com::sun::star::embed::WrongStateException + the object is in unexpected state to make such request + */ + ::com::sun::star::awt::Rectangle getPlacement() + raises( ::com::sun::star::embed::WrongStateException ); + + //------------------------------------------------------------------------ + /** gets the inplace object clip rectangle. + + <p> + The rectangle is provided in object's parent window coordinates in + pixels. The intersection of position and clip rectangles specifies + the visible part of the object. + </p> + + @return + specifies a new clip rectangle + + @throws com::sun::star::embed::WrongStateException + the object is in unexpected state to make such request + */ + ::com::sun::star::awt::Rectangle getClipRectangle() + raises( ::com::sun::star::embed::WrongStateException ); + + //------------------------------------------------------------------------ + /** provides accelerator table the object whants to use while it is + inplace active. + + @param aKeys + an accelerator table from object + + @throws com::sun::star::embed::WrongStateException + the object is in unexpected state + */ + void translateAccelerators( [in] sequence< ::com::sun::star::awt::KeyEvent > aKeys ) + raises( ::com::sun::star::embed::WrongStateException ); + + //------------------------------------------------------------------------ + /** scrolls the object. + + @param aOffset + scrolls the object to specified offset in pixels + + @throws com::sun::star::embed::WrongStateException + the object is in unexpected state + */ + void scrollObject( [in] ::com::sun::star::awt::Size aOffset ) + raises( ::com::sun::star::embed::WrongStateException ); + + //------------------------------------------------------------------------ + /** notifies the container that the position of the object is changed. + + @param aPosRect + specifies a new position rectangle + + @throws com::sun::star::embed::WrongStateException + the object state is not correct + + @throws com::sun::star::uno::Exception + in case of other problems + */ + void changedPlacement( [in] ::com::sun::star::awt::Rectangle aPosRect ) + raises( ::com::sun::star::embed::WrongStateException, + ::com::sun::star::uno::Exception ); +}; + +//============================================================================ + +}; }; }; }; + +#endif + |