Kaydet (Commit) 0cd6947e authored tarafından Tor Lillqvist's avatar Tor Lillqvist

Improve indentation consistency

Change-Id: I27a692be8d1c3aa10bdf46883fd502491aff4674
üst 40f92a3c
......@@ -51,12 +51,11 @@ public:
virtual void SetHasAlpha( bool ) { }
virtual void Destroy() = 0;
virtual Size GetSize() const = 0;
virtual sal_uInt16 GetBitCount() const = 0;
virtual sal_uInt16 GetBitCount() const = 0;
virtual BitmapBuffer* AcquireBuffer( bool bReadOnly ) = 0;
virtual void ReleaseBuffer( BitmapBuffer* pBuffer, bool bReadOnly ) = 0;
virtual bool GetSystemData( BitmapSystemData& rData ) = 0;
};
#endif
......
......@@ -24,10 +24,9 @@
#include <vcl/dllapi.h>
#ifdef __cplusplus
#include <vcl/ptrstyle.hxx>
#endif // __cplusplus
#include <salwtype.hxx>
#include <salgeom.hxx>
#include <tools/gen.hxx>
......@@ -43,15 +42,11 @@ class SalBitmap;
class SalMenu;
class Window;
struct SalFrameState;
struct SalInputContext;
struct SystemEnvData;
// -----------------
// - SalFrameTypes -
// -----------------
// SalFrame types
#define SAL_FRAME_TOTOP_RESTOREWHENMIN ((sal_uInt16)0x0001)
#define SAL_FRAME_TOTOP_FOREGROUNDTASK ((sal_uInt16)0x0002)
#define SAL_FRAME_TOTOP_GRABFOCUS ((sal_uInt16)0x0004)
......@@ -60,17 +55,13 @@ struct SystemEnvData;
#define SAL_FRAME_ENDEXTTEXTINPUT_COMPLETE ((sal_uInt16)0x0001)
#define SAL_FRAME_ENDEXTTEXTINPUT_CANCEL ((sal_uInt16)0x0002)
// -----------------
// - SalFrameStyle -
// -----------------
// SalFrame styles
#define SAL_FRAME_STYLE_DEFAULT ((sal_uLong)0x00000001)
#define SAL_FRAME_STYLE_MOVEABLE ((sal_uLong)0x00000002)
#define SAL_FRAME_STYLE_SIZEABLE ((sal_uLong)0x00000004)
#define SAL_FRAME_STYLE_CLOSEABLE ((sal_uLong)0x00000008)
// no shadow effect on WindowsXP
// no shadow effect on Windows XP
#define SAL_FRAME_STYLE_NOSHADOW ((sal_uLong)0x00000010)
// indicate tooltip windows, so they can always be topmost
#define SAL_FRAME_STYLE_TOOLTIP ((sal_uLong)0x00000020)
......@@ -93,18 +84,13 @@ struct SystemEnvData;
// the window containing the intro bitmap, aka splashscreen
#define SAL_FRAME_STYLE_INTRO ((sal_uLong)0x80000000)
// ----------------------------------------
// - extended frame style -
// - (sal equivalent to extended WinBits) -
// ----------------------------------------
typedef sal_uInt64 SalExtStyle;
#define SAL_FRAME_EXT_STYLE_DOCUMENT SalExtStyle(0x00000001)
#define SAL_FRAME_EXT_STYLE_DOCMODIFIED SalExtStyle(0x00000002)
// ------------------------
// - Flags for SetPosSize -
// ------------------------
// Flags for SetPosSize
#define SAL_FRAME_POSSIZE_X ((sal_uInt16)0x0001)
#define SAL_FRAME_POSSIZE_Y ((sal_uInt16)0x0002)
#define SAL_FRAME_POSSIZE_WIDTH ((sal_uInt16)0x0004)
......@@ -122,87 +108,89 @@ class VCL_PLUGIN_PUBLIC SalFrame : public vcl::DeletionNotifier
// the VCL window corresponding to this frame
Window* m_pWindow;
SALFRAMEPROC m_pProc;
public: // public for Sal Implementation
SalFrame() : m_pWindow( NULL ), m_pProc( NULL ) {}
virtual ~SalFrame();
public: // public for Sal Implementation
SalFrameGeometry maGeometry;
public:
// SalGraphics or NULL, but two Graphics for all SalFrames
// must be returned
virtual SalGraphics* GetGraphics() = 0;
virtual void ReleaseGraphics( SalGraphics* pGraphics ) = 0;
virtual SalGraphics* GetGraphics() = 0;
virtual void ReleaseGraphics( SalGraphics* pGraphics ) = 0;
// Event must be destroyed, when Frame is destroyed
// When Event is called, SalInstance::Yield() must be returned
virtual sal_Bool PostEvent( void* pData ) = 0;
virtual sal_Bool PostEvent( void* pData ) = 0;
virtual void SetTitle( const OUString& rTitle ) = 0;
virtual void SetIcon( sal_uInt16 nIcon ) = 0;
virtual void SetRepresentedURL( const OUString& );
virtual void SetMenu( SalMenu *pSalMenu ) = 0;
virtual void DrawMenuBar() = 0;
virtual void SetTitle( const OUString& rTitle ) = 0;
virtual void SetIcon( sal_uInt16 nIcon ) = 0;
virtual void SetRepresentedURL( const OUString& );
virtual void SetMenu( SalMenu *pSalMenu ) = 0;
virtual void DrawMenuBar() = 0;
virtual void SetExtendedFrameStyle( SalExtStyle nExtStyle ) = 0;
virtual void SetExtendedFrameStyle( SalExtStyle nExtStyle ) = 0;
// Before the window is visible, a resize event
// must be sent with the correct size
virtual void Show( sal_Bool bVisible, sal_Bool bNoActivate = sal_False ) = 0;
virtual void Enable( sal_Bool bEnable ) = 0;
virtual void Show( sal_Bool bVisible, sal_Bool bNoActivate = sal_False ) = 0;
virtual void Enable( sal_Bool bEnable ) = 0;
// Set ClientSize and Center the Window to the desktop
// and send/post a resize message
virtual void SetMinClientSize( long nWidth, long nHeight ) = 0;
virtual void SetMaxClientSize( long nWidth, long nHeight ) = 0;
virtual void SetPosSize( long nX, long nY, long nWidth, long nHeight, sal_uInt16 nFlags ) = 0;
virtual void GetClientSize( long& rWidth, long& rHeight ) = 0;
virtual void GetWorkArea( Rectangle& rRect ) = 0;
virtual SalFrame* GetParent() const = 0;
virtual void SetMinClientSize( long nWidth, long nHeight ) = 0;
virtual void SetMaxClientSize( long nWidth, long nHeight ) = 0;
virtual void SetPosSize( long nX, long nY, long nWidth, long nHeight, sal_uInt16 nFlags ) = 0;
virtual void GetClientSize( long& rWidth, long& rHeight ) = 0;
virtual void GetWorkArea( Rectangle& rRect ) = 0;
virtual SalFrame* GetParent() const = 0;
// Note: x will be mirrored at parent if UI mirroring is active
SalFrameGeometry GetGeometry();
const SalFrameGeometry& GetUnmirroredGeometry() const { return maGeometry; }
virtual void SetWindowState( const SalFrameState* pState ) = 0;
virtual sal_Bool GetWindowState( SalFrameState* pState ) = 0;
virtual void ShowFullScreen( sal_Bool bFullScreen, sal_Int32 nDisplay ) = 0;
SalFrameGeometry GetGeometry();
const SalFrameGeometry& GetUnmirroredGeometry() const { return maGeometry; }
virtual void SetWindowState( const SalFrameState* pState ) = 0;
virtual sal_Bool GetWindowState( SalFrameState* pState ) = 0;
virtual void ShowFullScreen( sal_Bool bFullScreen, sal_Int32 nDisplay ) = 0;
// Enable/Disable ScreenSaver, SystemAgents, ...
virtual void StartPresentation( sal_Bool bStart ) = 0;
virtual void StartPresentation( sal_Bool bStart ) = 0;
// Show Window over all other Windows
virtual void SetAlwaysOnTop( sal_Bool bOnTop ) = 0;
virtual void SetAlwaysOnTop( sal_Bool bOnTop ) = 0;
// Window to top and grab focus
virtual void ToTop( sal_uInt16 nFlags ) = 0;
virtual void ToTop( sal_uInt16 nFlags ) = 0;
// this function can call with the same
// pointer style
virtual void SetPointer( PointerStyle ePointerStyle ) = 0;
virtual void CaptureMouse( sal_Bool bMouse ) = 0;
virtual void SetPointerPos( long nX, long nY ) = 0;
virtual void SetPointer( PointerStyle ePointerStyle ) = 0;
virtual void CaptureMouse( sal_Bool bMouse ) = 0;
virtual void SetPointerPos( long nX, long nY ) = 0;
// flush output buffer
virtual void Flush( void) = 0;
virtual void Flush( const Rectangle& );
virtual void Flush( void) = 0;
virtual void Flush( const Rectangle& );
// flush output buffer, wait till outstanding operations are done
virtual void Sync() = 0;
virtual void Sync() = 0;
virtual void SetInputContext( SalInputContext* pContext ) = 0;
virtual void EndExtTextInput( sal_uInt16 nFlags ) = 0;
virtual void SetInputContext( SalInputContext* pContext ) = 0;
virtual void EndExtTextInput( sal_uInt16 nFlags ) = 0;
virtual OUString GetKeyName( sal_uInt16 nKeyCode ) = 0;
virtual OUString GetKeyName( sal_uInt16 nKeyCode ) = 0;
// returns in 'rKeyCode' the single keycode that translates to the given unicode when using a keyboard layout of language 'aLangType'
// returns sal_False if no mapping exists or function not supported
// this is required for advanced menu support
virtual sal_Bool MapUnicodeToKeyCode( sal_Unicode aUnicode, LanguageType aLangType, KeyCode& rKeyCode ) = 0;
virtual sal_Bool MapUnicodeToKeyCode( sal_Unicode aUnicode, LanguageType aLangType, KeyCode& rKeyCode ) = 0;
// returns the input language used for the last key stroke
// may be LANGUAGE_DONTKNOW if not supported by the OS
virtual LanguageType GetInputLanguage() = 0;
virtual LanguageType GetInputLanguage() = 0;
virtual void UpdateSettings( AllSettings& rSettings ) = 0;
virtual void UpdateSettings( AllSettings& rSettings ) = 0;
// returns system data (most prominent: window handle)
virtual const SystemEnvData* GetSystemData() const = 0;
virtual const SystemEnvData*
GetSystemData() const = 0;
// get current modifier, button mask and mouse position
struct SalPointerState
......@@ -211,52 +199,53 @@ public:
Point maPos; // in frame coordinates
};
virtual SalPointerState GetPointerState() = 0;
virtual SalPointerState GetPointerState() = 0;
struct SalIndicatorState
{
sal_uInt16 mnState;
};
virtual SalIndicatorState GetIndicatorState() = 0;
virtual SalIndicatorState GetIndicatorState() = 0;
virtual void SimulateKeyPress( sal_uInt16 nKeyCode ) = 0;
virtual void SimulateKeyPress( sal_uInt16 nKeyCode ) = 0;
// set new parent window
virtual void SetParent( SalFrame* pNewParent ) = 0;
virtual void SetParent( SalFrame* pNewParent ) = 0;
// reparent window to act as a plugin; implementation
// may choose to use a new system window inetrnally
// return false to indicate failure
virtual bool SetPluginParent( SystemParentData* pNewParent ) = 0;
virtual bool SetPluginParent( SystemParentData* pNewParent ) = 0;
// move the frame to a new screen
virtual void SetScreenNumber( unsigned int nScreen ) = 0;
virtual void SetScreenNumber( unsigned int nScreen ) = 0;
virtual void SetApplicationID( const OUString &rApplicationID) = 0;
virtual void SetApplicationID( const OUString &rApplicationID) = 0;
// shaped system windows
// set clip region to none (-> rectangular windows, normal state)
virtual void ResetClipRegion() = 0;
virtual void ResetClipRegion() = 0;
// start setting the clipregion consisting of nRects rectangles
virtual void BeginSetClipRegion( sal_uLong nRects ) = 0;
virtual void BeginSetClipRegion( sal_uLong nRects ) = 0;
// add a rectangle to the clip region
virtual void UnionClipRegion( long nX, long nY, long nWidth, long nHeight ) = 0;
virtual void UnionClipRegion( long nX, long nY, long nWidth, long nHeight ) = 0;
// done setting up the clipregion
virtual void EndSetClipRegion() = 0;
virtual void EndSetClipRegion() = 0;
// Callbacks (indepent part in vcl/source/window/winproc.cxx)
// for default message handling return 0
void SetCallback( Window* pWindow, SALFRAMEPROC pProc )
{ m_pWindow = pWindow; m_pProc = pProc; }
void SetCallback( Window* pWindow, SALFRAMEPROC pProc )
{ m_pWindow = pWindow; m_pProc = pProc; }
// returns the instance set
Window* GetWindow() const { return m_pWindow; }
Window* GetWindow() const
{ return m_pWindow; }
// Call the callback set; this sometimes necessary for implementation classes
// that should not know more than necessary about the SalFrame implementation
// (e.g. input methods, printer update handlers).
long CallCallback( sal_uInt16 nEvent, const void* pEvent ) const
{ return m_pProc ? m_pProc( m_pWindow, const_cast<SalFrame*>(this), nEvent, pEvent ) : 0; }
long CallCallback( sal_uInt16 nEvent, const void* pEvent ) const
{ return m_pProc ? m_pProc( m_pWindow, const_cast<SalFrame*>(this), nEvent, pEvent ) : 0; }
};
#endif // __cplusplus
......
......@@ -69,10 +69,6 @@ namespace basegfx {
#define SAL_COPYAREA_WINDOWINVALIDATE ((sal_uInt16)0x0001)
// -------------------
// - common typedefs -
// -------------------
typedef sal_Unicode sal_Ucs; // TODO: use sal_UCS4 instead of sal_Unicode
typedef std::map< sal_Ucs, sal_Int32 > Ucs2SIntMap;
typedef std::map< sal_Ucs, sal_uInt32 > Ucs2UIntMap;
......@@ -97,70 +93,69 @@ protected:
bool m_bAntiAliasB2DDraw;
public:
// get/set AA
void setAntiAliasB2DDraw(bool bNew) { m_bAntiAliasB2DDraw = bNew; }
bool getAntiAliasB2DDraw() const { return m_bAntiAliasB2DDraw; }
void setAntiAliasB2DDraw(bool bNew) { m_bAntiAliasB2DDraw = bNew; }
bool getAntiAliasB2DDraw() const { return m_bAntiAliasB2DDraw; }
SalGraphics();
virtual ~SalGraphics();
protected:
virtual bool setClipRegion( const Region& ) = 0;
virtual bool setClipRegion( const Region& ) = 0;
// draw --> LineColor and FillColor and RasterOp and ClipRegion
virtual void drawPixel( long nX, long nY ) = 0;
virtual void drawPixel( long nX, long nY, SalColor nSalColor ) = 0;
virtual void drawLine( long nX1, long nY1, long nX2, long nY2 ) = 0;
virtual void drawRect( long nX, long nY, long nWidth, long nHeight ) = 0;
virtual void drawPolyLine( sal_uLong nPoints, const SalPoint* pPtAry ) = 0;
virtual void drawPolygon( sal_uLong nPoints, const SalPoint* pPtAry ) = 0;
virtual void drawPolyPolygon( sal_uInt32 nPoly, const sal_uInt32* pPoints, PCONSTSALPOINT* pPtAry ) = 0;
virtual bool drawPolyPolygon( const ::basegfx::B2DPolyPolygon&, double fTransparency ) = 0;
virtual bool drawPolyLine(
const ::basegfx::B2DPolygon&,
double fTransparency,
const ::basegfx::B2DVector& rLineWidths,
basegfx::B2DLineJoin,
com::sun::star::drawing::LineCap) = 0;
virtual sal_Bool drawPolyLineBezier( sal_uLong nPoints, const SalPoint* pPtAry, const sal_uInt8* pFlgAry ) = 0;
virtual sal_Bool drawPolygonBezier( sal_uLong nPoints, const SalPoint* pPtAry, const sal_uInt8* pFlgAry ) = 0;
virtual sal_Bool drawPolyPolygonBezier( sal_uInt32 nPoly, const sal_uInt32* pPoints, const SalPoint* const* pPtAry, const sal_uInt8* const* pFlgAry ) = 0;
virtual void drawPixel( long nX, long nY ) = 0;
virtual void drawPixel( long nX, long nY, SalColor nSalColor ) = 0;
virtual void drawLine( long nX1, long nY1, long nX2, long nY2 ) = 0;
virtual void drawRect( long nX, long nY, long nWidth, long nHeight ) = 0;
virtual void drawPolyLine( sal_uLong nPoints, const SalPoint* pPtAry ) = 0;
virtual void drawPolygon( sal_uLong nPoints, const SalPoint* pPtAry ) = 0;
virtual void drawPolyPolygon( sal_uInt32 nPoly, const sal_uInt32* pPoints, PCONSTSALPOINT* pPtAry ) = 0;
virtual bool drawPolyPolygon( const ::basegfx::B2DPolyPolygon&, double fTransparency ) = 0;
virtual bool drawPolyLine( const ::basegfx::B2DPolygon&,
double fTransparency,
const ::basegfx::B2DVector& rLineWidths,
basegfx::B2DLineJoin,
com::sun::star::drawing::LineCap) = 0;
virtual sal_Bool drawPolyLineBezier( sal_uLong nPoints, const SalPoint* pPtAry, const sal_uInt8* pFlgAry ) = 0;
virtual sal_Bool drawPolygonBezier( sal_uLong nPoints, const SalPoint* pPtAry, const sal_uInt8* pFlgAry ) = 0;
virtual sal_Bool drawPolyPolygonBezier( sal_uInt32 nPoly, const sal_uInt32* pPoints, const SalPoint* const* pPtAry, const sal_uInt8* const* pFlgAry ) = 0;
// CopyArea --> No RasterOp, but ClipRegion
virtual void copyArea( long nDestX, long nDestY, long nSrcX, long nSrcY, long nSrcWidth,
long nSrcHeight, sal_uInt16 nFlags ) = 0;
virtual void copyArea( long nDestX, long nDestY, long nSrcX, long nSrcY, long nSrcWidth,
long nSrcHeight, sal_uInt16 nFlags ) = 0;
// CopyBits and DrawBitmap --> RasterOp and ClipRegion
// CopyBits() --> pSrcGraphics == NULL, then CopyBits on same Graphics
virtual void copyBits( const SalTwoRect* pPosAry, SalGraphics* pSrcGraphics ) = 0;
virtual void drawBitmap( const SalTwoRect* pPosAry, const SalBitmap& rSalBitmap ) = 0;
virtual void drawBitmap( const SalTwoRect* pPosAry,
const SalBitmap& rSalBitmap,
SalColor nTransparentColor ) = 0;
virtual void drawBitmap( const SalTwoRect* pPosAry,
const SalBitmap& rSalBitmap,
const SalBitmap& rMaskBitmap ) = 0;
virtual void drawMask( const SalTwoRect* pPosAry,
const SalBitmap& rSalBitmap,
SalColor nMaskColor ) = 0;
virtual SalBitmap* getBitmap( long nX, long nY, long nWidth, long nHeight ) = 0;
virtual SalColor getPixel( long nX, long nY ) = 0;
virtual void copyBits( const SalTwoRect* pPosAry, SalGraphics* pSrcGraphics ) = 0;
virtual void drawBitmap( const SalTwoRect* pPosAry, const SalBitmap& rSalBitmap ) = 0;
virtual void drawBitmap( const SalTwoRect* pPosAry,
const SalBitmap& rSalBitmap,
SalColor nTransparentColor ) = 0;
virtual void drawBitmap( const SalTwoRect* pPosAry,
const SalBitmap& rSalBitmap,
const SalBitmap& rMaskBitmap ) = 0;
virtual void drawMask( const SalTwoRect* pPosAry,
const SalBitmap& rSalBitmap,
SalColor nMaskColor ) = 0;
virtual SalBitmap* getBitmap( long nX, long nY, long nWidth, long nHeight ) = 0;
virtual SalColor getPixel( long nX, long nY ) = 0;
// invert --> ClipRegion (only Windows or VirDevs)
virtual void invert( long nX, long nY, long nWidth, long nHeight, SalInvert nFlags) = 0;
virtual void invert( sal_uLong nPoints, const SalPoint* pPtAry, SalInvert nFlags ) = 0;
virtual void invert( long nX, long nY, long nWidth, long nHeight, SalInvert nFlags) = 0;
virtual void invert( sal_uLong nPoints, const SalPoint* pPtAry, SalInvert nFlags ) = 0;
virtual sal_Bool drawEPS( long nX, long nY, long nWidth, long nHeight, void* pPtr, sal_uLong nSize ) = 0;
// native widget rendering methods that require mirroring
virtual sal_Bool hitTestNativeControl( ControlType nType, ControlPart nPart, const Rectangle& rControlRegion,
const Point& aPos, sal_Bool& rIsInside );
const Point& aPos, sal_Bool& rIsInside );
virtual sal_Bool drawNativeControl( ControlType nType, ControlPart nPart, const Rectangle& rControlRegion,
ControlState nState, const ImplControlValue& aValue,
const rtl::OUString& aCaption );
ControlState nState, const ImplControlValue& aValue,
const rtl::OUString& aCaption );
virtual sal_Bool getNativeControlRegion( ControlType nType, ControlPart nPart, const Rectangle& rControlRegion, ControlState nState,
const ImplControlValue& aValue, const rtl::OUString& aCaption,
Rectangle &rNativeBoundingRegion, Rectangle &rNativeContentRegion );
const ImplControlValue& aValue, const rtl::OUString& aCaption,
Rectangle &rNativeBoundingRegion, Rectangle &rNativeContentRegion );
/** Render bitmap with alpha channel
......@@ -174,24 +169,26 @@ protected:
otherwise. In this case, clients should try to emulate alpha
compositing themselves
*/
virtual bool drawAlphaBitmap( const SalTwoRect&,
const SalBitmap& rSourceBitmap,
const SalBitmap& rAlphaBitmap ) = 0;
virtual bool drawAlphaBitmap( const SalTwoRect&,
const SalBitmap& rSourceBitmap,
const SalBitmap& rAlphaBitmap ) = 0;
/** Render solid rectangle with given transparency
@param nTransparency
Transparency value (0-255) to use. 0 blits and opaque, 255 a
fully transparent rectangle
*/
virtual bool drawAlphaRect( long nX, long nY, long nWidth, long nHeight, sal_uInt8 nTransparency ) = 0;
virtual bool drawAlphaRect( long nX, long nY, long nWidth, long nHeight, sal_uInt8 nTransparency ) = 0;
public:
// public SalGraphics methods, the interface to the independent vcl part
// get device resolution
virtual void GetResolution( sal_Int32& rDPIX, sal_Int32& rDPIY ) = 0;
// get the depth of the device
virtual sal_uInt16 GetBitCount() const = 0;
virtual sal_uInt16 GetBitCount() const = 0;
// get the width of the device
virtual long GetGraphicsWidth() const = 0;
......@@ -199,44 +196,63 @@ public:
virtual void ResetClipRegion() = 0;
// set the line color to transparent (= don't draw lines)
virtual void SetLineColor() = 0;
// set the line color to a specific color
virtual void SetLineColor( SalColor nSalColor ) = 0;
// set the fill color to transparent (= don't fill)
virtual void SetFillColor() = 0;
// set the fill color to a specific color, shapes will be
// filled accordingly
virtual void SetFillColor( SalColor nSalColor ) = 0;
// enable/disable XOR drawing
virtual void SetXORMode( bool bSet, bool bInvertOnly ) = 0;
// set line color for raster operations
virtual void SetROPLineColor( SalROPColor nROPColor ) = 0;
// set fill color for raster operations
virtual void SetROPFillColor( SalROPColor nROPColor ) = 0;
// set the text color to a specific color
virtual void SetTextColor( SalColor nSalColor ) = 0;
// set the font
virtual sal_uInt16 SetFont( FontSelectPattern*, int nFallbackLevel ) = 0;
virtual sal_uInt16 SetFont( FontSelectPattern*, int nFallbackLevel ) = 0;
// release the fonts
void ReleaseFonts() { SetFont( NULL, 0 ); }
void ReleaseFonts() { SetFont( NULL, 0 ); }
// get the current font's metrics
virtual void GetFontMetric( ImplFontMetricData*, int nFallbackLevel = 0 ) = 0;
// get kernign pairs of the current font
// get kerning pairs of the current font
// return only PairCount if (pKernPairs == NULL)
virtual sal_uLong GetKernPairs( sal_uLong nMaxPairCount, ImplKernPairData* ) = 0;
virtual sal_uLong GetKernPairs( sal_uLong nMaxPairCount, ImplKernPairData* ) = 0;
// get the repertoire of the current font
virtual const ImplFontCharMap* GetImplFontCharMap() const = 0;
virtual const ImplFontCharMap*
GetImplFontCharMap() const = 0;
// get the layout capabilities of the current font
virtual bool GetImplFontCapabilities(vcl::FontCapabilities &rFontCapabilities) const = 0;
virtual bool GetImplFontCapabilities(vcl::FontCapabilities &rFontCapabilities) const = 0;
// graphics must fill supplied font list
virtual void GetDevFontList( ImplDevFontList* ) = 0;
// graphics must drop any cached font info
virtual void ClearDevFontCache() = 0;
virtual void ClearDevFontCache() = 0;
// graphics should call ImplAddDevFontSubstitute on supplied
// OutputDevice for all its device specific preferred font substitutions
virtual void GetDevFontSubstList( OutputDevice* ) = 0;
virtual bool AddTempDevFont( ImplDevFontList*, const rtl::OUString& rFileURL, const rtl::OUString& rFontName ) = 0;
// CreateFontSubset: a method to get a subset of glyhps of a font
// inside a new valid font file
// returns sal_True if creation of subset was successful
......@@ -249,14 +265,13 @@ public:
// rInfo: additional outgoing information
// implementation note: encoding 0 with glyph id 0 should be added implicitly
// as "undefined character"
virtual sal_Bool CreateFontSubset( const rtl::OUString& rToFile,
virtual sal_Bool CreateFontSubset( const rtl::OUString& rToFile,
const PhysicalFontFace* pFont,
sal_Int32* pGlyphIDs,
sal_uInt8* pEncoding,
sal_Int32* pWidths,
int nGlyphs,
FontSubsetInfo& rInfo // out parameter
) = 0;
FontSubsetInfo& rInfo ) = 0;
// GetFontEncodingVector: a method to get the encoding map Unicode
// to font encoded character; this is only used for type1 fonts and
......@@ -265,7 +280,8 @@ public:
// glyphs with only a name) exist it is set to the corresponding
// map for non encoded glyphs; the encoding vector contains -1
// as encoding for these cases
virtual const Ucs2SIntMap* GetFontEncodingVector( const PhysicalFontFace*, const Ucs2OStrMap** ppNonEncoded ) = 0;
virtual const Ucs2SIntMap*
GetFontEncodingVector( const PhysicalFontFace*, const Ucs2OStrMap** ppNonEncoded ) = 0;
// GetEmbedFontData: gets the font data for a font marked
// embeddable by GetDevFontList or NULL in case of error
......@@ -276,12 +292,12 @@ public:
// pWidths MUST support at least 256 members;
// rInfo: additional outgoing information
// pDataLen: out parameter, contains the byte length of the returned buffer
virtual const void* GetEmbedFontData( const PhysicalFontFace* pFont,
const sal_Ucs* pUnicodes,
sal_Int32* pWidths,
FontSubsetInfo& rInfo,
long* pDataLen ) = 0;
// frees the font data again
virtual const void* GetEmbedFontData( const PhysicalFontFace* pFont,
const sal_Ucs* pUnicodes,
sal_Int32* pWidths,
FontSubsetInfo& rInfo,
long* pDataLen ) = 0;
// free the font data again
virtual void FreeEmbedFontData( const void* pData, long nDataLen ) = 0;
// get the same widths as in CreateFontSubset and GetEmbedFontData
......@@ -293,11 +309,12 @@ public:
Int32Vector& rWidths,
Ucs2UIntMap& rUnicodeEnc ) = 0;
virtual sal_Bool GetGlyphBoundRect( sal_GlyphId nIndex, Rectangle& ) = 0;
virtual sal_Bool GetGlyphOutline( sal_GlyphId nIndex, basegfx::B2DPolyPolygon& ) = 0;
virtual sal_Bool GetGlyphBoundRect( sal_GlyphId nIndex, Rectangle& ) = 0;
virtual sal_Bool GetGlyphOutline( sal_GlyphId nIndex, basegfx::B2DPolyPolygon& ) = 0;
virtual SalLayout* GetTextLayout( ImplLayoutArgs&, int nFallbackLevel ) = 0;
virtual void DrawServerFontLayout( const ServerFontLayout& ) = 0;
virtual SalLayout* GetTextLayout( ImplLayoutArgs&, int nFallbackLevel ) = 0;
virtual void DrawServerFontLayout( const ServerFontLayout& ) = 0;
/** Filter text from DrawText commands in a device specific manner
<p>
This function allows a device (or rather the corresponding SalGraphics
......@@ -329,7 +346,12 @@ public:
true: a substitution has taken place and rNewText rLen, rCutStart and rCutStop have been filled accordingly
false: no substitution has taken place, rNewText, rLen, rCutStart, rCutStop remain unchanged
*/
virtual bool filterText( const rtl::OUString& rOrigText, rtl::OUString& rNewText, xub_StrLen nIndex, xub_StrLen& rLen, xub_StrLen& rCutStart, xub_StrLen& rCutStop );
virtual bool filterText( const rtl::OUString& rOrigText,
rtl::OUString& rNewText,
xub_StrLen nIndex,
xub_StrLen& rLen,
xub_StrLen& rCutStart,
xub_StrLen& rCutStop );
virtual bool supportsOperation( OutDevSupportType ) const = 0;
......@@ -339,7 +361,7 @@ public:
void mirror( long& nX, const OutputDevice *pOutDev, bool bBack = false ) const;
void mirror( long& nX, long& nWidth, const OutputDevice *pOutDev, bool bBack = false ) const;
sal_Bool mirror( sal_uInt32 nPoints, const SalPoint *pPtAry, SalPoint *pPtAry2, const OutputDevice *pOutDev, bool bBack = false ) const;
sal_Bool mirror( sal_uInt32 nPoints, const SalPoint *pPtAry, SalPoint *pPtAry2, const OutputDevice *pOutDev, bool bBack = false ) const;
void mirror( Rectangle& rRect, const OutputDevice*, bool bBack = false ) const;
void mirror( Region& rRgn, const OutputDevice *pOutDev, bool bBack = false ) const;
void mirror( ImplControlValue&, const OutputDevice*, bool bBack = false ) const;
......@@ -364,13 +386,12 @@ public:
const OutputDevice *pOutDev );
bool DrawPolyPolygon( const ::basegfx::B2DPolyPolygon&, double fTransparency, const OutputDevice* );
bool DrawPolyLine(
const basegfx::B2DPolygon& i_rPolygon,
double i_fTransparency,
const basegfx::B2DVector& i_rLineWidth,
basegfx::B2DLineJoin i_eLineJoin,
com::sun::star::drawing::LineCap i_eLineCap,
const OutputDevice* i_pOutDev);
bool DrawPolyLine( const basegfx::B2DPolygon& i_rPolygon,
double i_fTransparency,
const basegfx::B2DVector& i_rLineWidth,
basegfx::B2DLineJoin i_eLineJoin,
com::sun::star::drawing::LineCap i_eLineCap,
const OutputDevice* i_pOutDev);
sal_Bool DrawPolyLineBezier( sal_uLong nPoints,
const SalPoint* pPtAry,
......@@ -387,12 +408,9 @@ public:
const OutputDevice *pOutDev );
// CopyArea --> No RasterOp, but ClipRegion
void CopyArea( long nDestX,
long nDestY,
long nSrcX,
long nSrcY,
long nSrcWidth,
long nSrcHeight,
void CopyArea( long nDestX, long nDestY,
long nSrcX, long nSrcY,
long nSrcWidth, long nSrcHeight,
sal_uInt16 nFlags,
const OutputDevice *pOutDev );
......@@ -415,60 +433,75 @@ public:
SalColor nMaskColor,
const OutputDevice *pOutDev );
SalBitmap* GetBitmap( long nX, long nY, long nWidth, long nHeight, const OutputDevice *pOutDev );
SalColor GetPixel( long nX, long nY, const OutputDevice *pOutDev );
SalBitmap* GetBitmap( long nX, long nY,
long nWidth, long nHeight,
const OutputDevice *pOutDev );
SalColor GetPixel( long nX, long nY,
const OutputDevice *pOutDev );
// invert --> ClipRegion (only Windows)
void Invert( long nX, long nY, long nWidth, long nHeight, SalInvert nFlags, const OutputDevice *pOutDev );
void Invert( sal_uLong nPoints, const SalPoint* pPtAry, SalInvert nFlags, const OutputDevice *pOutDev );
void Invert( long nX, long nY,
long nWidth, long nHeight,
SalInvert nFlags,
const OutputDevice *pOutDev );
void Invert( sal_uLong nPoints,
const SalPoint* pPtAry,
SalInvert nFlags,
const OutputDevice *pOutDev );
sal_Bool DrawEPS( long nX, long nY, long nWidth, long nHeight, void* pPtr, sal_uLong nSize, const OutputDevice *pOutDev );
sal_Bool DrawEPS( long nX, long nY,
long nWidth, long nHeight,
void* pPtr,
sal_uLong nSize,
const OutputDevice *pOutDev );
//-------------------------------------
// Native Widget Rendering functions
//-------------------------------------
// native widget rendering functions
// Query the platform layer for control support
virtual sal_Bool IsNativeControlSupported( ControlType nType, ControlPart nPart );
virtual sal_Bool IsNativeControlSupported( ControlType nType, ControlPart nPart );
// Query the native control to determine if it was acted upon
sal_Bool HitTestNativeControl( ControlType nType,
ControlPart nPart,
const Rectangle& rControlRegion,
const Point& aPos,
sal_Bool& rIsInside,
const OutputDevice *pOutDev );
sal_Bool HitTestNativeControl( ControlType nType,
ControlPart nPart,
const Rectangle& rControlRegion,
const Point& aPos,
sal_Bool& rIsInside,
const OutputDevice *pOutDev );
// Request rendering of a particular control and/or part
sal_Bool DrawNativeControl( ControlType nType,
ControlPart nPart,
const Rectangle& rControlRegion,
ControlState nState,
const ImplControlValue& aValue,
const rtl::OUString& aCaption,
const OutputDevice *pOutDev );
sal_Bool DrawNativeControl( ControlType nType,
ControlPart nPart,
const Rectangle& rControlRegion,
ControlState nState,
const ImplControlValue& aValue,
const rtl::OUString& aCaption,
const OutputDevice *pOutDev );
// Query the native control's actual drawing region (including adornment)
sal_Bool GetNativeControlRegion( ControlType nType,
ControlPart nPart,
const Rectangle& rControlRegion,
ControlState nState,
const ImplControlValue& aValue,
const rtl::OUString& aCaption,
Rectangle &rNativeBoundingRegion,
Rectangle &rNativeContentRegion,
const OutputDevice *pOutDev );
bool DrawAlphaBitmap( const SalTwoRect&,
const SalBitmap& rSourceBitmap,
const SalBitmap& rAlphaBitmap,
const OutputDevice *pOutDev );
bool DrawAlphaRect( long nX, long nY, long nWidth, long nHeight,
sal_uInt8 nTransparency, const OutputDevice *pOutDev );
virtual SystemGraphicsData GetGraphicsData() const = 0;
virtual SystemFontData GetSysFontData( int nFallbacklevel ) const = 0;
sal_Bool GetNativeControlRegion( ControlType nType,
ControlPart nPart,
const Rectangle& rControlRegion,
ControlState nState,
const ImplControlValue& aValue,
const rtl::OUString& aCaption,
Rectangle &rNativeBoundingRegion,
Rectangle &rNativeContentRegion,
const OutputDevice *pOutDev );
bool DrawAlphaBitmap( const SalTwoRect&,
const SalBitmap& rSourceBitmap,
const SalBitmap& rAlphaBitmap,
const OutputDevice *pOutDev );
bool DrawAlphaRect( long nX, long nY, long nWidth, long nHeight,
sal_uInt8 nTransparency, const OutputDevice *pOutDev );
virtual SystemGraphicsData
GetGraphicsData() const = 0;
virtual SystemFontData GetSysFontData( int nFallbacklevel ) const = 0;
};
#endif // _SV_SALGDI_HXX
......
......@@ -73,20 +73,21 @@ public:
// DisplayName for Unix ???
virtual SalFrame* CreateChildFrame( SystemParentData* pParent, sal_uLong nStyle ) = 0;
virtual SalFrame* CreateFrame( SalFrame* pParent, sal_uLong nStyle ) = 0;
virtual void DestroyFrame( SalFrame* pFrame ) = 0;
virtual void DestroyFrame( SalFrame* pFrame ) = 0;
// Object (System Child Window)
virtual SalObject* CreateObject( SalFrame* pParent, SystemWindowData* pWindowData, sal_Bool bShow = sal_True ) = 0;
virtual void DestroyObject( SalObject* pObject ) = 0;
virtual SalObject* CreateObject( SalFrame* pParent, SystemWindowData* pWindowData, sal_Bool bShow = sal_True ) = 0;
virtual void DestroyObject( SalObject* pObject ) = 0;
// VirtualDevice
// nDX and nDY in Pixel
// nBitCount: 0 == Default(=as window) / 1 == Mono
// nDX and nDY in pixels
// nBitCount: 0 == default(=as window) / 1 == mono
// pData allows for using a system dependent graphics or device context
virtual SalVirtualDevice* CreateVirtualDevice( SalGraphics* pGraphics,
long nDX, long nDY,
sal_uInt16 nBitCount, const SystemGraphicsData *pData = NULL ) = 0;
virtual void DestroyVirtualDevice( SalVirtualDevice* pDevice ) = 0;
virtual SalVirtualDevice*
CreateVirtualDevice( SalGraphics* pGraphics,
long nDX, long nDY,
sal_uInt16 nBitCount, const SystemGraphicsData *pData = NULL ) = 0;
virtual void DestroyVirtualDevice( SalVirtualDevice* pDevice ) = 0;
// Printer
// pSetupData->mpDriverData can be 0
......@@ -94,38 +95,40 @@ public:
// JobSetup
virtual SalInfoPrinter* CreateInfoPrinter( SalPrinterQueueInfo* pQueueInfo,
ImplJobSetup* pSetupData ) = 0;
virtual void DestroyInfoPrinter( SalInfoPrinter* pPrinter ) = 0;
virtual void DestroyInfoPrinter( SalInfoPrinter* pPrinter ) = 0;
virtual SalPrinter* CreatePrinter( SalInfoPrinter* pInfoPrinter ) = 0;
virtual void DestroyPrinter( SalPrinter* pPrinter ) = 0;
virtual void DestroyPrinter( SalPrinter* pPrinter ) = 0;
virtual void GetPrinterQueueInfo( ImplPrnQueueList* pList ) = 0;
virtual void GetPrinterQueueState( SalPrinterQueueInfo* pInfo ) = 0;
virtual void DeletePrinterQueueInfo( SalPrinterQueueInfo* pInfo ) = 0;
virtual OUString GetDefaultPrinter() = 0;
virtual void GetPrinterQueueInfo( ImplPrnQueueList* pList ) = 0;
virtual void GetPrinterQueueState( SalPrinterQueueInfo* pInfo ) = 0;
virtual void DeletePrinterQueueInfo( SalPrinterQueueInfo* pInfo ) = 0;
virtual OUString GetDefaultPrinter() = 0;
// SalTimer
virtual SalTimer* CreateSalTimer() = 0;
virtual SalTimer* CreateSalTimer() = 0;
// SalI18NImeStatus
virtual SalI18NImeStatus* CreateI18NImeStatus() = 0;
virtual SalI18NImeStatus*
CreateI18NImeStatus() = 0;
// SalSystem
virtual SalSystem* CreateSalSystem() = 0;
virtual SalSystem* CreateSalSystem() = 0;
// SalBitmap
virtual SalBitmap* CreateSalBitmap() = 0;
virtual SalBitmap* CreateSalBitmap() = 0;
// YieldMutex
virtual osl::SolarMutex* GetYieldMutex() = 0;
virtual sal_uLong ReleaseYieldMutex() = 0;
virtual void AcquireYieldMutex( sal_uLong nCount ) = 0;
virtual osl::SolarMutex*
GetYieldMutex() = 0;
virtual sal_uLong ReleaseYieldMutex() = 0;
virtual void AcquireYieldMutex( sal_uLong nCount ) = 0;
// return true, if yield mutex is owned by this thread, else false
virtual bool CheckYieldMutex() = 0;
virtual bool CheckYieldMutex() = 0;
// wait next event and dispatch
// must returned by UserEvent (SalFrame::PostEvent)
// and timer
virtual void Yield( bool bWait, bool bHandleAllCurrentEvents ) = 0;
virtual bool AnyInput( sal_uInt16 nType ) = 0;
virtual void Yield( bool bWait, bool bHandleAllCurrentEvents ) = 0;
virtual bool AnyInput( sal_uInt16 nType ) = 0;
// Menues
// menus
virtual SalMenu* CreateMenu( sal_Bool bMenuBar, Menu* pMenu );
virtual void DestroyMenu( SalMenu* pMenu);
virtual SalMenuItem* CreateMenuItem( const SalItemParams* pItemData );
......@@ -136,43 +139,47 @@ public:
// methods for XDisplayConnection
void SetEventCallback( rtl::Reference< vcl::DisplayConnectionDispatch > const & pInstance )
{ m_pEventInst = pInstance; }
bool CallEventCallback( void* pEvent, int nBytes )
{ return m_pEventInst.is() && m_pEventInst->dispatchEvent( pEvent, nBytes ); }
bool CallErrorCallback( void* pEvent, int nBytes )
{ return m_pEventInst.is() && m_pEventInst->dispatchErrorEvent( pEvent, nBytes ); }
void SetEventCallback( rtl::Reference< vcl::DisplayConnectionDispatch > const & pInstance )
{ m_pEventInst = pInstance; }
bool CallEventCallback( void* pEvent, int nBytes )
{ return m_pEventInst.is() && m_pEventInst->dispatchEvent( pEvent, nBytes ); }
bool CallErrorCallback( void* pEvent, int nBytes )
{ return m_pEventInst.is() && m_pEventInst->dispatchErrorEvent( pEvent, nBytes ); }
enum ConnectionIdentifierType { AsciiCString, Blob };
virtual void* GetConnectionIdentifier( ConnectionIdentifierType& rReturnedType, int& rReturnedBytes ) = 0;
virtual void* GetConnectionIdentifier( ConnectionIdentifierType& rReturnedType, int& rReturnedBytes ) = 0;
// this is a vehicle for PrintFontManager to bridge the gap between vcl and libvclplug_*
// this is only necessary because PrintFontManager is an exported vcl API and therefore
// needs to be in libvcl while libvclplug_* do not contain exported C++ API
virtual void FillFontPathList( std::list< rtl::OString >& o_rFontPaths );
virtual void FillFontPathList( std::list< rtl::OString >& o_rFontPaths );
// dtrans implementation
virtual com::sun::star::uno::Reference< com::sun::star::uno::XInterface >
CreateClipboard( const com::sun::star::uno::Sequence< com::sun::star::uno::Any >& i_rArguments );
virtual com::sun::star::uno::Reference< com::sun::star::uno::XInterface > CreateDragSource();
virtual com::sun::star::uno::Reference< com::sun::star::uno::XInterface > CreateDropTarget();
virtual void AddToRecentDocumentList(const OUString& rFileUrl, const OUString& rMimeType) = 0;
CreateClipboard( const com::sun::star::uno::Sequence< com::sun::star::uno::Any >& i_rArguments );
virtual com::sun::star::uno::Reference< com::sun::star::uno::XInterface >
CreateDragSource();
virtual com::sun::star::uno::Reference< com::sun::star::uno::XInterface >
CreateDropTarget();
virtual void AddToRecentDocumentList(const OUString& rFileUrl, const OUString& rMimeType) = 0;
virtual bool hasNativeFileSelection() const { return false; }
virtual bool hasNativeFileSelection() const { return false; }
virtual com::sun::star::uno::Reference< com::sun::star::ui::dialogs::XFilePicker2 >
createFilePicker( const com::sun::star::uno::Reference<
com::sun::star::uno::XComponentContext >& )
{ return com::sun::star::uno::Reference< com::sun::star::ui::dialogs::XFilePicker2 >(); }
createFilePicker( const com::sun::star::uno::Reference<
com::sun::star::uno::XComponentContext >& )
{ return com::sun::star::uno::Reference< com::sun::star::ui::dialogs::XFilePicker2 >(); }
virtual com::sun::star::uno::Reference< com::sun::star::ui::dialogs::XFolderPicker2 >
createFolderPicker( const com::sun::star::uno::Reference<
com::sun::star::uno::XComponentContext >& )
{ return com::sun::star::uno::Reference< com::sun::star::ui::dialogs::XFolderPicker2 >(); }
createFolderPicker( const com::sun::star::uno::Reference< com::sun::star::uno::XComponentContext >& )
{ return com::sun::star::uno::Reference< com::sun::star::ui::dialogs::XFolderPicker2 >(); }
// callbacks for printer updates
virtual void updatePrinterUpdate() {}
virtual void jobStartedPrinterUpdate() {}
virtual void jobEndedPrinterUpdate() {}
virtual void updatePrinterUpdate() {}
virtual void jobStartedPrinterUpdate() {}
virtual void jobEndedPrinterUpdate() {}
};
// called from SVMain
......
......@@ -39,10 +39,7 @@ class PhysicalFontFace;
#define MAX_FALLBACK 16
// ----------------
// - LayoutOption -
// ----------------
// Layout options
#define SAL_LAYOUT_BIDI_RTL 0x0001
#define SAL_LAYOUT_BIDI_STRONG 0x0002
#define SAL_LAYOUT_RIGHT_ALIGN 0x0004
......@@ -238,14 +235,14 @@ public:
virtual long FillDXArray( sal_Int32* pDXArray ) const;
virtual void GetCaretPositions( int nArraySize, sal_Int32* pCaretXArray ) const;
virtual int GetNextGlyphs( int nLen, sal_GlyphId* pGlyphIdxAry, Point& rPos,
int&, sal_Int32* pGlyphAdvAry, int* pCharPosAry ) const;
int&, sal_Int32* pGlyphAdvAry, int* pCharPosAry ) const;
virtual bool GetOutline( SalGraphics&, ::basegfx::B2DPolyPolygonVector& ) const;
// used only by OutputDevice::ImplLayout, TODO: make friend
explicit MultiSalLayout( SalLayout& rBaseLayout,
const PhysicalFontFace* pBaseFont = NULL );
const PhysicalFontFace* pBaseFont = NULL );
virtual bool AddFallback( SalLayout& rFallbackLayout,
ImplLayoutRuns&, const PhysicalFontFace* pFallbackFont );
ImplLayoutRuns&, const PhysicalFontFace* pFallbackFont );
virtual bool LayoutText( ImplLayoutArgs& );
virtual void AdjustLayout( ImplLayoutArgs& );
virtual void InitFont() const;
......
......@@ -24,8 +24,7 @@
#include <vcl/dllapi.h>
#include <rtl/ustring.hxx>
/* Button combinations for ShowNativeMessageBox
*/
// Button combinations for ShowNativeMessageBox
const int SALSYSTEM_SHOWNATIVEMSGBOX_BTNCOMBI_OK = 0;
const int SALSYSTEM_SHOWNATIVEMSGBOX_BTNCOMBI_OK_CANCEL = 1;
const int SALSYSTEM_SHOWNATIVEMSGBOX_BTNCOMBI_ABORT_RETRY_IGNORE = 2;
......@@ -33,8 +32,7 @@ const int SALSYSTEM_SHOWNATIVEMSGBOX_BTNCOMBI_YES_NO_CANCEL = 3;
const int SALSYSTEM_SHOWNATIVEMSGBOX_BTNCOMBI_YES_NO = 4;
const int SALSYSTEM_SHOWNATIVEMSGBOX_BTNCOMBI_RETRY_CANCEL = 5;
/* Button identifier for ShowNativeMessageBox
*/
// Button identifier for ShowNativeMessageBox
const int SALSYSTEM_SHOWNATIVEMSGBOX_BTN_OK = 1;
const int SALSYSTEM_SHOWNATIVEMSGBOX_BTN_CANCEL = 2;
const int SALSYSTEM_SHOWNATIVEMSGBOX_BTN_ABORT = 3;
......@@ -43,7 +41,6 @@ const int SALSYSTEM_SHOWNATIVEMSGBOX_BTN_IGNORE = 5;
const int SALSYSTEM_SHOWNATIVEMSGBOX_BTN_YES = 6;
const int SALSYSTEM_SHOWNATIVEMSGBOX_BTN_NO = 7;
class VCL_PLUGIN_PUBLIC SalSystem
{
public:
......
......@@ -34,21 +34,21 @@ public: // public for Sal Implementation
// SalGraphics or NULL, but two Graphics for all SalVirtualDevices
// must be returned
virtual SalGraphics* GetGraphics() = 0;
virtual void ReleaseGraphics( SalGraphics* pGraphics ) = 0;
virtual SalGraphics* GetGraphics() = 0;
virtual void ReleaseGraphics( SalGraphics* pGraphics ) = 0;
// Set new size, without saving the old contents
virtual sal_Bool SetSize( long nNewDX, long nNewDY ) = 0;
virtual sal_Bool SetSize( long nNewDX, long nNewDY ) = 0;
// Set new size using a buffer at the given address
virtual sal_Bool SetSizeUsingBuffer( long nNewDX, long nNewDY, const basebmp::RawMemorySharedArray & /* pBuffer */ )
{
// Only the headless virtual device has an implementation that uses pBuffer.
return SetSize( nNewDX, nNewDY );
}
virtual sal_Bool SetSizeUsingBuffer( long nNewDX, long nNewDY, const basebmp::RawMemorySharedArray & /* pBuffer */ )
{
// Only the headless virtual device has an implementation that uses pBuffer.
return SetSize( nNewDX, nNewDY );
}
/// Get actual VDev size in pixel
virtual void GetSize( long& rWidth, long& rHeight ) = 0;
virtual void GetSize( long& rWidth, long& rHeight ) = 0;
};
#endif // _SV_SALVD_HXX
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment