Index: /trunk/src/VBox/Frontends/VirtualBox/src/globals/UIActionPool.cpp
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/globals/UIActionPool.cpp	(revision 52554)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/globals/UIActionPool.cpp	(revision 52555)
@@ -59,4 +59,8 @@
 UIMenu::UIMenu()
     : m_fShowToolTip(false)
+#ifdef Q_WS_MAC
+    , m_fConsumable(false)
+    , m_fConsumed(false)
+#endif /* Q_WS_MAC */
 {
 }
@@ -97,4 +101,9 @@
      * It will be set explicitly later. */
     setMenuRole(QAction::NoRole);
+}
+
+UIMenu* UIAction::menu() const
+{
+    return qobject_cast<UIMenu*>(QAction::menu());
 }
 
Index: /trunk/src/VBox/Frontends/VirtualBox/src/globals/UIActionPool.h
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/globals/UIActionPool.h	(revision 52554)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/globals/UIActionPool.h	(revision 52555)
@@ -80,6 +80,5 @@
 
 
-/** QMenu extension
-  * allowing to show tool-tips. */
+/** QMenu extension. */
 class UIMenu : public QMenu
 {
@@ -94,4 +93,16 @@
     void setShowToolTip(bool fShowToolTips) { m_fShowToolTip = fShowToolTips; }
 
+#ifdef Q_WS_MAC
+    /** Mac OS X: Returns whether this menu is consumable by the menu-bar. */
+    bool isConsumable() const { return m_fConsumable; }
+    /** Mac OS X: Defines whether this menu is @a fConsumable by the menu-bar. */
+    void setConsumable(bool fConsumable) { m_fConsumable = fConsumable; }
+
+    /** Mac OS X: Returns whether this menu is consumed by the menu-bar. */
+    bool isConsumed() const { return m_fConsumed; }
+    /** Mac OS X: Defines whether this menu is @a fConsumed by the menu-bar. */
+    void setConsumed(bool fConsumed) { m_fConsumed = fConsumed; }
+#endif /* Q_WS_MAC */
+
 protected:
 
@@ -103,4 +114,11 @@
     /** Holds whether tool-tip should be shown. */
     bool m_fShowToolTip;
+
+#ifdef Q_WS_MAC
+    /** Mac OS X: Holds whether this menu can be consumed by the menu-bar. */
+    bool m_fConsumable;
+    /** Mac OS X: Holds whether this menu is consumed by the menu-bar. */
+    bool m_fConsumed;
+#endif /* Q_WS_MAC */
 };
 
@@ -115,4 +133,7 @@
     /** Returns action type. */
     UIActionType type() const { return m_type; }
+
+    /** Returns menu contained by this action. */
+    UIMenu* menu() const;
 
     /** Returns action-pool this action belongs to. */
