summaryrefslogtreecommitdiff
path: root/vcl
diff options
context:
space:
mode:
authorIvo Hinkelmann <ihi@openoffice.org>2006-11-14 14:24:59 +0000
committerIvo Hinkelmann <ihi@openoffice.org>2006-11-14 14:24:59 +0000
commit4a1969f7884678efc76f462f6f80bb31e90b0a34 (patch)
treedd65cc90a308d93c80adcd81421015b142fa8818 /vcl
parent1d3accd1dd3d545564770061f5ac6a3e87788ada (diff)
INTEGRATION: CWS aw024 (1.10.32); FILE MERGED
2006/11/13 10:58:38 aw 1.10.32.4: changes after resync 2006/11/10 05:48:18 aw 1.10.32.3: RESYNC: (1.10-1.11); FILE MERGED 2006/08/07 12:54:48 aw 1.10.32.2: adaptions after resync: unxsols4: no SAL_PRIVATE in vcl 2006/07/20 16:03:34 thb 1.10.32.1: #i66849# Join from CWS xralpha; added XRENDER_LINK feature back again; renamed drawTransparentBitmap() to drawMaskedBitmap() and made private nonvirtual; added drawAlphaRect()
Diffstat (limited to 'vcl')
-rw-r--r--vcl/unx/source/gdi/gcach_xpeer.hxx42
1 files changed, 19 insertions, 23 deletions
diff --git a/vcl/unx/source/gdi/gcach_xpeer.hxx b/vcl/unx/source/gdi/gcach_xpeer.hxx
index 10fd4f391a20..b94dba0e4f81 100644
--- a/vcl/unx/source/gdi/gcach_xpeer.hxx
+++ b/vcl/unx/source/gdi/gcach_xpeer.hxx
@@ -4,9 +4,9 @@
*
* $RCSfile: gcach_xpeer.hxx,v $
*
- * $Revision: 1.11 $
+ * $Revision: 1.12 $
*
- * last change: $Author: kz $ $Date: 2006-10-06 10:05:49 $
+ * last change: $Author: ihi $ $Date: 2006-11-14 15:24:59 $
*
* The Contents of this file are made available subject to
* the terms of GNU Lesser General Public License Version 2.1.
@@ -42,6 +42,11 @@
#include <X11/extensions/Xrender.h>
#include <postx.h>
+#ifndef _VCL_DLLAPI_H
+#include "dllapi.h"
+#endif
+
+
class SalDisplay;
struct MultiScreenGlyph;
@@ -52,8 +57,6 @@ public:
X11GlyphPeer();
virtual ~X11GlyphPeer();
- void SetDisplay( const SalDisplay& );
-
Pixmap GetPixmap( ServerFont&, int nGlyphIndex, int nScreen );
const RawBitmap* GetRawBitmap( ServerFont&, int nGlyphIndex );
bool ForcedAntialiasing( const ServerFont&, int nScreen ) const;
@@ -62,6 +65,8 @@ public:
Glyph GetGlyphId( ServerFont&, int nGlyphIndex );
protected:
+ void InitAntialiasing();
+
virtual void RemovingFont( ServerFont& );
virtual void RemovingGlyph( ServerFont&, GlyphData&, int nGlyphIndex );
@@ -81,29 +86,20 @@ private:
int mnMaxScreens;
int mnDefaultScreen;
int mnExtByteCount;
+ RawBitmap maRawBitmap;
sal_uInt32 mnForcedAA;
sal_uInt32 mnUsingXRender;
+};
- int mnRenderVersion;
- XRenderPictFormat* mpGlyphFormat;
- RawBitmap maRawBitmap;
-
-#ifndef XRENDER_LINK
+class X11GlyphCache : public GlyphCache
+{
public:
- XRenderPictFormat* (*pXRenderFindFormat)(Display*,unsigned long,XRenderPictFormat*,int);
- XRenderPictFormat* (*pXRenderFindVisualFormat)(Display*,Visual*);
- Bool (*pXRenderQueryExtension)(Display*,int*,int*);
- void (*pXRenderQueryVersion)(Display*,int*,int*);
- GlyphSet (*pXRenderCreateGlyphSet)(Display*,XRenderPictFormat*);
- void (*pXRenderFreeGlyphSet)(Display*,GlyphSet);
- void (*pXRenderAddGlyphs)(Display*,GlyphSet,Glyph*,XGlyphInfo*,int,char*,int);
- void (*pXRenderFreeGlyphs)(Display*,GlyphSet,Glyph*,int);
- void (*pXRenderCompositeString32)(Display*,int,Picture,Picture,XRenderPictFormat*,GlyphSet,int,int,int,int,unsigned*,int);
- Picture (*pXRenderCreatePicture)(Display*,Drawable,XRenderPictFormat*,unsigned long,XRenderPictureAttributes*);
- void (*pXRenderSetPictureClipRegion)(Display*,Picture,XLIB_Region);
- void (*pXRenderFreePicture)(Display*,Picture);
- void (*pXRenderFillRectangle)(Display*,int,Picture,_Xconst XRenderColor*,int,int,unsigned int,unsigned int);
-#endif
+ X11GlyphPeer& GetPeer() { return reinterpret_cast<X11GlyphPeer&>( mrPeer ); }
+static X11GlyphCache& GetInstance();
+static void KillInstance();
+
+private:
+ X11GlyphCache( X11GlyphPeer& );
};
#endif // _SV_GCACH_XPEER_HXX