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

Side by Side Diff: chrome/browser/chromeos/status/network_menu.cc

Issue 3748005: Update icons to show lowdata and very lowdata for 3G data.... (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
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 // 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 #include "chrome/browser/chromeos/status/network_menu.h" 5 #include "chrome/browser/chromeos/status/network_menu.h"
6 6
7 #include "app/l10n_util.h" 7 #include "app/l10n_util.h"
8 #include "app/resource_bundle.h" 8 #include "app/resource_bundle.h"
9 #include "base/command_line.h" 9 #include "base/command_line.h"
10 #include "base/stringprintf.h" 10 #include "base/stringprintf.h"
(...skipping 27 matching lines...) Expand all
38 } 38 }
39 39
40 namespace chromeos { 40 namespace chromeos {
41 41
42 //////////////////////////////////////////////////////////////////////////////// 42 ////////////////////////////////////////////////////////////////////////////////
43 // NetworkMenu 43 // NetworkMenu
44 44
45 // static 45 // static
46 const int NetworkMenu::kNumWifiImages = 9; 46 const int NetworkMenu::kNumWifiImages = 9;
47 47
48 // NOTE: Use an array rather than just calculating a resource number to avoid
49 // creating implicit ordering dependencies on the resource values.
50 // static
51 const int NetworkMenu::kBarsImages[kNumWifiImages] = {
52 IDR_STATUSBAR_NETWORK_BARS1,
53 IDR_STATUSBAR_NETWORK_BARS2,
54 IDR_STATUSBAR_NETWORK_BARS3,
55 IDR_STATUSBAR_NETWORK_BARS4,
56 IDR_STATUSBAR_NETWORK_BARS5,
57 IDR_STATUSBAR_NETWORK_BARS6,
58 IDR_STATUSBAR_NETWORK_BARS7,
59 IDR_STATUSBAR_NETWORK_BARS8,
60 IDR_STATUSBAR_NETWORK_BARS9,
61 };
62 // static
63 const int NetworkMenu::kBarsImagesBlack[kNumWifiImages] = {
64 IDR_STATUSBAR_NETWORK_BARS1_BLACK,
65 IDR_STATUSBAR_NETWORK_BARS2_BLACK,
66 IDR_STATUSBAR_NETWORK_BARS3_BLACK,
67 IDR_STATUSBAR_NETWORK_BARS4_BLACK,
68 IDR_STATUSBAR_NETWORK_BARS5_BLACK,
69 IDR_STATUSBAR_NETWORK_BARS6_BLACK,
70 IDR_STATUSBAR_NETWORK_BARS7_BLACK,
71 IDR_STATUSBAR_NETWORK_BARS8_BLACK,
72 IDR_STATUSBAR_NETWORK_BARS9_BLACK,
73 };
74 // static
75 const int NetworkMenu::kBarsImagesLowData[kNumWifiImages] = {
76 IDR_STATUSBAR_NETWORK_BARS1_LOWDATA,
77 IDR_STATUSBAR_NETWORK_BARS2_LOWDATA,
78 IDR_STATUSBAR_NETWORK_BARS3_LOWDATA,
79 IDR_STATUSBAR_NETWORK_BARS4_LOWDATA,
80 IDR_STATUSBAR_NETWORK_BARS5_LOWDATA,
81 IDR_STATUSBAR_NETWORK_BARS6_LOWDATA,
82 IDR_STATUSBAR_NETWORK_BARS7_LOWDATA,
83 IDR_STATUSBAR_NETWORK_BARS8_LOWDATA,
84 IDR_STATUSBAR_NETWORK_BARS9_LOWDATA,
85 };
86 // static
87 const int NetworkMenu::kBarsImagesVLowData[kNumWifiImages] = {
88 IDR_STATUSBAR_NETWORK_BARS1_VLOWDATA,
89 IDR_STATUSBAR_NETWORK_BARS2_VLOWDATA,
90 IDR_STATUSBAR_NETWORK_BARS3_VLOWDATA,
91 IDR_STATUSBAR_NETWORK_BARS4_VLOWDATA,
92 IDR_STATUSBAR_NETWORK_BARS5_VLOWDATA,
93 IDR_STATUSBAR_NETWORK_BARS6_VLOWDATA,
94 IDR_STATUSBAR_NETWORK_BARS7_VLOWDATA,
95 IDR_STATUSBAR_NETWORK_BARS8_VLOWDATA,
96 IDR_STATUSBAR_NETWORK_BARS9_VLOWDATA,
97 };
98
48 NetworkMenu::NetworkMenu() 99 NetworkMenu::NetworkMenu()
49 : min_width_(-1) { 100 : min_width_(-1) {
50 network_menu_.reset(NetworkMenuUI::CreateMenu2(this)); 101 network_menu_.reset(NetworkMenuUI::CreateMenu2(this));
51 } 102 }
52 103
53 NetworkMenu::~NetworkMenu() { 104 NetworkMenu::~NetworkMenu() {
54 } 105 }
55 106
56 bool NetworkMenu::GetNetworkAt(int index, NetworkInfo* info) const { 107 bool NetworkMenu::GetNetworkAt(int index, NetworkInfo* info) const {
57 DCHECK(info); 108 DCHECK(info);
(...skipping 255 matching lines...) Expand 10 before | Expand all | Expand 10 after
313 void NetworkMenu::UpdateMenu() { 364 void NetworkMenu::UpdateMenu() {
314 refreshing_menu_ = true; 365 refreshing_menu_ = true;
315 InitMenuItems(); 366 InitMenuItems();
316 network_menu_->Rebuild(); 367 network_menu_->Rebuild();
317 refreshing_menu_ = false; 368 refreshing_menu_ = false;
318 } 369 }
319 370
320 // static 371 // static
321 SkBitmap NetworkMenu::IconForNetworkStrength(int strength, bool black) { 372 SkBitmap NetworkMenu::IconForNetworkStrength(int strength, bool black) {
322 // Compose wifi icon by superimposing various icons. 373 // Compose wifi icon by superimposing various icons.
323 // NOTE: Use an array rather than just calculating a resource number to avoid
324 // creating implicit ordering dependencies on the resource values.
325 static const int kBarsImages[kNumWifiImages] = {
326 IDR_STATUSBAR_NETWORK_BARS1,
327 IDR_STATUSBAR_NETWORK_BARS2,
328 IDR_STATUSBAR_NETWORK_BARS3,
329 IDR_STATUSBAR_NETWORK_BARS4,
330 IDR_STATUSBAR_NETWORK_BARS5,
331 IDR_STATUSBAR_NETWORK_BARS6,
332 IDR_STATUSBAR_NETWORK_BARS7,
333 IDR_STATUSBAR_NETWORK_BARS8,
334 IDR_STATUSBAR_NETWORK_BARS9,
335 };
336 static const int kBarsBlackImages[kNumWifiImages] = {
337 IDR_STATUSBAR_NETWORK_BARS1_BLACK,
338 IDR_STATUSBAR_NETWORK_BARS2_BLACK,
339 IDR_STATUSBAR_NETWORK_BARS3_BLACK,
340 IDR_STATUSBAR_NETWORK_BARS4_BLACK,
341 IDR_STATUSBAR_NETWORK_BARS5_BLACK,
342 IDR_STATUSBAR_NETWORK_BARS6_BLACK,
343 IDR_STATUSBAR_NETWORK_BARS7_BLACK,
344 IDR_STATUSBAR_NETWORK_BARS8_BLACK,
345 IDR_STATUSBAR_NETWORK_BARS9_BLACK,
346 };
347
348 int index = static_cast<int>(strength / 100.0 * 374 int index = static_cast<int>(strength / 100.0 *
349 nextafter(static_cast<float>(kNumWifiImages), 0)); 375 nextafter(static_cast<float>(kNumWifiImages), 0));
350 index = std::max(std::min(index, kNumWifiImages - 1), 0); 376 index = std::max(std::min(index, kNumWifiImages - 1), 0);
351 return *ResourceBundle::GetSharedInstance().GetBitmapNamed( 377 const int* images = black ? kBarsImagesBlack : kBarsImages;
352 black ? kBarsBlackImages[index] : kBarsImages[index]); 378 return *ResourceBundle::GetSharedInstance().GetBitmapNamed(images[index]);
379 }
380
381 SkBitmap NetworkMenu::IconForNetworkStrength(CellularNetwork cellular) {
382 // Compose wifi icon by superimposing various icons.
383 int index = static_cast<int>(cellular.strength() / 100.0 *
384 nextafter(static_cast<float>(kNumWifiImages), 0));
385 index = std::max(std::min(index, kNumWifiImages - 1), 0);
386 const int* images;
387 switch (cellular.data_left()) {
388 case CellularNetwork::DATA_NONE:
389 case CellularNetwork::DATA_VERY_LOW:
390 images = kBarsImagesVLowData;
391 break;
392 case CellularNetwork::DATA_LOW:
393 images = kBarsImagesLowData;
394 break;
395 case CellularNetwork::DATA_NORMAL:
396 images = kBarsImages;
397 break;
398 }
399 return *ResourceBundle::GetSharedInstance().GetBitmapNamed(images[index]);
353 } 400 }
354 401
355 // static 402 // static
356 SkBitmap NetworkMenu::IconForDisplay(SkBitmap icon, SkBitmap badge) { 403 SkBitmap NetworkMenu::IconForDisplay(SkBitmap icon, SkBitmap badge) {
357 // Icons are 24x24. 404 // Icons are 24x24.
358 static const int kIconWidth = 24; 405 static const int kIconWidth = 24;
359 static const int kIconHeight = 24; 406 static const int kIconHeight = 24;
360 // Draw the network icon 3 pixels down to center it. 407 // Draw the network icon 3 pixels down to center it.
361 static const int kIconX = 0; 408 static const int kIconX = 0;
362 static const int kIconY = 3; 409 static const int kIconY = 3;
(...skipping 208 matching lines...) Expand 10 before | Expand all | Expand 10 after
571 chromeos::TYPE_WIFI); 618 chromeos::TYPE_WIFI);
572 browser->ShowOptionsTab(page); 619 browser->ShowOptionsTab(page);
573 } 620 }
574 } else { 621 } else {
575 const bool kFocusLogin = true; 622 const bool kFocusLogin = true;
576 ShowNetworkConfigView(new NetworkConfigView(), kFocusLogin); 623 ShowNetworkConfigView(new NetworkConfigView(), kFocusLogin);
577 } 624 }
578 } 625 }
579 626
580 } // namespace chromeos 627 } // namespace chromeos
OLDNEW
« no previous file with comments | « chrome/browser/chromeos/status/network_menu.h ('k') | chrome/browser/chromeos/status/network_menu_button.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698