iPlug2 - C++ Audio Plug-in Framework
Loading...
Searching...
No Matches
Classes | Public Member Functions | Static Public Member Functions | List of all members
IPopupMenu Class Reference

A class for setting the contents of a pop up menu. More...

#include <IGraphicsPopupMenu.h>

Classes

class  Item
 A class to specify an item of a pop up menu. More...
 

Public Member Functions

 IPopupMenu (const char *rootTitle="", int prefix=0, bool multicheck=false, const std::initializer_list< const char * > &items={})
 
 IPopupMenu (const char *rootTitle, const std::initializer_list< const char * > &items, IPopupFunction func=nullptr)
 
 IPopupMenu (const IPopupMenu &)=delete
 
void operator= (const IPopupMenu &)=delete
 
ItemAddItem (Item *pItem, int index=-1)
 
ItemAddItem (const char *str, int index=-1, int itemFlags=Item::kNoFlags)
 
ItemAddItem (const char *str, int index, IPopupMenu *pSubmenu)
 
ItemAddItem (const char *str, IPopupMenu *pSubmenu, int index=-1)
 
ItemAddSeparator (int index=-1)
 
void RemoveEmptySubmenus ()
 
void SetChosenItemIdx (int index)
 
int GetChosenItemIdx () const
 
int NItems () const
 
int NItemsPerColumn () const
 
void SetNItemsPerColumn (int nItemsPerColumn)
 
int GetPrefix () const
 
bool GetCanMultiCheck () const
 
bool HasSubMenus ()
 
ItemGetItem (int index)
 
int GetIndexOfItem (Item *pItem) const
 
ItemGetChosenItem ()
 
const char * GetItemText (int index)
 
void SetPrefix (int count)
 
void SetMultiCheck (bool multicheck)
 
void Clear (bool resetEverything=true)
 
bool CheckItem (int index, bool state)
 
void CheckItemAlone (int index)
 
void CheckItemWithText (const char *str, bool state=true)
 
void CheckItemAlone (Item *pItemToCheck)
 
bool IsItemChecked (int index)
 
void SetFunction (IPopupFunction func)
 
IPopupFunction GetFunction ()
 
void ExecFunction ()
 
const char * GetRootTitle () const
 
void SetRootTitle (const char *rootTitle)
 

Static Public Member Functions

static int Sortfunc (const Item *a, const Item *b)
 

Detailed Description

A class for setting the contents of a pop up menu.

An IPopupMenu must not be declared as a temporary. In order for a receiving IControl or lambda function to be triggered when something is selected, the menu should persist across function calls, therefore it should almost always be a member variable. An IPopupMenu owns its sub items, including submenus This (and the platform implementations) are largely based on the VSTGUI COptionMenu

Definition at line 39 of file IGraphicsPopupMenu.h.

Constructor & Destructor Documentation

◆ IPopupMenu() [1/2]

IPopupMenu::IPopupMenu ( const char *  rootTitle = "",
int  prefix = 0,
bool  multicheck = false,
const std::initializer_list< const char * > &  items = {} 
)
inline

Definition at line 121 of file IGraphicsPopupMenu.h.

◆ IPopupMenu() [2/2]

IPopupMenu::IPopupMenu ( const char *  rootTitle,
const std::initializer_list< const char * > &  items,
IPopupFunction  func = nullptr 
)
inline

Definition at line 130 of file IGraphicsPopupMenu.h.

◆ ~IPopupMenu()

IPopupMenu::~IPopupMenu ( )
inline

Definition at line 144 of file IGraphicsPopupMenu.h.

Member Function Documentation

◆ AddItem() [1/4]

Item * IPopupMenu::AddItem ( const char *  str,
int  index,
IPopupMenu pSubmenu 
)
inline

Definition at line 168 of file IGraphicsPopupMenu.h.

◆ AddItem() [2/4]

Item * IPopupMenu::AddItem ( const char *  str,
int  index = -1,
int  itemFlags = Item::kNoFlags 
)
inline

Definition at line 166 of file IGraphicsPopupMenu.h.

◆ AddItem() [3/4]

Item * IPopupMenu::AddItem ( const char *  str,
IPopupMenu pSubmenu,
int  index = -1 
)
inline

Definition at line 178 of file IGraphicsPopupMenu.h.

◆ AddItem() [4/4]

Item * IPopupMenu::AddItem ( Item pItem,
int  index = -1 
)
inline

Definition at line 154 of file IGraphicsPopupMenu.h.

◆ AddSeparator()

Item * IPopupMenu::AddSeparator ( int  index = -1)
inline

