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

Side by Side Diff: frontend/client/src/autotest/afe/UserPreferencesView.java

Issue 3554003: Merge remote branch 'cros/upstream' into tempbranch3 (Closed) Base URL: http://git.chromium.org/git/autotest.git
Patch Set: Created 10 years, 2 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
OLDNEW
1 package autotest.afe; 1 package autotest.afe;
2 2
3 import autotest.common.JsonRpcCallback; 3 import autotest.common.JsonRpcCallback;
4 import autotest.common.JsonRpcProxy; 4 import autotest.common.JsonRpcProxy;
5 import autotest.common.StaticDataRepository; 5 import autotest.common.StaticDataRepository;
6 import autotest.common.StaticDataRepository.FinishedCallback;
6 import autotest.common.Utils; 7 import autotest.common.Utils;
7 import autotest.common.StaticDataRepository.FinishedCallback;
8 import autotest.common.ui.RadioChooser; 8 import autotest.common.ui.RadioChooser;
9 import autotest.common.ui.RadioChooserDisplay;
9 import autotest.common.ui.TabView; 10 import autotest.common.ui.TabView;
10 11
11 import com.google.gwt.event.dom.client.ClickEvent; 12 import com.google.gwt.event.dom.client.ClickEvent;
12 import com.google.gwt.event.dom.client.ClickHandler; 13 import com.google.gwt.event.dom.client.ClickHandler;
13 import com.google.gwt.json.client.JSONBoolean; 14 import com.google.gwt.json.client.JSONBoolean;
14 import com.google.gwt.json.client.JSONObject; 15 import com.google.gwt.json.client.JSONObject;
15 import com.google.gwt.json.client.JSONString; 16 import com.google.gwt.json.client.JSONString;
16 import com.google.gwt.json.client.JSONValue; 17 import com.google.gwt.json.client.JSONValue;
17 import com.google.gwt.user.client.ui.Button; 18 import com.google.gwt.user.client.ui.Button;
18 import com.google.gwt.user.client.ui.CheckBox; 19 import com.google.gwt.user.client.ui.CheckBox;
19 import com.google.gwt.user.client.ui.FlexTable; 20 import com.google.gwt.user.client.ui.FlexTable;
20 import com.google.gwt.user.client.ui.HTMLTable; 21 import com.google.gwt.user.client.ui.HTMLTable;
21 import com.google.gwt.user.client.ui.ListBox; 22 import com.google.gwt.user.client.ui.ListBox;
22 import com.google.gwt.user.client.ui.Panel; 23 import com.google.gwt.user.client.ui.Panel;
23 import com.google.gwt.user.client.ui.VerticalPanel; 24 import com.google.gwt.user.client.ui.VerticalPanel;
24 import com.google.gwt.user.client.ui.Widget; 25 import com.google.gwt.user.client.ui.Widget;
25 26
26 public class UserPreferencesView extends TabView implements ClickHandler { 27 public class UserPreferencesView extends TabView implements ClickHandler {
27 private static final StaticDataRepository staticData = StaticDataRepository. getRepository(); 28 private static final StaticDataRepository staticData = StaticDataRepository. getRepository();
28 private static final JsonRpcProxy proxy = JsonRpcProxy.getProxy(); 29 private static final JsonRpcProxy proxy = JsonRpcProxy.getProxy();
29 30
30 public static interface UserPreferencesListener { 31 public static interface UserPreferencesListener {
31 public void onPreferencesChanged(); 32 public void onPreferencesChanged();
32 } 33 }
33 34
34 private JSONObject user; 35 private JSONObject user;
35 private UserPreferencesListener listener; 36 private UserPreferencesListener listener;
36 37
37 private RadioChooser rebootBefore = new RadioChooser(); 38 private RadioChooser rebootBefore = new RadioChooser();
38 private RadioChooser rebootAfter = new RadioChooser(); 39 private RadioChooser rebootAfter = new RadioChooser();
39 private ListBox droneSet = new ListBox(); 40 private ListBox droneSet = new ListBox();
40 private CheckBox showExperimental = new CheckBox(); 41 private CheckBox showExperimental = new CheckBox();
41 private Button saveButton = new Button("Save preferences"); 42 private Button saveButton = new Button("Save preferences");
42 private HTMLTable preferencesTable = new FlexTable(); 43 private HTMLTable preferencesTable = new FlexTable();
43 44
44 public UserPreferencesView(UserPreferencesListener listener) { 45 public UserPreferencesView(UserPreferencesListener listener) {
45 this.listener = listener; 46 this.listener = listener;
46 } 47 }
47 48
48 @Override 49 @Override
49 public String getElementId() { 50 public String getElementId() {
50 return "user_preferences"; 51 return "user_preferences";
51 } 52 }
52 53
53 @Override 54 @Override
54 public void initialize() { 55 public void initialize() {
55 super.initialize(); 56 super.initialize();
57
58 RadioChooserDisplay rebootBeforeDisplay = new RadioChooserDisplay();
59 RadioChooserDisplay rebootAfterDisplay = new RadioChooserDisplay();
60 rebootBefore.bindDisplay(rebootBeforeDisplay);
61 rebootAfter.bindDisplay(rebootAfterDisplay);
62
56 Panel container = new VerticalPanel(); 63 Panel container = new VerticalPanel();
57 AfeUtils.populateRadioChooser(rebootBefore, "reboot_before"); 64 AfeUtils.populateRadioChooser(rebootBefore, "reboot_before");
58 AfeUtils.populateRadioChooser(rebootAfter, "reboot_after"); 65 AfeUtils.populateRadioChooser(rebootAfter, "reboot_after");
59 66
60 saveButton.addClickHandler(this); 67 saveButton.addClickHandler(this);
61 68
62 addOption("Reboot before", rebootBefore); 69 addOption("Reboot before", rebootBeforeDisplay);
63 addOption("Reboot after", rebootAfter); 70 addOption("Reboot after", rebootAfterDisplay);
64 addOption("Show experimental tests", showExperimental); 71 addOption("Show experimental tests", showExperimental);
65 if (staticData.getData("drone_sets_enabled").isBoolean().booleanValue()) { 72 if (staticData.getData("drone_sets_enabled").isBoolean().booleanValue()) {
66 AfeUtils.popualateListBox(droneSet, "drone_sets"); 73 AfeUtils.populateListBox(droneSet, "drone_sets");
67 addOption("Drone set", droneSet); 74 addOption("Drone set", droneSet);
68 } 75 }
69 76
70 container.add(preferencesTable); 77 container.add(preferencesTable);
71 container.add(saveButton); 78 container.add(saveButton);
72 addWidget(container, "user_preferences_table"); 79 addWidget(container, "user_preferences_table");
73 } 80 }
74 81
75 @Override 82 @Override
76 public void refresh() { 83 public void refresh() {
77 staticData.refresh(new FinishedCallback() { 84 staticData.refresh(new FinishedCallback() {
78 public void onFinished() { 85 public void onFinished() {
79 user = staticData.getData("current_user").isObject(); 86 user = staticData.getData("current_user").isObject();
80 updateValues(); 87 updateValues();
81 if (listener != null) { 88 if (listener != null) {
82 listener.onPreferencesChanged(); 89 listener.onPreferencesChanged();
83 } 90 }
84 } 91 }
85 }); 92 });
86 } 93 }
87 94
88 private void updateValues() { 95 private void updateValues() {
89 rebootBefore.setSelectedChoice(getValue("reboot_before")); 96 rebootBefore.setSelectedChoice(getValue("reboot_before"));
90 rebootAfter.setSelectedChoice(getValue("reboot_after")); 97 rebootAfter.setSelectedChoice(getValue("reboot_after"));
91 AfeUtils.setSelectedItem(droneSet, getValue("drone_set")); 98 AfeUtils.setSelectedItem(droneSet, getValue("drone_set"));
92 99
93 showExperimental.setValue(user.get("show_experimental").isBoolean().bool eanValue()); 100 showExperimental.setValue(user.get("show_experimental").isBoolean().bool eanValue());
94 } 101 }
95 102
96 private String getValue(String key) { 103 private String getValue(String key) {
97 return Utils.jsonToString(user.get(key)); 104 return Utils.jsonToString(user.get(key));
98 } 105 }
99 106
100 public void onClick(ClickEvent event) { 107 public void onClick(ClickEvent event) {
101 assert event.getSource() == saveButton; 108 assert event.getSource() == saveButton;
102 saveValues(); 109 saveValues();
103 } 110 }
104 111
105 private void saveValues() { 112 private void saveValues() {
(...skipping 10 matching lines...) Expand all
116 } 123 }
117 }); 124 });
118 } 125 }
119 126
120 private void addOption(String name, Widget widget) { 127 private void addOption(String name, Widget widget) {
121 int row = preferencesTable.getRowCount(); 128 int row = preferencesTable.getRowCount();
122 preferencesTable.setText(row, 0, name); 129 preferencesTable.setText(row, 0, name);
123 preferencesTable.setWidget(row, 1, widget); 130 preferencesTable.setWidget(row, 1, widget);
124 } 131 }
125 } 132 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698