summaryrefslogtreecommitdiffstats
path: root/ui/gfx/platform_font_ios.h
diff options
context:
space:
mode:
authorbdibello@chromium.org <bdibello@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-08-31 19:08:31 +0000
committerbdibello@chromium.org <bdibello@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-08-31 19:08:31 +0000
commit86197594b9687b40dde78cabf48edffec1d3c4c2 (patch)
tree2ac16ed2bb71e871e242d8f7a707f98136caafea /ui/gfx/platform_font_ios.h
parentf72c2cb0576c8e5c793769302e305f69e98b177a (diff)
downloadchromium_src-86197594b9687b40dde78cabf48edffec1d3c4c2.zip
chromium_src-86197594b9687b40dde78cabf48edffec1d3c4c2.tar.gz
chromium_src-86197594b9687b40dde78cabf48edffec1d3c4c2.tar.bz2
Added platform_font_ios for iOS-specific fonts.
Review URL: https://chromiumcodereview.appspot.com/10896003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@154478 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ui/gfx/platform_font_ios.h')
-rw-r--r--ui/gfx/platform_font_ios.h57
1 files changed, 57 insertions, 0 deletions
diff --git a/ui/gfx/platform_font_ios.h b/ui/gfx/platform_font_ios.h
new file mode 100644
index 0000000..8947761
--- /dev/null
+++ b/ui/gfx/platform_font_ios.h
@@ -0,0 +1,57 @@
+// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#ifndef UI_GFX_PLATFORM_FONT_IOS_H_
+#define UI_GFX_PLATFORM_FONT_IOS_H_
+
+#include "ui/gfx/platform_font.h"
+
+namespace gfx {
+
+class PlatformFontIOS : public PlatformFont {
+ public:
+ PlatformFontIOS();
+ explicit PlatformFontIOS(NativeFont native_font);
+ PlatformFontIOS(const std::string& font_name,
+ int font_size);
+
+ // Overridden from PlatformFont:
+ virtual Font DeriveFont(int size_delta, int style) const OVERRIDE;
+ virtual int GetHeight() const OVERRIDE;
+ virtual int GetBaseline() const OVERRIDE;
+ virtual int GetAverageCharacterWidth() const OVERRIDE;
+ virtual int GetStringWidth(const string16& text) const OVERRIDE;
+ virtual int GetExpectedTextWidth(int length) const OVERRIDE;
+ virtual int GetStyle() const OVERRIDE;
+ virtual std::string GetFontName() const OVERRIDE;
+ virtual int GetFontSize() const OVERRIDE;
+ virtual NativeFont GetNativeFont() const OVERRIDE;
+
+ private:
+ PlatformFontIOS(const std::string& font_name, int font_size, int style);
+ virtual ~PlatformFontIOS() {}
+
+ // Initialize the object with the specified parameters.
+ void InitWithNameSizeAndStyle(const std::string& font_name,
+ int font_size,
+ int style);
+
+ // Calculate and cache the font metrics.
+ void CalculateMetrics();
+
+ std::string font_name_;
+ int font_size_;
+ int style_;
+
+ // Cached metrics, generated at construction.
+ int height_;
+ int ascent_;
+ int average_width_;
+
+ DISALLOW_COPY_AND_ASSIGN(PlatformFontIOS);
+};
+
+} // namespace gfx
+
+#endif // UI_GFX_PLATFORM_FONT_IOS_H_