Reviewed by ap.
[WebKit-https.git] / WebCore / platform / qt / FontPlatformData.h
1 /*
2  * This file is part of the internal font implementation.  It should not be included by anyone other than
3  * FontMac.cpp, FontWin.cpp and Font.cpp.
4  *
5  * Copyright (C) 2006 Apple Computer, Inc.
6  * Copyright (C) 2006 Zack Rusin <zack@kde.org>
7  * Copyright (C) 2006 Dirk Mueller <mueller@kde.org>
8  * Copyright (C) 2006 Nikolas Zimmermann <zimmermann@kde.org>
9  * 
10  * All rights reserved.
11  *
12  * This library is free software; you can redistribute it and/or
13  * modify it under the terms of the GNU Library General Public
14  * License as published by the Free Software Foundation; either
15  * version 2 of the License, or (at your option) any later version.
16  *
17  * This library is distributed in the hope that it will be useful,
18  * but WITHOUT ANY WARRANTY; without even the implied warranty of
19  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
20  * Library General Public License for more details.
21  *
22  * You should have received a copy of the GNU Library General Public License
23  * along with this library; see the file COPYING.LIB.  If not, write to
24  * the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
25  * Boston, MA 02111-1307, USA.
26  *
27  */
28
29 #ifndef FontPlatformData_H
30 #define FontPlatformData_H
31
32 #include "GlyphBuffer.h"
33 #include "FontDescription.h"
34
35 #include <QFont>
36 #include <QString>
37
38 namespace WebCore {
39
40 class FontPlatformData {
41 public:
42     FontPlatformData(const FontPlatformData& other);
43     FontPlatformData& operator=(const FontPlatformData& other);
44
45     class Deleted { };
46     FontPlatformData(Deleted);
47
48     FontPlatformData();
49     FontPlatformData(const FontDescription&, const AtomicString& family);
50     ~FontPlatformData();
51
52     bool isFixedPitch();
53
54     void setFont(const QFont&);
55     QFont font() const;
56
57     unsigned hash() const;
58
59     bool operator==(const FontPlatformData& other) const;
60
61 private:
62     QFont m_font;
63 };
64
65 }
66
67 #endif
68
69 // vim: ts=4 sw=4 et