diff options
Diffstat (limited to 'offapi/com/sun/star/rendering/XBitmapCanvas.idl')
-rw-r--r-- | offapi/com/sun/star/rendering/XBitmapCanvas.idl | 113 |
1 files changed, 113 insertions, 0 deletions
diff --git a/offapi/com/sun/star/rendering/XBitmapCanvas.idl b/offapi/com/sun/star/rendering/XBitmapCanvas.idl new file mode 100644 index 000000000..c30b86a7d --- /dev/null +++ b/offapi/com/sun/star/rendering/XBitmapCanvas.idl @@ -0,0 +1,113 @@ +/* -*- 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 . + */ +#ifndef __com_sun_star_rendering_XBitmapCanvas_idl__ +#define __com_sun_star_rendering_XBitmapCanvas_idl__ + +#include <com/sun/star/uno/XInterface.idl> +#include <com/sun/star/lang/IllegalArgumentException.idl> +#include <com/sun/star/geometry/RealRectangle2D.idl> +#include <com/sun/star/rendering/RenderState.idl> +#include <com/sun/star/rendering/XCanvas.idl> +#include <com/sun/star/rendering/VolatileContentDestroyedException.idl> + + +module com { module sun { module star { module rendering { + +/** This is a specialization of the canvas interface for bitmapped + canvases.<p> + + This interface is a specialization of the canvas interface for + bitmapped canvases, where additional methods for accessing and + moving of bitmap content are provided.<p> + + @since OOo 2.0 + */ +interface XBitmapCanvas : XCanvas +{ + /** This method copies a rectangular area from a place of one + canvas to a place on another.<p> + + This method copies a rectangular area from a place of one + canvas to a place on another. Source and destination areas are + permitted to overlap. If the source view or render state has a + clipping set, the regions clipped away from the source + rectangle are regarded fully transparent for the copy + operation. The device color for both source and destination + render state is ignored, the compositing mode only for the + source render state.<p> + + @param sourceCanvas + Canvas from which to copy the bitmap data. Can be identical to + the canvas this method is called on, but must be valid. + + @param sourceRect + Rectangle from which to copy the bitmap data. This rectangle + is subject to both view and render transformation, before + being applied. Thus, on screen, it does not necessarily + resemble a rectangle any more. The rectangle must be + non-empty, see + ::com::sun::star::geometry::RealRectangle2D + for details. + + @param sourceViewState + The view state to apply to the source of this copy + operation. The view transformation must be non-singular. + + @param sourceRenderState + The render state to apply to the source of this copy + operation. The render transformation must be non-singular, and + the compositing mode must be one of the + CompositingOperation values. + + @param destRect + Rectangle into which to copy the bitmap data. This rectangle + is subject to both view and render transformation, before + being applied. Thus, on screen, it does not necessarily + resemble a rectangle any more. The rectangle must be + non-empty, see + ::com::sun::star::geometry::RealRectangle2D + for details. + + @param destViewState + The view state to apply to the destination of this copy + operation. The view transformation must be non-singular. + + @param destRenderState + + The render state to apply to the destination of this copy + operation. The render transformation must be non-singular, and + the compositing mode must be one of the + CompositingOperation values. + + @throws com::sun::star::lang::IllegalArgumentException + if one of the parameters are not within the specified range. + */ + void copyRect( [in] XBitmapCanvas sourceCanvas, + [in] ::com::sun::star::geometry::RealRectangle2D sourceRect, [in] ViewState sourceViewState, [in] RenderState sourceRenderState, + [in] ::com::sun::star::geometry::RealRectangle2D destRect, [in] ViewState destViewState, [in] RenderState destRenderState ) + raises (com::sun::star::lang::IllegalArgumentException, + VolatileContentDestroyedException); + +}; + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ |