diff options
author | msw@chromium.org <msw@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-07-25 05:11:57 +0000 |
---|---|---|
committer | msw@chromium.org <msw@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-07-25 05:11:57 +0000 |
commit | 689d9d0d463d2b2f622a0cd74d79d1b60f432fc1 (patch) | |
tree | 9641f9d6b5fffa1d8a477a0dbfd6caeddd0772d6 /views/examples | |
parent | 906625821f97a508d76810fba7b9641335f68b51 (diff) | |
download | chromium_src-689d9d0d463d2b2f622a0cd74d79d1b60f432fc1.zip chromium_src-689d9d0d463d2b2f622a0cd74d79d1b60f432fc1.tar.gz chromium_src-689d9d0d463d2b2f622a0cd74d79d1b60f432fc1.tar.bz2 |
Add gfx::RenderText and support code.
RenderText is NativeTextFieldViews' interface to platform-specific text rendering engines.
This change doesn't hook in any new Pango or Uniscribe functionality, it will just setup the necessary API.
Review URL: http://codereview.chromium.org/7265011
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@93840 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'views/examples')
-rw-r--r-- | views/examples/textfield_example.cc | 36 | ||||
-rw-r--r-- | views/examples/textfield_example.h | 9 |
2 files changed, 18 insertions, 27 deletions
diff --git a/views/examples/textfield_example.cc b/views/examples/textfield_example.cc index f3553fe..bb1ab24 100644 --- a/views/examples/textfield_example.cc +++ b/views/examples/textfield_example.cc @@ -6,8 +6,8 @@ #include "base/utf_string_conversions.h" #include "ui/base/range/range.h" +#include "ui/gfx/render_text.h" #include "views/controls/label.h" -#include "views/controls/textfield/text_style.h" #include "views/controls/textfield/textfield.h" #include "views/layout/grid_layout.h" #include "views/view.h" @@ -15,10 +15,7 @@ namespace examples { TextfieldExample::TextfieldExample(ExamplesMain* main) - : ExampleBase(main), - underline_(NULL), - strike_(NULL), - color_(NULL) { + : ExampleBase(main) { } TextfieldExample::~TextfieldExample() { @@ -93,19 +90,22 @@ void TextfieldExample::ButtonPressed(views::Button* sender, } else if (sender == set_) { name_->SetText(WideToUTF16(L"[set]")); } else if (sender == set_style_) { - if (!underline_) { - color_ = name_->CreateTextStyle(); - color_->set_foreground(SK_ColorYELLOW); - underline_ = name_->CreateTextStyle(); - underline_->set_underline(true); - underline_->set_foreground(SK_ColorBLUE); - strike_ = name_->CreateTextStyle(); - strike_->set_strike(true); - strike_->set_foreground(SK_ColorRED); - name_->ApplyTextStyle(color_, ui::Range(0, 11)); - name_->ApplyTextStyle(underline_, ui::Range(1, 7)); - name_->ApplyTextStyle(strike_, ui::Range(6, 9)); - } + gfx::StyleRange color; + color.foreground = SK_ColorYELLOW; + color.range = ui::Range(0, 11); + name_->ApplyStyleRange(color); + + gfx::StyleRange underline; + underline.underline = true; + underline.foreground = SK_ColorBLUE; + underline.range = ui::Range(1, 7); + name_->ApplyStyleRange(underline); + + gfx::StyleRange strike; + strike.strike = true; + strike.foreground = SK_ColorRED; + strike.range = ui::Range(6, 9); + name_->ApplyStyleRange(strike); } } diff --git a/views/examples/textfield_example.h b/views/examples/textfield_example.h index faa9f46..608a3e7 100644 --- a/views/examples/textfield_example.h +++ b/views/examples/textfield_example.h @@ -15,10 +15,6 @@ #include "views/controls/textfield/textfield_controller.h" #include "views/examples/example_base.h" -namespace views { -class TextStyle; -} - namespace examples { // TextfieldExample mimics login screen. @@ -55,11 +51,6 @@ class TextfieldExample : public ExampleBase, views::TextButton* set_; views::TextButton* set_style_; - // Text Styles - views::TextStyle* underline_; - views::TextStyle* strike_; - views::TextStyle* color_; - DISALLOW_COPY_AND_ASSIGN(TextfieldExample); }; |