/* -*- 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_awt_XDevice_idl__ #define __com_sun_star_awt_XDevice_idl__ #include #include #include 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 graphics 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.

If the device does not support the GETBITS device capability, this method returns `NULL`.

*/ 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 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.

If the specified area does not lie entirely in the device, the bits outside are not specified.

*/ XBitmap createBitmap( [in] long nX, [in] long nY, [in] long nWidth, [in] long nHeight ); /** creates a device compatible bitmap.

The data of the bitmap is in process memory instead of in the device, so that the output operation is fast.

*/ XDisplayBitmap createDisplayBitmap( [in] XBitmap Bitmap ); }; }; }; }; }; #endif /* vim:set shiftwidth=4 softtabstop=4 expandtab: */