OLD | NEW |
1 // Copyright (c) 2012 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/controls/menu/menu_win.h" | 5 #include "ui/views/controls/menu/menu_win.h" |
6 | 6 |
7 #include <string> | 7 #include <string> |
8 | 8 |
9 #include "base/logging.h" | 9 #include "base/logging.h" |
10 #include "base/stl_util.h" | 10 #include "base/stl_util.h" |
11 #include "base/strings/string_util.h" | 11 #include "base/strings/string_util.h" |
12 #include "ui/base/accelerators/accelerator.h" | 12 #include "ui/base/accelerators/accelerator.h" |
13 #include "ui/base/keycodes/keyboard_codes.h" | 13 #include "ui/base/keycodes/keyboard_codes.h" |
14 #include "ui/base/l10n/l10n_util.h" | 14 #include "ui/base/l10n/l10n_util.h" |
15 #include "ui/base/l10n/l10n_util_win.h" | 15 #include "ui/base/l10n/l10n_util_win.h" |
16 #include "ui/base/win/window_impl.h" | |
17 #include "ui/gfx/canvas.h" | 16 #include "ui/gfx/canvas.h" |
18 #include "ui/gfx/font.h" | 17 #include "ui/gfx/font.h" |
19 #include "ui/gfx/rect.h" | 18 #include "ui/gfx/rect.h" |
| 19 #include "ui/gfx/win/window_impl.h" |
20 | 20 |
21 namespace views { | 21 namespace views { |
22 | 22 |
23 // The width of an icon, including the pixels between the icon and | 23 // The width of an icon, including the pixels between the icon and |
24 // the item label. | 24 // the item label. |
25 const int kIconWidth = 23; | 25 const int kIconWidth = 23; |
26 // Margins between the top of the item and the label. | 26 // Margins between the top of the item and the label. |
27 const int kItemTopMargin = 3; | 27 const int kItemTopMargin = 3; |
28 // Margins between the bottom of the item and the label. | 28 // Margins between the bottom of the item and the label. |
29 const int kItemBottomMargin = 4; | 29 const int kItemBottomMargin = 4; |
(...skipping 25 matching lines...) Expand all Loading... |
55 GetMenuItemInfo(hMenu, pos, TRUE, &mii); | 55 GetMenuItemInfo(hMenu, pos, TRUE, &mii); |
56 return mii.wID; | 56 return mii.wID; |
57 } | 57 } |
58 | 58 |
59 // MenuHostWindow ------------------------------------------------------------- | 59 // MenuHostWindow ------------------------------------------------------------- |
60 | 60 |
61 // MenuHostWindow is the HWND the HMENU is parented to. MenuHostWindow is used | 61 // MenuHostWindow is the HWND the HMENU is parented to. MenuHostWindow is used |
62 // to intercept right clicks on the HMENU and notify the delegate as well as | 62 // to intercept right clicks on the HMENU and notify the delegate as well as |
63 // for drawing icons. | 63 // for drawing icons. |
64 // | 64 // |
65 class MenuHostWindow : public ui::WindowImpl { | 65 class MenuHostWindow : public gfx::WindowImpl { |
66 public: | 66 public: |
67 MenuHostWindow(MenuWin* menu, HWND parent_window) : menu_(menu) { | 67 MenuHostWindow(MenuWin* menu, HWND parent_window) : menu_(menu) { |
68 int extended_style = 0; | 68 int extended_style = 0; |
69 // If the menu needs to be created with a right-to-left UI layout, we must | 69 // If the menu needs to be created with a right-to-left UI layout, we must |
70 // set the appropriate RTL flags (such as WS_EX_LAYOUTRTL) property for the | 70 // set the appropriate RTL flags (such as WS_EX_LAYOUTRTL) property for the |
71 // underlying HWND. | 71 // underlying HWND. |
72 if (menu_->delegate()->IsRightToLeftUILayout()) | 72 if (menu_->delegate()->IsRightToLeftUILayout()) |
73 extended_style |= l10n_util::GetExtendedStyles(); | 73 extended_style |= l10n_util::GetExtendedStyles(); |
74 set_window_style(WS_CHILD); | 74 set_window_style(WS_CHILD); |
75 set_window_ex_style(extended_style); | 75 set_window_ex_style(extended_style); |
(...skipping 489 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
565 break; | 565 break; |
566 | 566 |
567 default: | 567 default: |
568 NOTREACHED(); | 568 NOTREACHED(); |
569 return 0; | 569 return 0; |
570 } | 570 } |
571 return align_flags; | 571 return align_flags; |
572 } | 572 } |
573 | 573 |
574 } // namespace views | 574 } // namespace views |
OLD | NEW |