Open3D (C++ API)  0.17.0
Public Types | Public Member Functions | Static Public Attributes
open3d::visualization::gui::MenuBase Class Referenceabstract

#include <MenuBase.h>

Inheritance diagram for open3d::visualization::gui::MenuBase:
open3d::visualization::gui::Menu open3d::visualization::gui::MenuImgui open3d::visualization::gui::MenuMacOS

Public Types

using ItemId = int
 

Public Member Functions

 MenuBase ()
 
virtual ~MenuBase ()
 
virtual void AddItem (const char *name, ItemId item_id=NO_ITEM, KeyName key=KEY_NONE)=0
 
virtual void AddMenu (const char *name, std::shared_ptr< MenuBase > submenu)=0
 
virtual void AddSeparator ()=0
 
virtual void InsertItem (int index, const char *name, ItemId item_id=NO_ITEM, KeyName key=KEY_NONE)=0
 
virtual void InsertMenu (int index, const char *name, std::shared_ptr< MenuBase > submenu)=0
 
virtual void InsertSeparator (int index)=0
 
virtual int GetNumberOfItems () const =0
 
virtual bool IsEnabled (ItemId item_id) const =0
 
virtual void SetEnabled (ItemId item_id, bool enabled)=0
 
virtual bool IsChecked (ItemId item_id) const =0
 
virtual void SetChecked (ItemId item_id, bool checked)=0
 
virtual int CalcHeight (const Theme &theme) const =0
 
virtual bool CheckVisibilityChange () const =0
 Returns true if submenu visibility changed on last call to DrawMenuBar. More...
 
virtual ItemId DrawMenuBar (const DrawContext &context, bool is_enabled)=0
 
virtual ItemId Draw (const DrawContext &context, const char *name, bool is_enabled)=0
 
virtual void * GetNativePointer ()=0
 

Static Public Attributes

static constexpr ItemId NO_ITEM = -1
 

Detailed Description

The menu item action is handled by Window, rather than by registering a a callback function with (non-existent) Menu::SetOnClicked(). This is because on macOS the menubar is global over all application windows, so any callback would need to go find the data object corresponding to the active window.

Member Typedef Documentation

◆ ItemId

Constructor & Destructor Documentation

◆ MenuBase()

open3d::visualization::gui::MenuBase::MenuBase ( )
inline

◆ ~MenuBase()

virtual open3d::visualization::gui::MenuBase::~MenuBase ( )
inlinevirtual

Member Function Documentation

◆ AddItem()

virtual void open3d::visualization::gui::MenuBase::AddItem ( const char *  name,
ItemId  item_id = NO_ITEM,
KeyName  key = KEY_NONE 
)
pure virtual

◆ AddMenu()

virtual void open3d::visualization::gui::MenuBase::AddMenu ( const char *  name,
std::shared_ptr< MenuBase submenu 
)
pure virtual

◆ AddSeparator()

virtual void open3d::visualization::gui::MenuBase::AddSeparator ( )
pure virtual

◆ CalcHeight()

virtual int open3d::visualization::gui::MenuBase::CalcHeight ( const Theme theme) const
pure virtual

◆ CheckVisibilityChange()

virtual bool open3d::visualization::gui::MenuBase::CheckVisibilityChange ( ) const
pure virtual

Returns true if submenu visibility changed on last call to DrawMenuBar.

Implemented in open3d::visualization::gui::MenuMacOS, open3d::visualization::gui::MenuImgui, and open3d::visualization::gui::Menu.

◆ Draw()

virtual ItemId open3d::visualization::gui::MenuBase::Draw ( const DrawContext context,
const char *  name,
bool  is_enabled 
)
pure virtual

◆ DrawMenuBar()

virtual ItemId open3d::visualization::gui::MenuBase::DrawMenuBar ( const DrawContext context,
bool  is_enabled 
)
pure virtual

◆ GetNativePointer()

virtual void* open3d::visualization::gui::MenuBase::GetNativePointer ( )
pure virtual

◆ GetNumberOfItems()

virtual int open3d::visualization::gui::MenuBase::GetNumberOfItems ( ) const
pure virtual

◆ InsertItem()

virtual void open3d::visualization::gui::MenuBase::InsertItem ( int  index,
const char *  name,
ItemId  item_id = NO_ITEM,
KeyName  key = KEY_NONE 
)
pure virtual

◆ InsertMenu()

virtual void open3d::visualization::gui::MenuBase::InsertMenu ( int  index,
const char *  name,
std::shared_ptr< MenuBase submenu 
)
pure virtual

◆ InsertSeparator()

virtual void open3d::visualization::gui::MenuBase::InsertSeparator ( int  index)
pure virtual

◆ IsChecked()

virtual bool open3d::visualization::gui::MenuBase::IsChecked ( ItemId  item_id) const
pure virtual

◆ IsEnabled()

virtual bool open3d::visualization::gui::MenuBase::IsEnabled ( ItemId  item_id) const
pure virtual

Searches the menu hierarchy down from this menu to find the item and returns true if the item is enabled.

Implemented in open3d::visualization::gui::MenuMacOS, open3d::visualization::gui::MenuImgui, and open3d::visualization::gui::Menu.

◆ SetChecked()

virtual void open3d::visualization::gui::MenuBase::SetChecked ( ItemId  item_id,
bool  checked 
)
pure virtual

◆ SetEnabled()

virtual void open3d::visualization::gui::MenuBase::SetEnabled ( ItemId  item_id,
bool  enabled 
)
pure virtual

Searches the menu hierarchy down from this menu to find the item and set it enabled according to enabled.

Implemented in open3d::visualization::gui::MenuMacOS, open3d::visualization::gui::MenuImgui, and open3d::visualization::gui::Menu.

Field Documentation

◆ NO_ITEM

constexpr ItemId open3d::visualization::gui::MenuBase::NO_ITEM = -1
staticconstexpr

The documentation for this class was generated from the following file: