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

Side by Side Diff: app/table_model.h

Issue 6044007: Remove wstring from TableModel.... (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: Created 9 years, 12 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 | Annotate | Revision Log
« no previous file with comments | « no previous file | app/table_model.cc » ('j') | chrome/browser/custom_home_pages_table_model.h » ('J')
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 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 #ifndef APP_TABLE_MODEL_H_ 5 #ifndef APP_TABLE_MODEL_H_
6 #define APP_TABLE_MODEL_H_ 6 #define APP_TABLE_MODEL_H_
7 #pragma once 7 #pragma once
8 8
9 #include <string> 9 #include <string>
viettrungluu 2010/12/29 23:41:17 No longer needed?
Avi (use Gerrit) 2010/12/30 00:04:15 Done.
10 #include <vector> 10 #include <vector>
11 11
12 #include "base/string16.h"
12 #include "unicode/coll.h" 13 #include "unicode/coll.h"
13 14
14 class SkBitmap; 15 class SkBitmap;
15 16
16 class TableModelObserver; 17 class TableModelObserver;
17 18
18 // The model driving the TableView. 19 // The model driving the TableView.
19 class TableModel { 20 class TableModel {
20 public: 21 public:
21 // See HasGroups, get GetGroupID for details as to how this is used. 22 // See HasGroups, get GetGroupID for details as to how this is used.
22 struct Group { 23 struct Group {
23 // The title text for the group. 24 // The title text for the group.
24 std::wstring title; 25 string16 title;
25 26
26 // Unique id for the group. 27 // Unique id for the group.
27 int id; 28 int id;
28 }; 29 };
29 typedef std::vector<Group> Groups; 30 typedef std::vector<Group> Groups;
30 31
31 // Number of rows in the model. 32 // Number of rows in the model.
32 virtual int RowCount() = 0; 33 virtual int RowCount() = 0;
33 34
34 // Returns the value at a particular location in text. 35 // Returns the value at a particular location in text.
35 virtual std::wstring GetText(int row, int column_id) = 0; 36 virtual string16 GetText(int row, int column_id) = 0;
36 37
37 // Returns the small icon (16x16) that should be displayed in the first 38 // Returns the small icon (16x16) that should be displayed in the first
38 // column before the text. This is only used when the TableView was created 39 // column before the text. This is only used when the TableView was created
39 // with the ICON_AND_TEXT table type. Returns an isNull() bitmap if there is 40 // with the ICON_AND_TEXT table type. Returns an isNull() bitmap if there is
40 // no bitmap. 41 // no bitmap.
41 virtual SkBitmap GetIcon(int row); 42 virtual SkBitmap GetIcon(int row);
42 43
43 // Returns the tooltip, if any, to show for a particular row. If there are 44 // Returns the tooltip, if any, to show for a particular row. If there are
44 // multiple columns in the row, this will only be shown when hovering over 45 // multiple columns in the row, this will only be shown when hovering over
45 // column zero. 46 // column zero.
46 virtual std::wstring GetTooltip(int row); 47 virtual string16 GetTooltip(int row);
47 48
48 // If true, this row should be indented. 49 // If true, this row should be indented.
49 virtual bool ShouldIndent(int row); 50 virtual bool ShouldIndent(int row);
50 51
51 // Returns true if the TableView has groups. Groups provide a way to visually 52 // Returns true if the TableView has groups. Groups provide a way to visually
52 // delineate the rows in a table view. When groups are enabled table view 53 // delineate the rows in a table view. When groups are enabled table view
53 // shows a visual separator for each group, followed by all the rows in 54 // shows a visual separator for each group, followed by all the rows in
54 // the group. 55 // the group.
55 // 56 //
56 // On win2k a visual separator is not rendered for the group headers. 57 // On win2k a visual separator is not rendered for the group headers.
(...skipping 29 matching lines...) Expand all
86 icu::Collator* GetCollator(); 87 icu::Collator* GetCollator();
87 }; 88 };
88 89
89 // TableColumn specifies the title, alignment and size of a particular column. 90 // TableColumn specifies the title, alignment and size of a particular column.
90 struct TableColumn { 91 struct TableColumn {
91 enum Alignment { 92 enum Alignment {
92 LEFT, RIGHT, CENTER 93 LEFT, RIGHT, CENTER
93 }; 94 };
94 95
95 TableColumn(); 96 TableColumn();
96 TableColumn(int id, const std::wstring& title, 97 TableColumn(int id, const string16& title,
97 Alignment alignment, int width); 98 Alignment alignment, int width);
98 TableColumn(int id, const std::wstring& title, 99 TableColumn(int id, const string16& title,
99 Alignment alignment, int width, float percent); 100 Alignment alignment, int width, float percent);
100 101
101 // It's common (but not required) to use the title's IDS_* tag as the column 102 // It's common (but not required) to use the title's IDS_* tag as the column
102 // id. In this case, the provided conveniences look up the title string on 103 // id. In this case, the provided conveniences look up the title string on
103 // bahalf of the caller. 104 // bahalf of the caller.
104 TableColumn(int id, Alignment alignment, int width); 105 TableColumn(int id, Alignment alignment, int width);
105 TableColumn(int id, Alignment alignment, int width, float percent); 106 TableColumn(int id, Alignment alignment, int width, float percent);
106 107
107 // A unique identifier for the column. 108 // A unique identifier for the column.
108 int id; 109 int id;
109 110
110 // The title for the column. 111 // The title for the column.
111 std::wstring title; 112 string16 title;
112 113
113 // Alignment for the content. 114 // Alignment for the content.
114 Alignment alignment; 115 Alignment alignment;
115 116
116 // The size of a column may be specified in two ways: 117 // The size of a column may be specified in two ways:
117 // 1. A fixed width. Set the width field to a positive number and the 118 // 1. A fixed width. Set the width field to a positive number and the
118 // column will be given that width, in pixels. 119 // column will be given that width, in pixels.
119 // 2. As a percentage of the available width. If width is -1, and percent is 120 // 2. As a percentage of the available width. If width is -1, and percent is
120 // > 0, the column is given a width of 121 // > 0, the column is given a width of
121 // available_width * percent / total_percent. 122 // available_width * percent / total_percent.
(...skipping 10 matching lines...) Expand all
132 // The minimum width required for all items in this column 133 // The minimum width required for all items in this column
133 // (including the header) 134 // (including the header)
134 // to be visible. 135 // to be visible.
135 int min_visible_width; 136 int min_visible_width;
136 137
137 // Is this column sortable? Default is false 138 // Is this column sortable? Default is false
138 bool sortable; 139 bool sortable;
139 }; 140 };
140 141
141 #endif // APP_TABLE_MODEL_H_ 142 #endif // APP_TABLE_MODEL_H_
OLDNEW
« no previous file with comments | « no previous file | app/table_model.cc » ('j') | chrome/browser/custom_home_pages_table_model.h » ('J')

Powered by Google App Engine
This is Rietveld 408576698