diff --git a/mozilla/gfx/src/gtk/nsAntiAliasedGlyph.h b/mozilla/gfx/src/gtk/nsAntiAliasedGlyph.h deleted file mode 100644 index dac44e743fa..00000000000 --- a/mozilla/gfx/src/gtk/nsAntiAliasedGlyph.h +++ /dev/null @@ -1,75 +0,0 @@ - -#ifndef NSANTIALIASEDGLYPH_H -#define NSANTIALIASEDGLYPH_H - -#include "nscore.h" - -struct _XImage; - -#ifndef MIN -#define MIN(a,b) (((a) <= (b)) ? (a) : (b)) -#endif -#ifndef MAX -#define MAX(a,b) (((a) >= (b)) ? (a) : (b)) -#endif - -#define GLYPH_LEFT_EDGE(m) MIN(0, (m)->lbearing) -#define GLYPH_RIGHT_EDGE(m) MAX((m)->width, (m)->rbearing) - -typedef struct _GlyphMetrics { - PRUint32 width; - PRUint32 height; - PRInt32 lbearing; - PRInt32 rbearing; - PRInt32 advance; - PRInt32 ascent; - PRInt32 descent; -} GlyphMetrics; - -// -// Grey scale image -// -class nsAntiAliasedGlyph { -public: - nsAntiAliasedGlyph(PRUint32 aWidth, PRUint32 aHeight, PRUint32 aBorder); - ~nsAntiAliasedGlyph(); - - PRBool Init(); // alloc a buffer - PRBool Init(PRUint8 *aBuffer, PRUint32 aBufferLen); // use this buffer - - inline PRUint32 GetBorder() { return mBorder; }; - inline PRUint8 *GetBuffer() { return mBuffer; }; - inline PRUint32 GetBufferLen() { return mBufferLen; }; - inline PRUint32 GetBufferWidth() { return mBufferWidth; }; - inline PRUint32 GetBufferHeight() { return mBufferHeight; }; - - inline PRInt32 GetAdvance() { return mAdvance; }; - inline PRInt32 GetLBearing() { return mLBearing; }; - inline PRInt32 GetRBearing() { return mRBearing; }; - inline PRUint32 GetWidth() { return mWidth; }; - inline PRUint32 GetHeight() { return mHeight; }; - - PRBool SetImage(XCharStruct *, _XImage *); - PRBool SetSize(GlyphMetrics *); - -protected: - PRUint32 mBorder; - PRInt32 mAscent; - PRInt32 mDescent; - PRInt32 mLBearing; - PRInt32 mRBearing; - PRInt32 mAdvance; - PRUint32 mWidth; - PRUint32 mHeight; - PRUint32 mMaxWidth; - PRUint32 mMaxHeight; - PRUint32 mBufferWidth; // mWidth may be smaller - PRUint32 mBufferHeight; // mHeight may be smaller - PRBool mOwnBuffer; - PRUint8 *mBuffer; - PRUint32 mBufferLen; -}; - - - -#endif /* NSANTIALIASEDGLYPH_H */ diff --git a/mozilla/gfx/src/gtk/nsX11AlphaBlend.h b/mozilla/gfx/src/gtk/nsX11AlphaBlend.h deleted file mode 100644 index 811c885ac18..00000000000 --- a/mozilla/gfx/src/gtk/nsX11AlphaBlend.h +++ /dev/null @@ -1,95 +0,0 @@ -/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: NPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Netscape Public License - * Version 1.1 (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.mozilla.org/NPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Netscape.com code. - * - * The Initial Developer of the Original Code is - * Netscape Communications Corporation. - * Portions created by the Initial Developer are Copyright (C) 2001 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Brian Stell - * - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the NPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the NPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -#ifndef nsX11AlphaBlend_h__ -#define nsX11AlphaBlend_h__ - -#include -#include "nsColor.h" - -class nsAntiAliasedGlyph; - -#ifdef DEBUG -void AADrawBox(XImage *, PRInt32, PRInt32, PRInt32, PRInt32, nscolor, PRUint8); -#endif - -void nsX11AlphaBlendFreeGlobals(void); -nsresult nsX11AlphaBlendInitGlobals(Display *dsp); - - -typedef void (*blendGlyph)(XImage *, nsAntiAliasedGlyph *, PRUint8*, - nscolor, int, int); -typedef void (*blendPixel)(XImage *, int, int, nscolor, int); -typedef nscolor (*pixelToNSColor)(unsigned long aPixel); - -/////////////////////////////////////////////////////////////////////// -// -// class nsX11AlphaBlend class definition -// -/////////////////////////////////////////////////////////////////////// -class nsX11AlphaBlend { -public: - inline static PRBool CanAntiAlias() { return sAvailable; }; - inline static blendPixel GetBlendPixel() { return sBlendPixel; }; - inline static blendGlyph GetBlendGlyph() { return sBlendMonoImage; }; - - static XImage* GetXImage(PRUint32 width, PRUint32 height); - static void FreeGlobals(); - static nsresult InitGlobals(Display *dsp); - static XImage* GetBackground(Display *, int, Drawable, - PRInt32, PRInt32, PRUint32, PRUint32); - static nscolor PixelToNSColor(unsigned long aPixel); - -protected: - static void ClearGlobals(); - static void ClearFunctions(); - static PRBool InitLibrary(Display *dsp); - - static PRBool sAvailable; - static PRUint16 sBitmapPad; - static PRUint16 sBitsPerPixel; - static blendGlyph sBlendMonoImage; - static blendPixel sBlendPixel; - static PRUint16 sBytesPerPixel; - static int sDepth; - static PRBool sInited; - static pixelToNSColor sPixelToNSColor; -}; - -#endif /* nsX11AlphaBlend_h__ */ diff --git a/mozilla/gfx/src/gtk/nsXFont.h b/mozilla/gfx/src/gtk/nsXFont.h deleted file mode 100644 index ba9f41d29b9..00000000000 --- a/mozilla/gfx/src/gtk/nsXFont.h +++ /dev/null @@ -1,67 +0,0 @@ -/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ -/* ex: set tabstop=8 softtabstop=2 shiftwidth=2 expandtab: */ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: NPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Netscape Public License - * Version 1.1 (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.mozilla.org/NPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is mozilla.org code. - * - * The Initial Developer of the Original Code is - * Netscape Communications Corporation. - * Portions created by the Initial Developer are Copyright (C) 2001 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Brian Stell - * - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the NPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the NPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -#ifndef nsXFont_h__ -#define nsXFont_h__ - -class nsXFont { -public: - virtual ~nsXFont() { }; - virtual void DrawText8(GdkDrawable *Drawable, GdkGC *GC, PRInt32, - PRInt32, const char *, PRUint32) = 0; - virtual void DrawText16(GdkDrawable *Drawable, GdkGC *GC, PRInt32, - PRInt32, const XChar2b *, PRUint32) = 0; - virtual PRBool GetXFontProperty(Atom, unsigned long *) = 0; - virtual XFontStruct *GetXFontStruct() = 0; - inline PRBool IsSingleByte() { return mIsSingleByte; }; - virtual PRBool LoadFont() = 0; - virtual void TextExtents8(const char *, PRUint32, PRInt32*, PRInt32*, - PRInt32*, PRInt32*, PRInt32*) = 0; - virtual void TextExtents16(const XChar2b *, PRUint32, PRInt32*, - PRInt32*, PRInt32*, PRInt32*, PRInt32*) =0; - virtual PRInt32 TextWidth8(const char *, PRUint32) = 0; - virtual PRInt32 TextWidth16(const XChar2b *, PRUint32) = 0; -//protected: - virtual void UnloadFont() = 0; -protected: - PRBool mIsSingleByte; -}; - -#endif /* nsXFont_h__ */ diff --git a/mozilla/gfx/src/gtk/nsXFontAAScaledBitmap.h b/mozilla/gfx/src/gtk/nsXFontAAScaledBitmap.h deleted file mode 100644 index 1c35950219f..00000000000 --- a/mozilla/gfx/src/gtk/nsXFontAAScaledBitmap.h +++ /dev/null @@ -1,127 +0,0 @@ -/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ -/* ex: set tabstop=8 softtabstop=2 shiftwidth=2 expandtab: */ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: NPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Netscape Public License - * Version 1.1 (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.mozilla.org/NPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is mozilla.org code. - * - * The Initial Developer of the Original Code is - * Netscape Communications Corporation. - * Portions created by the Initial Developer are Copyright (C) 2001 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Brian Stell - * - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the NPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the NPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -#ifndef nsXFontAAScaledBitmap_h__ -#define nsXFontAAScaledBitmap_h__ - -#include -#include - -#include -#include "nspr.h" -#include "nsXFont.h" -#include "nsAntiAliasedGlyph.h" - -extern PRUint8 gAASBDarkTextMinValue; -extern double gAASBDarkTextGain; -extern PRUint8 gAASBLightTextMinValue; -extern double gAASBLightTextGain; - - -#define SCALED_SIZE(x) (PRInt32)(rint(((double)(x))*mRatio)) -class nsHashtable; - -class nsXFontAAScaledBitmap : public nsXFont { -public: - // we use PRUint16 instead of PRUint32 for the final two arguments in this - // constructor to work around a GCC 2.95[.3] bug which would otherwise cause - // these parameters to be corrupted in the callee. n.b. at the time of - // writing the only caller is passing PRUint16 values anyway (and within - // the constructor we go on toassign a parameter to a PRUint16-sized member - // variable) so semantically nothing is lost. - nsXFontAAScaledBitmap(Display *aDisplay, int aScreen, GdkFont *, - PRUint16, PRUint16); - ~nsXFontAAScaledBitmap(); - - void DrawText8(GdkDrawable *Drawable, GdkGC *GC, PRInt32, PRInt32, - const char *, PRUint32); - void DrawText16(GdkDrawable *Drawable, GdkGC *GC, PRInt32, PRInt32, - const XChar2b *, PRUint32); - PRBool GetXFontProperty(Atom, unsigned long *); - XFontStruct *GetXFontStruct(); - PRBool LoadFont(); - void TextExtents8(const char *, PRUint32, PRInt32*, PRInt32*, - PRInt32*, PRInt32*, PRInt32*); - void TextExtents16(const XChar2b *, PRUint32, PRInt32*, PRInt32*, - PRInt32*, PRInt32*, PRInt32*); - PRInt32 TextWidth8(const char *, PRUint32); - PRInt32 TextWidth16(const XChar2b *, PRUint32); - void UnloadFont(); - -public: - static PRBool InitGlobals(Display *aDisplay, int aScreen); - static void FreeGlobals(); - -protected: - void DrawText8or16(GdkDrawable *Drawable, GdkGC *GC, PRInt32, - PRInt32, void *, PRUint32); - void TextExtents8or16(void *, PRUint32, PRInt32*, PRInt32*, - PRInt32*, PRInt32*, PRInt32*); - PRBool GetScaledGreyImage(const char *, nsAntiAliasedGlyph **); -#ifdef DEBUG - void dump_XImage_blue_data(XImage *ximage); -#endif - static PRBool DisplayIsLocal(Display *); - -protected: - PRBool mAlreadyLoaded; - Display *mDisplay; - GC mForegroundGC; - GdkFont *mGdkFont; - nsHashtable* mGlyphHash; - double mRatio; - XFontStruct mScaledFontInfo; - GlyphMetrics mScaledMax; - int mScreen; - Pixmap mUnscaledBitmap; - XFontStruct *mUnscaledFontInfo; - GlyphMetrics mUnscaledMax; - PRUint16 mUnscaledSize; - -// class globals -protected: - static Display *sDisplay; - static GC sBackgroundGC; // used to clear the pixmaps - // before drawing the glyph - static PRUint8 sWeightedScaleDarkText[256]; - static PRUint8 sWeightedScaleLightText[256]; -}; - -#endif /* nsXFontAAScaledBitmap_h__ */ diff --git a/mozilla/gfx/src/gtk/nsXFontNormal.h b/mozilla/gfx/src/gtk/nsXFontNormal.h deleted file mode 100644 index 1a315d85657..00000000000 --- a/mozilla/gfx/src/gtk/nsXFontNormal.h +++ /dev/null @@ -1,74 +0,0 @@ -/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ -/* ex: set tabstop=8 softtabstop=2 shiftwidth=2 expandtab: */ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: NPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Netscape Public License - * Version 1.1 (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.mozilla.org/NPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is mozilla.org code. - * - * The Initial Developer of the Original Code is - * Netscape Communications Corporation. - * Portions created by the Initial Developer are Copyright (C) 2001 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Brian Stell - * - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the NPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the NPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -#ifndef nsXFontNormal_h__ -#define nsXFontNormal_h__ - -#include -#include - -#include -#include "nspr.h" -#include "nsXFont.h" - -class nsXFontNormal : public nsXFont { -public: - nsXFontNormal(GdkFont *); - ~nsXFontNormal(); - - void DrawText8(GdkDrawable *Drawable, GdkGC *GC, PRInt32, PRInt32, - const char *, PRUint32); - void DrawText16(GdkDrawable *Drawable, GdkGC *GC, PRInt32, PRInt32, - const XChar2b *, PRUint32); - PRBool GetXFontProperty(Atom, unsigned long *); - XFontStruct *GetXFontStruct(); - PRBool LoadFont(); - void TextExtents8(const char *, PRUint32, PRInt32*, PRInt32*, - PRInt32*, PRInt32*, PRInt32*); - void TextExtents16(const XChar2b *, PRUint32, PRInt32*, PRInt32*, - PRInt32*, PRInt32*, PRInt32*); - PRInt32 TextWidth8(const char *, PRUint32); - PRInt32 TextWidth16(const XChar2b *, PRUint32); - void UnloadFont(); -protected: - GdkFont *mGdkFont; -}; - -#endif /* nsXFontNormal_h__ */