OLD | NEW |
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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 #include "views/examples/textfield_example.h" | 5 #include "views/examples/textfield_example.h" |
6 | 6 |
7 #include "base/utf_string_conversions.h" | 7 #include "base/utf_string_conversions.h" |
8 #include "ui/base/range/range.h" | 8 #include "ui/base/range/range.h" |
| 9 #include "ui/gfx/render_text.h" |
9 #include "views/controls/label.h" | 10 #include "views/controls/label.h" |
10 #include "views/controls/textfield/text_style.h" | |
11 #include "views/controls/textfield/textfield.h" | 11 #include "views/controls/textfield/textfield.h" |
12 #include "views/layout/grid_layout.h" | 12 #include "views/layout/grid_layout.h" |
13 #include "views/view.h" | 13 #include "views/view.h" |
14 | 14 |
15 namespace examples { | 15 namespace examples { |
16 | 16 |
17 TextfieldExample::TextfieldExample(ExamplesMain* main) | 17 TextfieldExample::TextfieldExample(ExamplesMain* main) |
18 : ExampleBase(main), | 18 : ExampleBase(main) { |
19 underline_(NULL), | |
20 strike_(NULL), | |
21 color_(NULL) { | |
22 } | 19 } |
23 | 20 |
24 TextfieldExample::~TextfieldExample() { | 21 TextfieldExample::~TextfieldExample() { |
25 } | 22 } |
26 | 23 |
27 std::wstring TextfieldExample::GetExampleTitle() { | 24 std::wstring TextfieldExample::GetExampleTitle() { |
28 return L"Textfield"; | 25 return L"Textfield"; |
29 } | 26 } |
30 | 27 |
31 void TextfieldExample::CreateExampleView(views::View* container) { | 28 void TextfieldExample::CreateExampleView(views::View* container) { |
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
86 PrintStatus(L"Password [%ls]", UTF16ToWideHack(password_->text()).c_str()); | 83 PrintStatus(L"Password [%ls]", UTF16ToWideHack(password_->text()).c_str()); |
87 } else if (sender == clear_all_) { | 84 } else if (sender == clear_all_) { |
88 string16 empty; | 85 string16 empty; |
89 name_->SetText(empty); | 86 name_->SetText(empty); |
90 password_->SetText(empty); | 87 password_->SetText(empty); |
91 } else if (sender == append_) { | 88 } else if (sender == append_) { |
92 name_->AppendText(WideToUTF16(L"[append]")); | 89 name_->AppendText(WideToUTF16(L"[append]")); |
93 } else if (sender == set_) { | 90 } else if (sender == set_) { |
94 name_->SetText(WideToUTF16(L"[set]")); | 91 name_->SetText(WideToUTF16(L"[set]")); |
95 } else if (sender == set_style_) { | 92 } else if (sender == set_style_) { |
96 if (!underline_) { | 93 gfx::StyleRange color; |
97 color_ = name_->CreateTextStyle(); | 94 color.foreground = SK_ColorYELLOW; |
98 color_->set_foreground(SK_ColorYELLOW); | 95 color.range = ui::Range(0, 11); |
99 underline_ = name_->CreateTextStyle(); | 96 name_->ApplyStyleRange(color); |
100 underline_->set_underline(true); | 97 |
101 underline_->set_foreground(SK_ColorBLUE); | 98 gfx::StyleRange underline; |
102 strike_ = name_->CreateTextStyle(); | 99 underline.underline = true; |
103 strike_->set_strike(true); | 100 underline.foreground = SK_ColorBLUE; |
104 strike_->set_foreground(SK_ColorRED); | 101 underline.range = ui::Range(1, 7); |
105 name_->ApplyTextStyle(color_, ui::Range(0, 11)); | 102 name_->ApplyStyleRange(underline); |
106 name_->ApplyTextStyle(underline_, ui::Range(1, 7)); | 103 |
107 name_->ApplyTextStyle(strike_, ui::Range(6, 9)); | 104 gfx::StyleRange strike; |
108 } | 105 strike.strike = true; |
| 106 strike.foreground = SK_ColorRED; |
| 107 strike.range = ui::Range(6, 9); |
| 108 name_->ApplyStyleRange(strike); |
109 } | 109 } |
110 } | 110 } |
111 | 111 |
112 } // namespace examples | 112 } // namespace examples |
OLD | NEW |