| OLD | NEW |
| 1 // Copyright (c) 2011 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/table_example.h" | 5 #include "ui/views/examples/table_example.h" |
| 6 | 6 |
| 7 #include <vector> | 7 #include <vector> |
| 8 | 8 |
| 9 #include "base/string_util.h" |
| 9 #include "base/utf_string_conversions.h" | 10 #include "base/utf_string_conversions.h" |
| 10 #include "third_party/skia/include/core/SkCanvas.h" | 11 #include "third_party/skia/include/core/SkCanvas.h" |
| 11 #include "ui/views/controls/button/checkbox.h" | 12 #include "ui/views/controls/button/checkbox.h" |
| 12 #include "ui/views/layout/grid_layout.h" | 13 #include "ui/views/layout/grid_layout.h" |
| 13 | 14 |
| 14 namespace views { | 15 namespace views { |
| 15 namespace examples { | 16 namespace examples { |
| 16 | 17 |
| 17 TableExample::TableExample() : ExampleBase("Table") { | 18 TableExample::TableExample() : ExampleBase("Table") { |
| 18 } | 19 } |
| (...skipping 16 matching lines...) Expand all Loading... |
| 35 column3_visible_checkbox_->set_listener(this); | 36 column3_visible_checkbox_->set_listener(this); |
| 36 column4_visible_checkbox_ = new Checkbox( | 37 column4_visible_checkbox_ = new Checkbox( |
| 37 ASCIIToUTF16("Price column visible")); | 38 ASCIIToUTF16("Price column visible")); |
| 38 column4_visible_checkbox_->SetChecked(true); | 39 column4_visible_checkbox_->SetChecked(true); |
| 39 column4_visible_checkbox_->set_listener(this); | 40 column4_visible_checkbox_->set_listener(this); |
| 40 | 41 |
| 41 GridLayout* layout = new GridLayout(container); | 42 GridLayout* layout = new GridLayout(container); |
| 42 container->SetLayoutManager(layout); | 43 container->SetLayoutManager(layout); |
| 43 | 44 |
| 44 std::vector<ui::TableColumn> columns; | 45 std::vector<ui::TableColumn> columns; |
| 45 columns.push_back(ui::TableColumn(0, L"Fruit", ui::TableColumn::LEFT, 100)); | 46 columns.push_back(ui::TableColumn(0, ASCIIToUTF16("Fruit"), |
| 46 columns.push_back(ui::TableColumn(1, L"Color", ui::TableColumn::LEFT, 100)); | 47 ui::TableColumn::LEFT, 100)); |
| 47 columns.push_back(ui::TableColumn(2, L"Origin", ui::TableColumn::LEFT, 100)); | 48 #if !defined(USE_AURA) |
| 48 columns.push_back(ui::TableColumn(3, L"Price", ui::TableColumn::LEFT, 100)); | 49 columns.push_back(ui::TableColumn(1, ASCIIToUTF16("Color"), |
| 50 ui::TableColumn::LEFT, 100)); |
| 51 columns.push_back(ui::TableColumn(2, ASCIIToUTF16("Origin"), |
| 52 ui::TableColumn::LEFT, 100)); |
| 53 columns.push_back(ui::TableColumn(3, ASCIIToUTF16("Price"), |
| 54 ui::TableColumn::LEFT, 100)); |
| 55 #endif |
| 49 table_ = new TableView(this, columns, ICON_AND_TEXT, true, true, true); | 56 table_ = new TableView(this, columns, ICON_AND_TEXT, true, true, true); |
| 50 table_->SetObserver(this); | 57 table_->SetObserver(this); |
| 51 icon1_.setConfig(SkBitmap::kARGB_8888_Config, 16, 16); | 58 icon1_.setConfig(SkBitmap::kARGB_8888_Config, 16, 16); |
| 52 icon1_.allocPixels(); | 59 icon1_.allocPixels(); |
| 53 SkCanvas canvas1(icon1_); | 60 SkCanvas canvas1(icon1_); |
| 54 canvas1.drawColor(SK_ColorRED); | 61 canvas1.drawColor(SK_ColorRED); |
| 55 | 62 |
| 56 icon2_.setConfig(SkBitmap::kARGB_8888_Config, 16, 16); | 63 icon2_.setConfig(SkBitmap::kARGB_8888_Config, 16, 16); |
| 57 icon2_.allocPixels(); | 64 icon2_.allocPixels(); |
| 58 SkCanvas canvas2(icon2_); | 65 SkCanvas canvas2(icon2_); |
| 59 canvas2.drawColor(SK_ColorBLUE); | 66 canvas2.drawColor(SK_ColorBLUE); |
| 60 | 67 |
| 61 ColumnSet* column_set = layout->AddColumnSet(0); | 68 ColumnSet* column_set = layout->AddColumnSet(0); |
| 62 column_set->AddColumn(GridLayout::FILL, GridLayout::FILL, 1, | 69 column_set->AddColumn(GridLayout::FILL, GridLayout::FILL, 1, |
| 63 GridLayout::USE_PREF, 0, 0); | 70 GridLayout::USE_PREF, 0, 0); |
| 64 layout->StartRow(1 /* expand */, 0); | 71 layout->StartRow(1 /* expand */, 0); |
| 65 layout->AddView(table_); | 72 layout->AddView(table_->CreateParentIfNecessary()); |
| 66 | 73 |
| 67 column_set = layout->AddColumnSet(1); | 74 column_set = layout->AddColumnSet(1); |
| 68 column_set->AddColumn(GridLayout::FILL, GridLayout::FILL, | 75 column_set->AddColumn(GridLayout::FILL, GridLayout::FILL, |
| 69 0.5f, GridLayout::USE_PREF, 0, 0); | 76 0.5f, GridLayout::USE_PREF, 0, 0); |
| 70 column_set->AddColumn(GridLayout::FILL, GridLayout::FILL, | 77 column_set->AddColumn(GridLayout::FILL, GridLayout::FILL, |
| 71 0.5f, GridLayout::USE_PREF, 0, 0); | 78 0.5f, GridLayout::USE_PREF, 0, 0); |
| 72 column_set->AddColumn(GridLayout::FILL, GridLayout::FILL, | 79 column_set->AddColumn(GridLayout::FILL, GridLayout::FILL, |
| 73 0.5f, GridLayout::USE_PREF, 0, 0); | 80 0.5f, GridLayout::USE_PREF, 0, 0); |
| 74 column_set->AddColumn(GridLayout::FILL, GridLayout::FILL, | 81 column_set->AddColumn(GridLayout::FILL, GridLayout::FILL, |
| 75 0.5f, GridLayout::USE_PREF, 0, 0); | 82 0.5f, GridLayout::USE_PREF, 0, 0); |
| (...skipping 21 matching lines...) Expand all Loading... |
| 97 return ASCIIToUTF16(cells[row % 5][column_id]); | 104 return ASCIIToUTF16(cells[row % 5][column_id]); |
| 98 } | 105 } |
| 99 | 106 |
| 100 SkBitmap TableExample::GetIcon(int row) { | 107 SkBitmap TableExample::GetIcon(int row) { |
| 101 return row % 2 ? icon1_ : icon2_; | 108 return row % 2 ? icon1_ : icon2_; |
| 102 } | 109 } |
| 103 | 110 |
| 104 void TableExample::SetObserver(ui::TableModelObserver* observer) {} | 111 void TableExample::SetObserver(ui::TableModelObserver* observer) {} |
| 105 | 112 |
| 106 void TableExample::OnSelectionChanged() { | 113 void TableExample::OnSelectionChanged() { |
| 107 PrintStatus("Selection changed"); | 114 PrintStatus("Selected: %s", |
| 115 UTF16ToASCII(GetText(table_->FirstSelectedRow(), 0)).c_str()); |
| 108 } | 116 } |
| 109 | 117 |
| 110 void TableExample::OnDoubleClick() {} | 118 void TableExample::OnDoubleClick() { |
| 119 PrintStatus("Double Click: %s", |
| 120 UTF16ToASCII(GetText(table_->FirstSelectedRow(), 0)).c_str()); |
| 121 } |
| 111 | 122 |
| 112 void TableExample::OnMiddleClick() {} | 123 void TableExample::OnMiddleClick() {} |
| 113 | 124 |
| 114 void TableExample::OnKeyDown(ui::KeyboardCode virtual_keycode) {} | 125 void TableExample::OnKeyDown(ui::KeyboardCode virtual_keycode) {} |
| 115 | 126 |
| 116 void TableExample::OnTableViewDelete(TableView* table_view) {} | 127 void TableExample::OnTableViewDelete(TableView* table_view) {} |
| 117 | 128 |
| 118 void TableExample::OnTableView2Delete(TableView2* table_view) {} | 129 void TableExample::OnTableView2Delete(TableView2* table_view) {} |
| 119 | 130 |
| 120 void TableExample::ButtonPressed(Button* sender, const Event& event) { | 131 void TableExample::ButtonPressed(Button* sender, const Event& event) { |
| 121 int index = 0; | 132 int index = 0; |
| 122 bool show = true; | 133 bool show = true; |
| 123 if (sender == column1_visible_checkbox_) { | 134 if (sender == column1_visible_checkbox_) { |
| 124 index = 0; | 135 index = 0; |
| 125 show = column1_visible_checkbox_->checked(); | 136 show = column1_visible_checkbox_->checked(); |
| 126 } else if (sender == column2_visible_checkbox_) { | 137 } else if (sender == column2_visible_checkbox_) { |
| 127 index = 1; | 138 index = 1; |
| 128 show = column2_visible_checkbox_->checked(); | 139 show = column2_visible_checkbox_->checked(); |
| 129 } else if (sender == column3_visible_checkbox_) { | 140 } else if (sender == column3_visible_checkbox_) { |
| 130 index = 2; | 141 index = 2; |
| 131 show = column3_visible_checkbox_->checked(); | 142 show = column3_visible_checkbox_->checked(); |
| 132 } else if (sender == column4_visible_checkbox_) { | 143 } else if (sender == column4_visible_checkbox_) { |
| 133 index = 3; | 144 index = 3; |
| 134 show = column4_visible_checkbox_->checked(); | 145 show = column4_visible_checkbox_->checked(); |
| 135 } | 146 } |
| 147 #if !defined(USE_AURA) |
| 136 table_->SetColumnVisibility(index, show); | 148 table_->SetColumnVisibility(index, show); |
| 149 #endif |
| 137 } | 150 } |
| 138 | 151 |
| 139 } // namespace examples | 152 } // namespace examples |
| 140 } // namespace views | 153 } // namespace views |
| OLD | NEW |