summaryrefslogtreecommitdiffstats
path: root/khtml/test_regression_fontoverload.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'khtml/test_regression_fontoverload.cpp')
-rw-r--r--khtml/test_regression_fontoverload.cpp384
1 files changed, 0 insertions, 384 deletions
diff --git a/khtml/test_regression_fontoverload.cpp b/khtml/test_regression_fontoverload.cpp
deleted file mode 100644
index 2cea9f5a4..000000000
--- a/khtml/test_regression_fontoverload.cpp
+++ /dev/null
@@ -1,384 +0,0 @@
-/**
- * This file is part of the KDE project
- *
- * Copyright (C) 2003 Stephan Kulow (coolo@kde.org)
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- *
- */
-
-#include "ecma/kjs_proxy.h"
-#define QT_NO_XRANDR 1
-#define QT_NO_XFTFREETYPE 1
-#include <private/qfontengine_p.h>
-#include <tqfontdatabase.h>
-#include <tqfont.h>
-#include <tqpainter.h>
-#include "khtml_settings.h"
-#include <tqwidget.h>
-#include <assert.h>
-
-class QFakeFontEngine : public QFontEngineXLFD
-{
- bool ahem;
- int pixS;
-public:
- QFakeFontEngine( XFontStruct *fs, const char *name, int size );
- ~QFakeFontEngine();
-
- int leading() const
- {
- if (ahem)
- return 0;
- else
- return QFontEngineXLFD::leading();
- }
-
- void draw( TQPainter *p, int x, int y, const QTextEngine *engine, const QScriptItem *si, int textFlags )
- {
- //Sometimes X misrounds stuff for larger ahem, so we have to do it ourselves.
- if (!ahem || (si->analysis.bidiLevel & 1) ) //We're fine if not ahem or bidi.
- return QFontEngineXLFD::draw(p, x, y, engine, si, textFlags);
-
- glyph_t* gl = engine->glyphs(si);
- for (int pos = 0; pos < si->num_glyphs; ++pos)
- {
- switch (gl[pos])
- {
- case ' ':
- break;
- case 'p':
- //Below the baseline, including it
- p->fillRect(x, y, pixS, descent() + 1, p->pen().color());
- break;
- case 0xC9:
- //Above the baseline
- p->fillRect(x, y - ascent(), pixS, ascent(), p->pen().color());
- break;
- default:
- //Whole block
- p->fillRect(x, y - ascent(), pixS, pixS, p->pen().color());
- }
- x += pixS;
- }
- }
-
-#if 0
- virtual glyph_metrics_t boundingBox( const glyph_t *glyphs,
- const advance_t *advances, const qoffset_t *offsets, int numGlyphs );
- glyph_metrics_t boundingBox( glyph_t glyph );
-
- QFontEngine::Error stringToCMap( const TQChar *, int len, glyph_t *glyphs, advance_t *advances, int *nglyphs, bool ) const;
-
- int ascent() const;
- int descent() const;
- int leading() const;
- int maxCharWidth() const;
- int minLeftBearing() const { return 0; }
- int minRightBearing() const { return 0; }
- int cmap() const;
-#endif
- bool canRender( const TQChar *string, int len );
-};
-
-QFakeFontEngine::QFakeFontEngine( XFontStruct *fs, const char *name, int size )
- : QFontEngineXLFD( fs, name, 0)
-{
- pixS = size;
- ahem = TQString::fromLatin1(name).contains("ahem");
-}
-
-QFakeFontEngine::~QFakeFontEngine()
-{
-}
-#if 0
-QFontEngine::Error QFakeFontEngine::stringToCMap( const TQChar *str, int len, glyph_t *glyphs, advance_t *advances, int *nglyphs, bool mirrored) const
-{
- QFontEngine::Error ret = QFontEngineXLFD::stringToCMap( str, len, glyphs, advances, nglyphs, mirrored );
-
- if ( ret != NoError )
- return ret;
-
- *nglyphs = len;
-
- if ( advances ) {
- for ( int i = 0; i < len; i++ )
- *(advances++) = _size;
- }
- return NoError;
-}
-
-glyph_metrics_t QFakeFontEngine::boundingBox( const glyph_t *, const advance_t *, const qoffset_t *, int numGlyphs )
-{
- glyph_metrics_t overall;
- overall.x = overall.y = 0;
- overall.width = _size*numGlyphs;
- overall.height = _size;
- overall.xoff = overall.width;
- overall.yoff = 0;
- return overall;
-}
-
-glyph_metrics_t QFakeFontEngine::boundingBox( glyph_t )
-{
- return glyph_metrics_t( 0, _size, _size, _size, _size, 0 );
-}
-
-int QFakeFontEngine::ascent() const
-{
- return _size;
-}
-
-int QFakeFontEngine::descent() const
-{
- return 0;
-}
-
-int QFakeFontEngine::leading() const
-{
- // the original uses double and creates quite random results depending
- // on the compiler flags
- int l = ( _size * 15 + 50) / 100;
- // only valid on i386 without -O2 assert(l == int(tqRound(_size * 0.15)));
- return (l > 0) ? l : 1;
-}
-
-int QFakeFontEngine::maxCharWidth() const
-{
- return _size;
-}
-
-int QFakeFontEngine::cmap() const
-{
- return -1;
-}
-
-#endif
-bool QFakeFontEngine::canRender( const TQChar *, int )
-{
- return true;
-}
-
-static TQString courier_pickxlfd( int pixelsize, bool italic, bool bold )
-{
- if ( pixelsize >= 24 )
- pixelsize = 24;
- else if ( pixelsize >= 18 )
- pixelsize = 18;
- else if ( pixelsize >= 12 )
- pixelsize = 12;
- else
- pixelsize = 10;
-
- return TQString( "-adobe-courier-%1-%2-normal--%3-*-75-75-m-*-iso10646-1" ).arg( bold ? "bold" : "medium" ).arg( italic ? "o" : "r" ).arg( pixelsize );
-}
-
-static TQString ahem_pickxlfd( int pixelsize )
-{
- return TQString( "-misc-ahem-medium-r-normal--%1-*-100-100-c-*-iso10646-1" ).arg( pixelsize );
-}
-
-static TQString helv_pickxlfd( int pixelsize, bool italic, bool bold )
-{
- if ( pixelsize >= 24 )
- pixelsize = 24;
- else if ( pixelsize >= 18 )
- pixelsize = 18;
- else if ( pixelsize >= 12 )
- pixelsize = 12;
- else
- pixelsize = 10;
-
- return TQString( "-adobe-helvetica-%1-%2-normal--%3-*-75-75-p-*-iso10646-1" ).arg( bold ? "bold" : "medium" ).arg( italic ? "o" : "r" ).arg( pixelsize );
-
-}
-
-KDE_EXPORT QFontEngine *
-TQFontDatabase::findFont( TQFont::Script script, const QFontPrivate *fp,
- const QFontDef &request, int )
-{
- TQString xlfd;
- TQString family = request.family.lower();
- if ( family == "adobe courier" || family == "courier" || family == "fixed" ) {
- xlfd = courier_pickxlfd( request.pixelSize, request.italic, request.weight > 50 );
- }
- else if ( family == "times new roman" || family == "times" )
- xlfd = "-adobe-times-medium-r-normal--8-80-75-75-p-44-iso10646-1";
- else if ( family == "ahem" )
- xlfd = ahem_pickxlfd( request.pixelSize );
- else
- xlfd = helv_pickxlfd( request.pixelSize, request.italic, request.weight > 50 );
-
- QFontEngine *fe = 0;
-
- XFontStruct *xfs;
- xfs = XLoadQueryFont(TQPaintDevice::x11AppDisplay(), xlfd.latin1() );
- if (!xfs) // as long as you don't do screenshots, it's maybe fine
- tqFatal("we need some fonts. So make sure you have %s installed.", xlfd.latin1());
-
- unsigned long value;
- if ( !XGetFontProperty( xfs, XA_FONT, &value ) )
- return 0;
-
- char *n = XGetAtomName( TQPaintDevice::x11AppDisplay(), value );
- xlfd = n;
- if ( n )
- XFree( n );
-
- fe = new QFakeFontEngine( xfs, xlfd.latin1(),request.pixelSize );
-
- // tqDebug("fe %s ascent %d descent %d minLeftBearing %d leading %d maxCharWidth %d minRightBearing %d", xlfd.latin1(), fe->ascent(), fe->descent(), fe->minLeftBearing(), fe->leading(), fe->maxCharWidth(), fe->minRightBearing());
-
- // fe->setScale( scale );
-
- QFontCache::Key key( request, script, fp->screen
-#if TQT_VERSION >= 0x030308
- , fp->paintdevice
-#endif
- );
- QFontCache::instance->insertEngine( key, fe );
- return fe;
-}
-
-KDE_EXPORT bool TQFontDatabase::isBitmapScalable( const TQString &,
- const TQString &) const
-{
- return true;
-}
-
-KDE_EXPORT bool TQFontDatabase::isSmoothlyScalable( const TQString &,
- const TQString &) const
-{
- return true;
-}
-
-const TQString &KHTMLSettings::availableFamilies()
-{
- if ( !avFamilies ) {
- avFamilies = new TQString;
- *avFamilies = ",Adobe Courier,Arial,Comic Sans MS,Courier,Helvetica,Times,Times New Roman,Utopia,Fixed,Ahem,";
- }
-
- return *avFamilies;
-}
-
-bool KHTMLSettings::unfinishedImageFrame() const
-{
- return false;
-}
-
-KDE_EXPORT int TQPaintDevice::x11AppDpiY( int )
-{
- return 100;
-}
-
-KDE_EXPORT int TQPaintDevice::x11AppDpiX( int )
-{
- return 100;
-}
-
-KDE_EXPORT void TQFont::insertSubstitution(const TQString &,
- const TQString &)
-{
-}
-
-KDE_EXPORT void TQFont::insertSubstitutions(const TQString &,
- const TQStringList &)
-{
-}
-
-#include <kprotocolinfo.h>
-bool KProtocolInfo::isKnownProtocol( const TQString& _protocol )
-{
- return ( _protocol == "file" );
-}
-
-#include <kprotocolinfofactory.h>
-
-TQString KProtocolInfo::exec( const TQString& _protocol )
-{
- if ( _protocol != "file" )
- return TQString::null;
-
- KProtocolInfo::Ptr prot = KProtocolInfoFactory::self()->findProtocol(_protocol);
- if ( !prot )
- return TQString::null;
-
- return prot->m_exec;
-}
-
-#include <dcopclient.h>
-
-bool DCOPClient::attach()
-{
- return false;
-}
-
-bool DCOPClient::isAttached() const
-{
- return false;
-}
-
-void DCOPClient::processSocketData( int )
-{
-}
-
-#include <tqapplication.h>
-#include <tqpalette.h>
-
-KDE_EXPORT void TQApplication::setPalette( const TQPalette &, bool ,
- const char* )
-{
- static bool done = false;
- if (done) return;
- TQString xlfd = ahem_pickxlfd(40);
- XFontStruct *xfs;
- xfs = XLoadQueryFont(TQPaintDevice::x11AppDisplay(), xlfd.latin1() );
- if (!xfs) // as long as you don't do screenshots, it's maybe fine
- tqFatal("We will need some fonts. So make sure you have %s installed.", xlfd.latin1());
- XFreeFont(TQPaintDevice::x11AppDisplay(), xfs);
- done = true;
-}
-
-#include <kapplication.h>
-void KApplication::dcopFailure( const TQString & )
-{
- tqDebug( "KApplication::dcopFailure" );
-}
-
-#include <kparts/historyprovider.h>
-
-bool KParts::HistoryProvider::contains( const TQString& t ) const
-{
- return ( t == "http://www.kde.org/" || t == "http://www.google.com/");
-}
-
-
-bool KJSCPUGuard::confirmTerminate()
-{
- return false;
-}
-
-#include <ksslsettings.h>
-
-bool KSSLSettings::warnOnEnter() const { return false; }
-bool KSSLSettings::warnOnUnencrypted() const { return false; }
-bool KSSLSettings::warnOnLeave() const { return false; }
-
-#include <kparts/plugin.h>
-
-KParts::Plugin* KParts::Plugin::loadPlugin( TQObject * parent, const char* libname ) { return 0; }
-