blob: d1b3dd813ca23f498b7f8c28023c68044d1bb90e [file] [log] [blame]
/**************************************************************
*
* 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
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*
*************************************************************/
#ifndef __com_sun_star_awt_XDevice_idl__
#define __com_sun_star_awt_XDevice_idl__
#ifndef __com_sun_star_uno_XInterface_idl__
#include <com/sun/star/uno/XInterface.idl>
#endif
#ifndef __com_sun_star_awt_DeviceInfo_idl__
#include <com/sun/star/awt/DeviceInfo.idl>
#endif
#ifndef __com_sun_star_awt_FontDescriptor_idl__
#include <com/sun/star/awt/FontDescriptor.idl>
#endif
//=============================================================================
module com { module sun { module star { module awt {
published interface XGraphics;
published interface XFont;
published interface XBitmap;
published interface XDisplayBitmap;
//=============================================================================
/** provides information about a graphical output device and
offers a factory for the <em>graphics</em> which provides write
operations on the device.
*/
published interface XDevice: com::sun::star::uno::XInterface
{
//-------------------------------------------------------------------------
/** creates a new graphics whose output operation is directed to this
device.
*/
XGraphics createGraphics();
//-------------------------------------------------------------------------
/** creates a new device which is compatible with this one.
<p>If the device does not support the GETBITS device capability,
this method returns <NULL/>.</p>
*/
XDevice createDevice( [in] long nWidth,
[in] long nHeight );
//-------------------------------------------------------------------------
/** returns information about the device.
*/
com::sun::star::awt::DeviceInfo getInfo();
//-------------------------------------------------------------------------
/** returns the list of available font descriptors.
*/
sequence<FontDescriptor> getFontDescriptors();
//-------------------------------------------------------------------------
/** returns information about a font offered by this device.
@returns the font of this device.
@param aDescriptor
specifies the description of a font.
The unit of measure is pixel for this device.
*/
com::sun::star::awt::XFont getFont( [in] FontDescriptor aDescriptor );
//-------------------------------------------------------------------------
/** creates a bitmap with the current device depth.
<p>If the specified area does not lie entirely in the device, the bits
outside are not specified.</p>
*/
XBitmap createBitmap( [in] long nX,
[in] long nY,
[in] long nWidth,
[in] long nHeight );
//-------------------------------------------------------------------------
/** creates a device compatible bitmap.
<p>The data of the bitmap is in process memory instead of in the device,
so that the output operation is fast.</p>
*/
XDisplayBitmap createDisplayBitmap( [in] XBitmap Bitmap );
};
//=============================================================================
}; }; }; };
#endif