20#ifndef INCLUDED_VCL_VIRDEV_HXX
21#define INCLUDED_VCL_VIRDEV_HXX
35 friend class ::OutputDevice;
58 SAL_DLLPRIVATE
bool InnerImplSetOutputSizePixel(
const Size& rNewSize,
bool bErase,
60 SAL_DLLPRIVATE
bool ImplSetOutputSizePixel(
const Size& rNewSize,
bool bErase,
61 sal_uInt8* pBuffer,
bool bAlphaMaskTransparent =
false );
70 SAL_DLLPRIVATE
void ImplFillOpaqueRectangle(
const tools::Rectangle& rRect );
121 virtual void dispose()
override;
125 virtual void EnableRTL(
bool bEnable =
true )
override;
127 bool SetOutputSizePixel(
const Size& rNewSize,
bool bErase =
true,
bool bAlphaMaskTransparent =
false );
128 bool SetOutputSizePixelScaleOffsetAndLOKBuffer(
const Size& rNewSize,
130 const Point& rNewOffset,
134 {
return SetOutputSizePixel(
LogicToPixel( rNewSize ) ); }
136 void SetReferenceDevice( RefDevMode );
138 void Compat_ZeroExtleadBug();
140 void SetReferenceDevice( sal_Int32 i_nDPIX, sal_Int32 i_nDPIY );
149 SAL_DLLPRIVATE
void ImplSetReferenceDevice( RefDevMode, sal_Int32 i_nDPIX, sal_Int32 i_nDPIY );
struct _cairo_surface cairo_surface_t
Base class used mainly for the LibreOffice Desktop class.
Some things multiple-inherit from VclAbstractDialog and OutputDevice, so we need to use virtual inher...
virtual void ReleaseGraphics(bool bRelease=true)=0
Release the graphics device, and remove it from the graphics device list.
virtual tools::Long GetFontExtLeading() const
virtual bool CanEnableNativeWidget() const
Determine if native widgets can be enabled.
OutputDevice & operator=(const OutputDevice &)=delete
virtual void dispose() override
virtual bool AcquireGraphics() const =0
Acquire a graphics device that the output device uses to draw on.
virtual sal_uInt16 GetBitCount() const
virtual bool UsePolyPolygonForComplexGradient()=0
SAL_WARN_UNUSED_RESULT Point LogicToPixel(const Point &rLogicPt) const
virtual void EnableRTL(bool bEnable=true)
friend class VirtualDevice
virtual bool IsVirtual() const
A non-visible drawable/buffer (e.g. an X11 Pixmap).
VclPtr< VirtualDevice > mpPrev
bool IsScreenComp() const override
VirtualDevice(DeviceFormat eFormat=DeviceFormat::WITHOUT_ALPHA)
Create a virtual device of size 1x1.
bool SetOutputSize(const Size &rNewSize)
friend cairo_surface_t * get_underlying_cairo_surface(const VirtualDevice &)
std::unique_ptr< SalVirtualDevice > mpVirDev
bool mbForceZeroExtleadBug
const DeviceFormat meFormatAndAlpha
VclPtr< VirtualDevice > mpNext
VirtualDevice(const OutputDevice &rCompDev, DeviceFormat eFormat=DeviceFormat::WITHOUT_ALPHA)
Create a virtual device of size 1x1.
VirtualDevice(const VirtualDevice &)=delete