Index: ui/views/controls/menu/menu_item_view.h |
diff --git a/ui/views/controls/menu/menu_item_view.h b/ui/views/controls/menu/menu_item_view.h |
index 4f33f10ed3282d01ab927247f86d382b354052b2..4512681f972370a45563071f27500dbe4a9a8e29 100644 |
--- a/ui/views/controls/menu/menu_item_view.h |
+++ b/ui/views/controls/menu/menu_item_view.h |
@@ -14,6 +14,7 @@ |
#include "build/build_config.h" |
#include "ui/base/models/menu_separator_types.h" |
#include "ui/gfx/image/image_skia.h" |
+#include "ui/views/controls/menu/menu_config.h" |
#include "ui/views/view.h" |
#if defined(OS_WIN) |
@@ -36,7 +37,6 @@ namespace internal { |
class MenuRunnerImpl; |
} |
-struct MenuConfig; |
class MenuController; |
class MenuDelegate; |
class SubmenuView; |
@@ -320,6 +320,15 @@ class VIEWS_EXPORT MenuItemView : public View { |
use_right_margin_ = use_right_margin; |
} |
+ // Sets MenuConfig to be used instead of default one. |
+ // Setting |menu_config_| to NULL will make menu to use a default MenuConfig. |
+ void set_menu_config(const MenuConfig* menu_config) { |
+ menu_config_.reset(menu_config); |
+ } |
+ |
+ // Returns a reference to MenuConfig to be used with this menu. |
+ const MenuConfig& GetMenuConfig() const; |
+ |
protected: |
// Creates a MenuItemView. This is used by the various AddXXX methods. |
MenuItemView(MenuItemView* parent, int command, Type type); |
@@ -500,6 +509,10 @@ class VIEWS_EXPORT MenuItemView : public View { |
// containing other elements. |
bool use_right_margin_; |
+ // |menu_config_| to replace default one, could be NULL, |
+ // applies to root menu item only. |
+ scoped_ptr<const MenuConfig> menu_config_; |
+ |
DISALLOW_COPY_AND_ASSIGN(MenuItemView); |
}; |