Bug 458861. Validate TrueType headers before activating downloaded font. r=roc, sr...
[wine-gecko.git] / gfx / src / thebes / nsSystemFontsGTK2.h
blob422189ab3c9ff0f9db5ae97c26701bfd42a3531d
1 /* -*- Mode: C++; tab-width: 20; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /* ***** BEGIN LICENSE BLOCK *****
3 * Version: MPL 1.1/GPL 2.0/LGPL 2.1
5 * The contents of this file are subject to the Mozilla Public License Version
6 * 1.1 (the "License"); you may not use this file except in compliance with
7 * the License. You may obtain a copy of the License at
8 * http://www.mozilla.org/MPL/
10 * Software distributed under the License is distributed on an "AS IS" basis,
11 * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
12 * for the specific language governing rights and limitations under the
13 * License.
15 * The Original Code is thebes gfx
17 * The Initial Developer of the Original Code is mozilla.org.
18 * Portions created by the Initial Developer are Copyright (C) 2005
19 * the Initial Developer. All Rights Reserved.
21 * Contributor(s):
22 * Vladimir Vukicevic <vladimir@pobox.com>
23 * Stuart Parmenter <pavlov@pavlov.net>
25 * Alternatively, the contents of this file may be used under the terms of
26 * either the GNU General Public License Version 2 or later (the "GPL"), or
27 * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
28 * in which case the provisions of the GPL or the LGPL are applicable instead
29 * of those above. If you wish to allow use of your version of this file only
30 * under the terms of either the GPL or the LGPL, and not to allow others to
31 * use your version of this file under the terms of the MPL, indicate your
32 * decision by deleting the provisions above and replace them with the notice
33 * and other provisions required by the GPL or the LGPL. If you do not delete
34 * the provisions above, a recipient may use your version of this file under
35 * the terms of any one of the MPL, the GPL or the LGPL.
37 * ***** END LICENSE BLOCK ***** */
39 #ifndef _NS_SYSTEMFONTSGTK2_H_
40 #define _NS_SYSTEMFONTSGTK2_H_
42 #include <gfxFont.h>
44 class nsSystemFontsGTK2
46 public:
47 nsSystemFontsGTK2();
48 ~nsSystemFontsGTK2();
50 nsresult GetSystemFont(nsSystemFontID anID, nsString *aFontName,
51 gfxFontStyle *aFontStyle) const;
53 private:
55 nsresult GetSystemFontInfo(GtkWidget *aWidget, nsString *aFontName,
56 gfxFontStyle *aFontStyle) const;
59 * The following system font constants exist:
61 * css2: http://www.w3.org/TR/REC-CSS2/fonts.html#x27
62 * eSystemFont_Caption, eSystemFont_Icon, eSystemFont_Menu,
63 * eSystemFont_MessageBox, eSystemFont_SmallCaption,
64 * eSystemFont_StatusBar,
65 * // css3
66 * eSystemFont_Window, eSystemFont_Document,
67 * eSystemFont_Workspace, eSystemFont_Desktop,
68 * eSystemFont_Info, eSystemFont_Dialog,
69 * eSystemFont_Button, eSystemFont_PullDownMenu,
70 * eSystemFont_List, eSystemFont_Field,
71 * // moz
72 * eSystemFont_Tooltips, eSystemFont_Widget
74 nsString mDefaultFontName, mButtonFontName, mFieldFontName, mMenuFontName;
75 gfxFontStyle mDefaultFontStyle, mButtonFontStyle, mFieldFontStyle, mMenuFontStyle;
78 #endif /* _NS_SYSTEMFONTSGTK2_H_ */