diff options
Diffstat (limited to 'include/cru/osx/gui/Menu.h')
-rw-r--r-- | include/cru/osx/gui/Menu.h | 67 |
1 files changed, 0 insertions, 67 deletions
diff --git a/include/cru/osx/gui/Menu.h b/include/cru/osx/gui/Menu.h deleted file mode 100644 index c5cc756a..00000000 --- a/include/cru/osx/gui/Menu.h +++ /dev/null @@ -1,67 +0,0 @@ -#pragma once -#include "Resource.h" - -#include "cru/platform/gui/Menu.h" - -namespace cru::platform::gui::osx { -namespace details { -struct OsxMenuItemPrivate; -struct OsxMenuPrivate; -} // namespace details - -class OsxMenu; - -class OsxMenuItem : public OsxGuiResource, public virtual IMenuItem { - friend OsxMenu; - friend details::OsxMenuPrivate; - - private: - explicit OsxMenuItem(IUiApplication* ui_application); - - public: - CRU_DELETE_COPY(OsxMenuItem) - CRU_DELETE_MOVE(OsxMenuItem) - - ~OsxMenuItem() override; - - public: - String GetTitle() override; - void SetTitle(String title) override; - bool IsEnabled() override; - void SetEnabled(bool enabled) override; - IMenu* GetParentMenu() override; - IMenu* GetSubmenu() override; - void SetKeyboardShortcut(KeyCode key, KeyModifier modifiers) override; - void DeleteKeyboardShortcut() override; - void SetOnClickHandler(std::function<void()> handler) override; - - private: - details::OsxMenuItemPrivate* p_; -}; - -class OsxMenu : public OsxGuiResource, public virtual IMenu { - friend OsxMenuItem; - friend details::OsxMenuPrivate; - friend details::OsxMenuItemPrivate; - - private: - explicit OsxMenu(IUiApplication* ui_application); - - public: - static OsxMenu* CreateOrGetApplicationMenu(IUiApplication* ui_application); - - CRU_DELETE_COPY(OsxMenu) - CRU_DELETE_MOVE(OsxMenu) - - ~OsxMenu() override; - - public: - IMenuItem* GetItemAt(int index) override; - int GetItemCount() override; - IMenuItem* CreateItemAt(int index) override; - void RemoveItemAt(int index) override; - - private: - details::OsxMenuPrivate* p_; -}; -} // namespace cru::platform::gui::osx |