#include "ui/views/controls/menu/menu_delegate.h"
#include "base/functional/callback_helpers.h"
#include "base/notreached.h"
#include "ui/base/dragdrop/mojom/drag_drop_types.mojom.h"
#include "ui/events/event.h"
#include "ui/views/controls/menu/menu_config.h"
namespace views {
MenuDelegate::~MenuDelegate() = default;
bool MenuDelegate::IsItemChecked(int id) const { … }
std::u16string MenuDelegate::GetLabel(int id) const { … }
const gfx::FontList* MenuDelegate::GetLabelFontList(int id) const { … }
std::optional<SkColor> MenuDelegate::GetLabelColor(int id) const { … }
std::u16string MenuDelegate::GetTooltipText(
int id,
const gfx::Point& screen_loc) const { … }
bool MenuDelegate::GetAccelerator(int id, ui::Accelerator* accelerator) const { … }
bool MenuDelegate::ShowContextMenu(MenuItemView* source,
int id,
const gfx::Point& p,
ui::MenuSourceType source_type) { … }
bool MenuDelegate::SupportsCommand(int id) const { … }
bool MenuDelegate::IsCommandEnabled(int id) const { … }
bool MenuDelegate::IsCommandVisible(int id) const { … }
bool MenuDelegate::GetContextualLabel(int id, std::u16string* out) const { … }
bool MenuDelegate::ShouldCloseAllMenusOnExecute(int id) { … }
void MenuDelegate::ExecuteCommand(int id, int mouse_event_flags) { … }
bool MenuDelegate::ShouldExecuteCommandWithoutClosingMenu(int id,
const ui::Event& e) { … }
bool MenuDelegate::IsTriggerableEvent(MenuItemView* source,
const ui::Event& e) { … }
bool MenuDelegate::CanDrop(MenuItemView* menu, const OSExchangeData& data) { … }
bool MenuDelegate::GetDropFormats(
MenuItemView* menu,
int* formats,
std::set<ui::ClipboardFormatType>* format_types) { … }
bool MenuDelegate::AreDropTypesRequired(MenuItemView* menu) { … }
ui::mojom::DragOperation MenuDelegate::GetDropOperation(
MenuItemView* item,
const ui::DropTargetEvent& event,
DropPosition* position) { … }
views::View::DropCallback MenuDelegate::GetDropCallback(
MenuItemView* menu,
DropPosition position,
const ui::DropTargetEvent& event) { … }
bool MenuDelegate::CanDrag(MenuItemView* menu) { … }
void MenuDelegate::WriteDragData(MenuItemView* sender, OSExchangeData* data) { … }
int MenuDelegate::GetDragOperations(MenuItemView* sender) { … }
bool MenuDelegate::ShouldCloseOnDragComplete() { … }
MenuItemView* MenuDelegate::GetSiblingMenu(MenuItemView* menu,
const gfx::Point& screen_point,
MenuAnchorPosition* anchor,
bool* has_mnemonics,
MenuButton** button) { … }
int MenuDelegate::GetMaxWidthForMenu(MenuItemView* menu) { … }
void MenuDelegate::WillShowMenu(MenuItemView* menu) { … }
void MenuDelegate::WillHideMenu(MenuItemView* menu) { … }
bool MenuDelegate::ShouldTryPositioningBesideAnchor() const { … }
bool MenuDelegate::IsTearingDown() const { … }
}