summaryrefslogtreecommitdiffstats
path: root/views/examples
diff options
context:
space:
mode:
authormsw@chromium.org <msw@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-07-25 05:11:57 +0000
committermsw@chromium.org <msw@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-07-25 05:11:57 +0000
commit689d9d0d463d2b2f622a0cd74d79d1b60f432fc1 (patch)
tree9641f9d6b5fffa1d8a477a0dbfd6caeddd0772d6 /views/examples
parent906625821f97a508d76810fba7b9641335f68b51 (diff)
downloadchromium_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.cc36
-rw-r--r--views/examples/textfield_example.h9
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);
};