Definition at line 188 of file IGraphicsPopupMenu.h.

◆ CheckItem()

bool IPopupMenu::CheckItem ( int  index,
bool  state 
)
inline

Definition at line 299 of file IGraphicsPopupMenu.h.

◆ CheckItemAlone() [1/2]

void IPopupMenu::CheckItemAlone ( int  index)
inline

Definition at line 311 of file IGraphicsPopupMenu.h.

◆ CheckItemAlone() [2/2]

void IPopupMenu::CheckItemAlone ( Item pItemToCheck)
inline

Definition at line 331 of file IGraphicsPopupMenu.h.

◆ CheckItemWithText()

void IPopupMenu::CheckItemWithText ( const char *  str,
bool  state = true 
)
inline

Definition at line 319 of file IGraphicsPopupMenu.h.

◆ Clear()

void IPopupMenu::Clear ( bool  resetEverything = true)
inline

Definition at line 287 of file IGraphicsPopupMenu.h.

◆ ExecFunction()

void IPopupMenu::ExecFunction ( )
inline

Definition at line 372 of file IGraphicsPopupMenu.h.

◆ GetCanMultiCheck()

bool IPopupMenu::GetCanMultiCheck ( ) const
inline

Definition at line 224 of file IGraphicsPopupMenu.h.

◆ GetChosenItem()

Item * IPopupMenu::GetChosenItem ( )
inline

Definition at line 263 of file IGraphicsPopupMenu.h.

◆ GetChosenItemIdx()

int IPopupMenu::GetChosenItemIdx ( ) const
inline

Definition at line 219 of file IGraphicsPopupMenu.h.

◆ GetFunction()

IPopupFunction IPopupMenu::GetFunction ( )
inline

Definition at line 367 of file IGraphicsPopupMenu.h.

◆ GetIndexOfItem()

int IPopupMenu::GetIndexOfItem ( Item pItem) const
inline

Definition at line 258 of file IGraphicsPopupMenu.h.

◆ GetItem()

Item * IPopupMenu::GetItem ( int  index)
inline

Definition at line 244 of file IGraphicsPopupMenu.h.

◆ GetItemText()

const char * IPopupMenu::GetItemText ( int  index)
inline

Definition at line 268 of file IGraphicsPopupMenu.h.

◆ GetPrefix()

int IPopupMenu::GetPrefix ( ) const
inline

Definition at line 223 of file IGraphicsPopupMenu.h.

◆ GetRootTitle()

const char * IPopupMenu::GetRootTitle ( ) const
inline

Definition at line 377 of file IGraphicsPopupMenu.h.

◆ HasSubMenus()

bool IPopupMenu::HasSubMenus ( )
inline

Definition at line 226 of file IGraphicsPopupMenu.h.

◆ IsItemChecked()

bool IPopupMenu::IsItemChecked ( int  index)
inline

Definition at line 352 of file IGraphicsPopupMenu.h.

◆ NItems()

int IPopupMenu::NItems ( ) const
inline

Definition at line 220 of file IGraphicsPopupMenu.h.

◆ NItemsPerColumn()

int IPopupMenu::NItemsPerColumn ( ) const
inline

Definition at line 221 of file IGraphicsPopupMenu.h.

◆ RemoveEmptySubmenus()

void IPopupMenu::RemoveEmptySubmenus ( )
inline

Definition at line 194 of file IGraphicsPopupMenu.h.

◆ SetChosenItemIdx()

void IPopupMenu::SetChosenItemIdx ( int  index)
inline

Definition at line 218 of file IGraphicsPopupMenu.h.

◆ SetFunction()

void IPopupMenu::SetFunction ( IPopupFunction  func)
inline

Definition at line 362 of file IGraphicsPopupMenu.h.

◆ SetMultiCheck()

void IPopupMenu::SetMultiCheck ( bool  multicheck)
inline

Definition at line 285 of file IGraphicsPopupMenu.h.

◆ SetNItemsPerColumn()

void IPopupMenu::SetNItemsPerColumn ( int  nItemsPerColumn)
inline

Definition at line 222 of file IGraphicsPopupMenu.h.

◆ SetPrefix()

void IPopupMenu::SetPrefix ( int  count)
inline

Definition at line 277 of file IGraphicsPopupMenu.h.

◆ SetRootTitle()

void IPopupMenu::SetRootTitle ( const char *  rootTitle)
inline

Definition at line 382 of file IGraphicsPopupMenu.h.

◆ Sortfunc()

static int IPopupMenu::Sortfunc ( const Item a,
const Item b 
)
inlinestatic

Definition at line 149 of file IGraphicsPopupMenu.h.


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