diff options
Diffstat (limited to 'webkit/pending/FontCache.h')
-rw-r--r-- | webkit/pending/FontCache.h | 106 |
1 files changed, 0 insertions, 106 deletions
diff --git a/webkit/pending/FontCache.h b/webkit/pending/FontCache.h deleted file mode 100644 index 9c588aa..0000000 --- a/webkit/pending/FontCache.h +++ /dev/null @@ -1,106 +0,0 @@ -/* - * Copyright (C) 2006, 2008 Apple Computer, Inc. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#ifndef FontCache_h -#define FontCache_h - -#include <limits.h> -#include <wtf/Vector.h> -#include <unicode/uscript.h> -#include <wtf/unicode/Unicode.h> - -#if PLATFORM(WIN) -#include <objidl.h> -#include <mlang.h> -#endif - -namespace WebCore -{ - -class AtomicString; -class Font; -class FontPlatformData; -class FontData; -class FontDescription; -class FontSelector; -class SimpleFontData; - -class FontCache { -public: - static const FontData* getFontData(const Font&, int& familyIndex, FontSelector*); - static void releaseFontData(const SimpleFontData*); - - // This method is implemented by the platform. - // FIXME: Font data returned by this method never go inactive because callers don't track and release them. - static const SimpleFontData* getFontDataForCharacters(const Font&, const UChar* characters, int length); - - // Also implemented by the platform. - static void platformInit(); - -#if PLATFORM(WIN) - static IMLangFontLink2* getFontLinkInterface(); -#endif - - static void getTraitsInFamily(const AtomicString&, Vector<unsigned>&); - - static FontPlatformData* getCachedFontPlatformData(const FontDescription&, const AtomicString& family, bool checkingAlternateName = false); - static SimpleFontData* getCachedFontData(const FontPlatformData*); - static FontPlatformData* getLastResortFallbackFont(const FontDescription&); - - bool fontExists(const FontDescription&, const AtomicString& family); - - // TODO(jungshik): Is this the best place to put this function? It may - // or may not be. Font.h is another place we can cosider. - // Return a font family for |script| and |FontDescription.genericFamily()|. - // It will return an empty atom if we can't find a font matching - // script and genericFamily in FontDescription. A caller should check - // the emptyness before using it. - static AtomicString getGenericFontForScript(UScriptCode script, const FontDescription&); - static void addClient(FontSelector*); - static void removeClient(FontSelector*); - - static unsigned generation(); - static void invalidate(); - - static size_t fontDataCount(); - static size_t inactiveFontDataCount(); - static void purgeInactiveFontData(int count = INT_MAX); - -private: - // These methods are implemented by each platform. - static FontPlatformData* getSimilarFontPlatformData(const Font&); - static FontPlatformData* createFontPlatformData(const FontDescription&, const AtomicString& family); - static const AtomicString& alternateFamilyName(const AtomicString& family); - - friend class SimpleFontData; - friend class FontFallbackList; -}; - -} - -#endif |