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

Side by Side Diff: views/controls/menu/submenu_view.h

Issue 7491083: Implemented nicer battery status (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Review fix Created 9 years, 4 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 | « views/controls/menu/menu_item_view_win.cc ('k') | views/controls/menu/submenu_view.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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 VIEWS_CONTROLS_MENU_SUBMENU_VIEW_H_ 5 #ifndef VIEWS_CONTROLS_MENU_SUBMENU_VIEW_H_
6 #define VIEWS_CONTROLS_MENU_SUBMENU_VIEW_H_ 6 #define VIEWS_CONTROLS_MENU_SUBMENU_VIEW_H_
7 #pragma once 7 #pragma once
8 8
9 #include <string> 9 #include <string>
10 10
(...skipping 118 matching lines...) Expand 10 before | Expand all | Expand 10 after
129 // Max width of accelerators in child menu items. This doesn't include 129 // Max width of accelerators in child menu items. This doesn't include
130 // children's children, only direct children. 130 // children's children, only direct children.
131 int max_accelerator_width() const { return max_accelerator_width_; } 131 int max_accelerator_width() const { return max_accelerator_width_; }
132 132
133 // Minimum width of menu in pixels (default 0). This becomes the smallest 133 // Minimum width of menu in pixels (default 0). This becomes the smallest
134 // width returned by GetPreferredSize(). 134 // width returned by GetPreferredSize().
135 void set_minimum_preferred_width(int minimum_preferred_width) { 135 void set_minimum_preferred_width(int minimum_preferred_width) {
136 minimum_preferred_width_ = minimum_preferred_width; 136 minimum_preferred_width_ = minimum_preferred_width;
137 } 137 }
138 138
139 // Automatically resize menu if a subview's preferred size changes.
140 bool resize_open_menu() const { return resize_open_menu_; }
141 void set_resize_open_menu(bool resize_open_menu) {
142 resize_open_menu_ = resize_open_menu;
143 }
144
139 // Padding around the edges of the submenu. 145 // Padding around the edges of the submenu.
140 static const int kSubmenuBorderSize; 146 static const int kSubmenuBorderSize;
141 147
142 protected: 148 protected:
143 // View override. 149 // View override.
144 virtual std::string GetClassName() const OVERRIDE; 150 virtual std::string GetClassName() const OVERRIDE;
145 151
146 // View method. Overridden to schedule a paint. We do this so that when 152 // View method. Overridden to schedule a paint. We do this so that when
147 // scrolling occurs, everything is repainted correctly. 153 // scrolling occurs, everything is repainted correctly.
148 virtual void OnBoundsChanged(const gfx::Rect& previous_bounds) OVERRIDE; 154 virtual void OnBoundsChanged(const gfx::Rect& previous_bounds) OVERRIDE;
149 155
156 virtual void ChildPreferredSizeChanged(View* child) OVERRIDE;
150 157
151 private: 158 private:
152 // Paints the drop indicator. This is only invoked if item is non-NULL and 159 // Paints the drop indicator. This is only invoked if item is non-NULL and
153 // position is not DROP_NONE. 160 // position is not DROP_NONE.
154 void PaintDropIndicator(gfx::Canvas* canvas, 161 void PaintDropIndicator(gfx::Canvas* canvas,
155 MenuItemView* item, 162 MenuItemView* item,
156 MenuDelegate::DropPosition position); 163 MenuDelegate::DropPosition position);
157 164
158 void SchedulePaintForDropIndicator(MenuItemView* item, 165 void SchedulePaintForDropIndicator(MenuItemView* item,
159 MenuDelegate::DropPosition position); 166 MenuDelegate::DropPosition position);
(...skipping 18 matching lines...) Expand all
178 185
179 // Ancestor of the SubmenuView, lazily created. 186 // Ancestor of the SubmenuView, lazily created.
180 MenuScrollViewContainer* scroll_view_container_; 187 MenuScrollViewContainer* scroll_view_container_;
181 188
182 // See description above getter. 189 // See description above getter.
183 int max_accelerator_width_; 190 int max_accelerator_width_;
184 191
185 // Minimum width returned in GetPreferredSize(). 192 // Minimum width returned in GetPreferredSize().
186 int minimum_preferred_width_; 193 int minimum_preferred_width_;
187 194
195 // Reposition open menu when contained views change size.
196 bool resize_open_menu_;
197
188 DISALLOW_COPY_AND_ASSIGN(SubmenuView); 198 DISALLOW_COPY_AND_ASSIGN(SubmenuView);
189 }; 199 };
190 200
191 } // namespace views 201 } // namespace views
192 202
193 #endif // VIEWS_CONTROLS_MENU_SUBMENU_VIEW_H_ 203 #endif // VIEWS_CONTROLS_MENU_SUBMENU_VIEW_H_
OLDNEW
« no previous file with comments | « views/controls/menu/menu_item_view_win.cc ('k') | views/controls/menu/submenu_view.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698