Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(867)

Side by Side Diff: ui/views/examples/text_example.cc

Issue 1013543006: [RenderText] Adding vertical alignment options (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Removed pixel tests on vertical alignment Created 5 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 "ui/views/examples/text_example.h" 5 #include "ui/views/examples/text_example.h"
6 6
7 #include "base/strings/utf_string_conversions.h" 7 #include "base/strings/utf_string_conversions.h"
8 #include "ui/gfx/canvas.h" 8 #include "ui/gfx/canvas.h"
9 #include "ui/gfx/font_list.h" 9 #include "ui/gfx/font_list.h"
10 #include "ui/views/border.h" 10 #include "ui/views/border.h"
(...skipping 30 matching lines...) Expand all
41 L"\x5e9\x5dc\x5d5\x5dd \x5d4\x5e2\x5d5\x5dc\x5dd! " 41 L"\x5e9\x5dc\x5d5\x5dd \x5d4\x5e2\x5d5\x5dc\x5dd! "
42 L"\x5e9\x5dc\x5d5\x5dd \x5d4\x5e2\x5d5\x5dc\x5dd! " 42 L"\x5e9\x5dc\x5d5\x5dd \x5d4\x5e2\x5d5\x5dc\x5dd! "
43 L"\x5e9\x5dc\x5d5\x5dd \x5d4\x5e2\x5d5\x5dc\x5dd! " 43 L"\x5e9\x5dc\x5d5\x5dd \x5d4\x5e2\x5d5\x5dc\x5dd! "
44 L"\x5e9\x5dc\x5d5\x5dd \x5d4\x5e2\x5d5\x5dc\x5dd! " 44 L"\x5e9\x5dc\x5d5\x5dd \x5d4\x5e2\x5d5\x5dc\x5dd! "
45 L"\x5e9\x5dc\x5d5\x5dd \x5d4\x5e2\x5d5\x5dc\x5dd!"; 45 L"\x5e9\x5dc\x5d5\x5dd \x5d4\x5e2\x5d5\x5dc\x5dd!";
46 46
47 const char* kTextExamples[] = { "Short", "Long", "Ampersands", "RTL Hebrew", }; 47 const char* kTextExamples[] = { "Short", "Long", "Ampersands", "RTL Hebrew", };
48 const char* kElideBehaviors[] = { "Elide", "No Elide", "Fade", }; 48 const char* kElideBehaviors[] = { "Elide", "No Elide", "Fade", };
49 const char* kPrefixOptions[] = { "Default", "Show", "Hide", }; 49 const char* kPrefixOptions[] = { "Default", "Show", "Hide", };
50 const char* kHorizontalAligments[] = { "Default", "Left", "Center", "Right", }; 50 const char* kHorizontalAligments[] = { "Default", "Left", "Center", "Right", };
51 const char* kVerticalAligments[] = {
msw 2015/04/01 15:07:18 optional nit: defy git-cl-format and fit this on o
52 "Default",
53 "Top",
54 "Middle",
55 "Bottom",
56 };
51 57
52 // Toggles bit |flag| on |flags| based on state of |checkbox|. 58 // Toggles bit |flag| on |flags| based on state of |checkbox|.
53 void SetFlagFromCheckbox(Checkbox* checkbox, int* flags, int flag) { 59 void SetFlagFromCheckbox(Checkbox* checkbox, int* flags, int flag) {
54 if (checkbox->checked()) 60 if (checkbox->checked())
55 *flags |= flag; 61 *flags |= flag;
56 else 62 else
57 *flags &= ~flag; 63 *flags &= ~flag;
58 } 64 }
59 65
60 } // namespace 66 } // namespace
(...skipping 90 matching lines...) Expand 10 before | Expand all | Expand 10 after
151 column_set->AddPaddingColumn(0, 8); 157 column_set->AddPaddingColumn(0, 8);
152 column_set->AddColumn(GridLayout::LEADING, GridLayout::FILL, 158 column_set->AddColumn(GridLayout::LEADING, GridLayout::FILL,
153 0.1f, GridLayout::USE_PREF, 0, 0); 159 0.1f, GridLayout::USE_PREF, 0, 0);
154 for (int i = 0; i < kNumColumns - 1; i++) 160 for (int i = 0; i < kNumColumns - 1; i++)
155 column_set->AddColumn(GridLayout::FILL, GridLayout::FILL, 161 column_set->AddColumn(GridLayout::FILL, GridLayout::FILL,
156 0.1f, GridLayout::USE_PREF, 0, 0); 162 0.1f, GridLayout::USE_PREF, 0, 0);
157 column_set->AddPaddingColumn(0, 8); 163 column_set->AddPaddingColumn(0, 8);
158 164
159 h_align_cb_ = AddCombobox(layout, "H-Align", kHorizontalAligments, 165 h_align_cb_ = AddCombobox(layout, "H-Align", kHorizontalAligments,
160 arraysize(kHorizontalAligments)); 166 arraysize(kHorizontalAligments));
167 v_align_cb_ = AddCombobox(layout, "V-Align", kVerticalAligments,
168 arraysize(kVerticalAligments));
161 eliding_cb_ = AddCombobox(layout, "Eliding", kElideBehaviors, 169 eliding_cb_ = AddCombobox(layout, "Eliding", kElideBehaviors,
162 arraysize(kElideBehaviors)); 170 arraysize(kElideBehaviors));
163 prefix_cb_ = AddCombobox(layout, "Prefix", kPrefixOptions, 171 prefix_cb_ = AddCombobox(layout, "Prefix", kPrefixOptions,
164 arraysize(kPrefixOptions)); 172 arraysize(kPrefixOptions));
165 text_cb_ = AddCombobox(layout, "Example Text", kTextExamples, 173 text_cb_ = AddCombobox(layout, "Example Text", kTextExamples,
166 arraysize(kTextExamples)); 174 arraysize(kTextExamples));
167 175
168 layout->StartRow(0, 0); 176 layout->StartRow(0, 0);
169 multiline_checkbox_ = AddCheckbox(layout, "Multiline"); 177 multiline_checkbox_ = AddCheckbox(layout, "Multiline");
170 break_checkbox_ = AddCheckbox(layout, "Character Break"); 178 break_checkbox_ = AddCheckbox(layout, "Character Break");
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after
210 case 1: 218 case 1:
211 flags |= gfx::Canvas::TEXT_ALIGN_LEFT; 219 flags |= gfx::Canvas::TEXT_ALIGN_LEFT;
212 break; 220 break;
213 case 2: 221 case 2:
214 flags |= gfx::Canvas::TEXT_ALIGN_CENTER; 222 flags |= gfx::Canvas::TEXT_ALIGN_CENTER;
215 break; 223 break;
216 case 3: 224 case 3:
217 flags |= gfx::Canvas::TEXT_ALIGN_RIGHT; 225 flags |= gfx::Canvas::TEXT_ALIGN_RIGHT;
218 break; 226 break;
219 } 227 }
228 } else if (combobox == v_align_cb_) {
229 flags &= ~(gfx::Canvas::TEXT_ALIGN_TOP | gfx::Canvas::TEXT_ALIGN_MIDDLE |
230 gfx::Canvas::TEXT_ALIGN_BOTTOM);
231 switch (combobox->selected_index()) {
232 case 0:
233 break;
234 case 1:
235 flags |= gfx::Canvas::TEXT_ALIGN_TOP;
msw 2015/04/01 15:07:18 Ah, I see why you added the canvas flags now... It
236 break;
237 case 2:
238 flags |= gfx::Canvas::TEXT_ALIGN_MIDDLE;
239 break;
240 case 3:
241 flags |= gfx::Canvas::TEXT_ALIGN_BOTTOM;
242 break;
243 }
220 } else if (combobox == text_cb_) { 244 } else if (combobox == text_cb_) {
221 switch (combobox->selected_index()) { 245 switch (combobox->selected_index()) {
222 case 0: 246 case 0:
223 text_view_->set_text(base::ASCIIToUTF16(kShortText)); 247 text_view_->set_text(base::ASCIIToUTF16(kShortText));
224 break; 248 break;
225 case 1: 249 case 1:
226 text_view_->set_text(base::ASCIIToUTF16(kLongText)); 250 text_view_->set_text(base::ASCIIToUTF16(kLongText));
227 break; 251 break;
228 case 2: 252 case 2:
229 text_view_->set_text(base::ASCIIToUTF16(kAmpersandText)); 253 text_view_->set_text(base::ASCIIToUTF16(kAmpersandText));
(...skipping 26 matching lines...) Expand all
256 flags |= gfx::Canvas::HIDE_PREFIX; 280 flags |= gfx::Canvas::HIDE_PREFIX;
257 break; 281 break;
258 } 282 }
259 } 283 }
260 text_view_->set_flags(flags); 284 text_view_->set_flags(flags);
261 text_view_->SchedulePaint(); 285 text_view_->SchedulePaint();
262 } 286 }
263 287
264 } // namespace examples 288 } // namespace examples
265 } // namespace views 289 } // namespace views
OLDNEW
« ui/gfx/render_text_unittest.cc ('K') | « ui/views/examples/text_example.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698