diff options
author | bdibello@chromium.org <bdibello@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-08-31 19:08:31 +0000 |
---|---|---|
committer | bdibello@chromium.org <bdibello@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-08-31 19:08:31 +0000 |
commit | 86197594b9687b40dde78cabf48edffec1d3c4c2 (patch) | |
tree | 2ac16ed2bb71e871e242d8f7a707f98136caafea /ui/gfx/platform_font_ios.h | |
parent | f72c2cb0576c8e5c793769302e305f69e98b177a (diff) | |
download | chromium_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.h | 57 |
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_ |