Open3D (C++ API)  0.19.0
Loading...
Searching...
No Matches
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.
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::Menu, open3d::visualization::gui::MenuImgui, and open3d::visualization::gui::MenuMacOS.

◆ 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::Menu, open3d::visualization::gui::MenuImgui, and open3d::visualization::gui::MenuMacOS.

◆ 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::Menu, open3d::visualization::gui::MenuImgui, and open3d::visualization::gui::MenuMacOS.

Field Documentation

◆ NO_ITEM

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

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