OLD | NEW |
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef GFX_PLATFORM_FONT_MAC_ | 5 #ifndef GFX_PLATFORM_FONT_MAC_ |
6 #define GFX_PLATFORM_FONT_MAC_ | 6 #define GFX_PLATFORM_FONT_MAC_ |
7 #pragma once | 7 #pragma once |
8 | 8 |
9 #include "gfx/platform_font.h" | 9 #include "ui/gfx/platform_font_mac.h" |
10 | 10 // TODO(sail): remove this file once all includes have been updated. |
11 namespace gfx { | |
12 | |
13 class PlatformFontMac : public PlatformFont { | |
14 public: | |
15 PlatformFontMac(); | |
16 explicit PlatformFontMac(const Font& other); | |
17 explicit PlatformFontMac(NativeFont native_font); | |
18 PlatformFontMac(const string16& font_name, | |
19 int font_size); | |
20 | |
21 // Overridden from PlatformFont: | |
22 virtual Font DeriveFont(int size_delta, int style) const; | |
23 virtual int GetHeight() const; | |
24 virtual int GetBaseline() const; | |
25 virtual int GetAverageCharacterWidth() const; | |
26 virtual int GetStringWidth(const string16& text) const; | |
27 virtual int GetExpectedTextWidth(int length) const; | |
28 virtual int GetStyle() const; | |
29 virtual string16 GetFontName() const; | |
30 virtual int GetFontSize() const; | |
31 virtual NativeFont GetNativeFont() const; | |
32 | |
33 private: | |
34 PlatformFontMac(const string16& font_name, int font_size, int style); | |
35 virtual ~PlatformFontMac() {} | |
36 | |
37 // Initialize the object with the specified parameters. | |
38 void InitWithNameSizeAndStyle(const string16& font_name, | |
39 int font_size, | |
40 int style); | |
41 | |
42 // Calculate and cache the font metrics. | |
43 void CalculateMetrics(); | |
44 | |
45 string16 font_name_; | |
46 int font_size_; | |
47 int style_; | |
48 | |
49 // Cached metrics, generated at construction | |
50 int height_; | |
51 int ascent_; | |
52 int average_width_; | |
53 }; | |
54 | |
55 } // namespace gfx | |
56 | 11 |
57 #endif // GFX_PLATFORM_FONT_MAC_ | 12 #endif // GFX_PLATFORM_FONT_MAC_ |
OLD | NEW |