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

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

Issue 4154002: New statusbar images for ChromeOS (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: '' Created 10 years, 1 month 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/status_area_button.h" 5 #include "chrome/browser/chromeos/status/status_area_button.h"
6 6
7 #include "gfx/canvas.h" 7 #include "gfx/canvas.h"
8 #include "gfx/skbitmap_operations.h" 8 #include "gfx/skbitmap_operations.h"
9 #include "grit/theme_resources.h" 9 #include "grit/theme_resources.h"
10 #include "views/border.h" 10 #include "views/border.h"
(...skipping 16 matching lines...) Expand all
27 void StatusAreaButton::Paint(gfx::Canvas* canvas, bool for_drag) { 27 void StatusAreaButton::Paint(gfx::Canvas* canvas, bool for_drag) {
28 if (state() == BS_PUSHED) { 28 if (state() == BS_PUSHED) {
29 // Apply 10% white when pushed down. 29 // Apply 10% white when pushed down.
30 canvas->FillRectInt(SkColorSetARGB(0x19, 0xFF, 0xFF, 0xFF), 30 canvas->FillRectInt(SkColorSetARGB(0x19, 0xFF, 0xFF, 0xFF),
31 0, 0, width(), height()); 31 0, 0, width(), height());
32 } 32 }
33 33
34 if (use_menu_button_paint_) { 34 if (use_menu_button_paint_) {
35 views::MenuButton::Paint(canvas, for_drag); 35 views::MenuButton::Paint(canvas, for_drag);
36 } else { 36 } else {
37 if (state() == BS_PUSHED)
38 DrawPressed(canvas);
39
40 DrawIcon(canvas); 37 DrawIcon(canvas);
41 PaintFocusBorder(canvas); 38 PaintFocusBorder(canvas);
42 } 39 }
43 } 40 }
44 41
45 gfx::Size StatusAreaButton::GetPreferredSize() { 42 gfx::Size StatusAreaButton::GetPreferredSize() {
46 // icons are 24x24
47 static const int kIconWidth = 24;
48 static const int kIconHeight = 24;
49 gfx::Insets insets = views::MenuButton::GetInsets(); 43 gfx::Insets insets = views::MenuButton::GetInsets();
50 gfx::Size prefsize(kIconWidth + insets.width(), 44 gfx::Size prefsize(icon_width() + insets.width(),
51 kIconHeight + insets.height()); 45 icon_height() + insets.height());
52 46
53 // Adjusts size when use menu button paint. 47 // Adjusts size when use menu button paint.
54 if (use_menu_button_paint_) { 48 if (use_menu_button_paint_) {
55 gfx::Size menu_button_size = views::MenuButton::GetPreferredSize(); 49 gfx::Size menu_button_size = views::MenuButton::GetPreferredSize();
56 prefsize.SetSize( 50 prefsize.SetSize(
57 std::max(prefsize.width(), menu_button_size.width()), 51 std::max(prefsize.width(), menu_button_size.width()),
58 std::max(prefsize.height(), menu_button_size.height()) 52 std::max(prefsize.height(), menu_button_size.height())
59 ); 53 );
60 54
61 // Shift 1-pixel down for odd number of pixels in vertical space. 55 // Shift 1-pixel down for odd number of pixels in vertical space.
(...skipping 16 matching lines...) Expand all
78 // We clear that max text size, so we can adjust the size to fit the text. 72 // We clear that max text size, so we can adjust the size to fit the text.
79 ClearMaxTextSize(); 73 ClearMaxTextSize();
80 views::MenuButton::SetText(text); 74 views::MenuButton::SetText(text);
81 } 75 }
82 76
83 void StatusAreaButton::DrawIcon(gfx::Canvas* canvas) { 77 void StatusAreaButton::DrawIcon(gfx::Canvas* canvas) {
84 canvas->DrawBitmapInt(icon(), 0, 0); 78 canvas->DrawBitmapInt(icon(), 0, 0);
85 } 79 }
86 80
87 } // namespace chromeos 81 } // namespace chromeos
OLDNEW
« no previous file with comments | « chrome/browser/chromeos/status/status_area_button.h ('k') | chrome/browser/chromeos/status/status_area_view.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698