forked from amazingfate/loongoffice
123 lines
4.3 KiB
Plaintext
123 lines
4.3 KiB
Plaintext
/*************************************************************************
|
|
*
|
|
* OpenOffice.org - a multi-platform office productivity suite
|
|
*
|
|
* $RCSfile: XBufferController.idl,v $
|
|
*
|
|
* $Revision: 1.4 $
|
|
*
|
|
* last change: $Author: rt $ $Date: 2005-09-08 02:57:34 $
|
|
*
|
|
* The Contents of this file are made available subject to
|
|
* the terms of GNU Lesser General Public License Version 2.1.
|
|
*
|
|
*
|
|
* GNU Lesser General Public License Version 2.1
|
|
* =============================================
|
|
* Copyright 2005 by Sun Microsystems, Inc.
|
|
* 901 San Antonio Road, Palo Alto, CA 94303, USA
|
|
*
|
|
* This library is free software; you can redistribute it and/or
|
|
* modify it under the terms of the GNU Lesser General Public
|
|
* License version 2.1, as published by the Free Software Foundation.
|
|
*
|
|
* This library 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 for more details.
|
|
*
|
|
* You should have received a copy of the GNU Lesser General Public
|
|
* License along with this library; if not, write to the Free Software
|
|
* Foundation, Inc., 59 Temple Place, Suite 330, Boston,
|
|
* MA 02111-1307 USA
|
|
*
|
|
************************************************************************/
|
|
#ifndef __com_sun_star_rendering_XBufferController_idl__
|
|
#define __com_sun_star_rendering_XBufferController_idl__
|
|
|
|
#ifndef __com_sun_star_uno_XInterface_idl__
|
|
#include <com/sun/star/uno/XInterface.idl>
|
|
#endif
|
|
#ifndef __com_sun_star_lang_IllegalArgumentException_idl__
|
|
#include <com/sun/star/lang/IllegalArgumentException.idl>
|
|
#endif
|
|
|
|
module com { module sun { module star { module rendering {
|
|
|
|
/** Interface providing access to double/multi-buffer facilities of
|
|
screen devices.<p>
|
|
|
|
This interface provides methods to enable and control
|
|
double/multi-buffering facilities on screen devices.<p>
|
|
|
|
@since OOo 2.0.0
|
|
*/
|
|
interface XBufferController : ::com::sun::star::uno::XInterface
|
|
{
|
|
/** Create the given number of background buffers.<p>
|
|
|
|
There's one buffer implicitely available, which is the canvas
|
|
surface itself. Thus, calling <code>createBuffers(1)</code>
|
|
creates a double-buffered object.<p>
|
|
|
|
@param nBuffers
|
|
The number of background<buffers requested. Must be greater
|
|
than 0.
|
|
|
|
@return the number of actually generated buffers, which might
|
|
be between 0 (no double-buffering available) and nBuffers.
|
|
|
|
@throws com::sun::star::lang::IllegalArgumentException
|
|
if nBuffers is smaller than one.
|
|
*/
|
|
long createBuffers( [in] long nBuffers )
|
|
raises (com::sun::star::lang::IllegalArgumentException);
|
|
|
|
//-------------------------------------------------------------------------
|
|
|
|
/** Destroy all buffers generated via this object.
|
|
*/
|
|
void destroyBuffers();
|
|
|
|
//-------------------------------------------------------------------------
|
|
|
|
/** Switch the display to show the specified buffer.<p>
|
|
|
|
The method returns, when the switch is performed and the
|
|
selected buffer is shown on screen, or immediately when an
|
|
error occurs.<p>
|
|
|
|
@param nBuffer
|
|
Buffer to switch the display to. Valid range is from 0 to the
|
|
number returned by createBuffers()-1.
|
|
|
|
@return whether the switch was performed successfully.
|
|
|
|
@throws com::sun::star::lang::IllegalArgumentException
|
|
if nBuffer is outside the permissible range.
|
|
*/
|
|
boolean showBuffer( [in] long nBuffer )
|
|
raises (com::sun::star::lang::IllegalArgumentException);
|
|
|
|
//-------------------------------------------------------------------------
|
|
|
|
/** Switch the canvas to render into the buffer with the specified
|
|
index number.
|
|
|
|
@param nBuffer
|
|
Buffer to change the rendering to. Valid range is from 0 to
|
|
the number returned by createBuffers()-1.
|
|
|
|
@return true, if this switch was successful.
|
|
|
|
@throws com::sun::star::lang::IllegalArgumentException
|
|
if nBuffer is outside the permissible range.
|
|
*/
|
|
boolean renderToBuffer( [in] long nBuffer )
|
|
raises (com::sun::star::lang::IllegalArgumentException);
|
|
};
|
|
|
|
}; }; }; };
|
|
|
|
#endif
|