VSTGUI  4.10
Graphical User Interface Framework not only for VST plugins
CCommandMenuItem Class Reference

a command menu item More...

+ Inheritance diagram for CCommandMenuItem:

Classes

struct  Desc
 

Public Member Functions

 CCommandMenuItem (Desc &&args)
 
 CCommandMenuItem (const Desc &args)
 
 CCommandMenuItem (const CCommandMenuItem &item)
 
 ~CCommandMenuItem () noexcept override=default
 
void execute ()
 
void validate ()
 
- Public Member Functions inherited from CMenuItem
 CMenuItem (const UTF8String &title, const UTF8String &keycode="", int32_t keyModifiers=0, CBitmap *icon=nullptr, int32_t flags=kNoFlags)
 CMenuItem constructor. More...
 
 CMenuItem (const UTF8String &title, COptionMenu *submenu, CBitmap *icon=nullptr)
 CMenuItem constructor. More...
 
 CMenuItem (const UTF8String &title, int32_t tag)
 CMenuItem constructor. More...
 
 CMenuItem (const CMenuItem &item)
 CMenuItem copy constructor. More...
 
virtual void setTitle (const UTF8String &title)
 set title of menu item More...
 
virtual void setSubmenu (COptionMenu *submenu)
 set submenu of menu item More...
 
virtual void setKey (const UTF8String &keyCode, int32_t keyModifiers=0)
 set keycode and key modifiers of menu item More...
 
virtual void setVirtualKey (int32_t virtualKeyCode, int32_t keyModifiers=0)
 set virtual keycode and key modifiers of menu item More...
 
virtual void setEnabled (bool state=true)
 set menu item enabled state More...
 
virtual void setChecked (bool state=true)
 set menu item checked state More...
 
virtual void setIsTitle (bool state=true)
 set menu item title state More...
 
virtual void setIsSeparator (bool state=true)
 set menu item separator state More...
 
virtual void setIcon (CBitmap *icon)
 set menu item icon More...
 
virtual void setTag (int32_t tag)
 set menu item tag More...
 
bool isEnabled () const
 returns whether the item is enabled or not More...
 
bool isChecked () const
 returns whether the item is checked or not More...
 
bool isTitle () const
 returns whether the item is a title item or not More...
 
bool isSeparator () const
 returns whether the item is a separator or not More...
 
const UTF8StringgetTitle () const
 returns the title of the item More...
 
int32_t getKeyModifiers () const
 returns the key modifiers of the item More...
 
const UTF8StringgetKeycode () const
 returns the keycode of the item More...
 
int32_t getVirtualKeyCode () const
 returns the virtual keycode of the item More...
 
COptionMenugetSubmenu () const
 returns the submenu of the item More...
 
CBitmapgetIcon () const
 returns the icon of the item More...
 
int32_t getTag () const
 returns the tag of the item More...
 
- Public Member Functions inherited from CBaseObject
 CBaseObject ()=default
 
 ~CBaseObject () noexcept override=default
 
 CBaseObject (const CBaseObject &o)
 
CBaseObjectoperator= (const CBaseObject &obj)
 
virtual CMessageResult notify (CBaseObject *sender, IdStringPtr message)
 
- Public Member Functions inherited from ReferenceCounted< T >
 ReferenceCounted ()=default
 
virtual ~ReferenceCounted () noexcept=default
 
 ReferenceCounted (const ReferenceCounted &)
 
ReferenceCountedoperator= (const ReferenceCounted &)
 
void forget () override
 decrease refcount and delete object if refcount == 0 More...
 
void remember () override
 increase refcount More...
 
virtual int32_t getNbReference () const
 get refcount More...
 
virtual void beforeDelete ()
 

Protected Attributes

ValidateCallbackFunction validateFunc
 
SelectedCallbackFunction selectedFunc
 
UTF8String commandCategory
 
UTF8String commandName
 
SharedPointer< ICommandMenuItemTargetitemTarget
 
- Protected Attributes inherited from CMenuItem
UTF8String title
 
UTF8String keyCode
 
SharedPointer< COptionMenusubmenu
 
SharedPointer< CBitmapicon
 
int32_t flags {0}
 
int32_t keyModifiers {0}
 
int32_t virtualKeyCode {0}
 
int32_t tag {-1}
 

CCommandMenuItem Methods

using ValidateCallbackFunction = std::function< void(CCommandMenuItem *item)>
 
using SelectedCallbackFunction = std::function< void(CCommandMenuItem *item)>
 
void setCommandCategory (const UTF8String &category)
 
const UTF8StringgetCommandCategory () const
 
bool isCommandCategory (const UTF8String &category) const
 
void setCommandName (const UTF8String &name)
 
const UTF8StringgetCommandName () const
 
bool isCommandName (const UTF8String &name) const
 
void setItemTarget (ICommandMenuItemTarget *target)
 
ICommandMenuItemTargetgetItemTarget () const
 
void setActions (SelectedCallbackFunction &&selected, ValidateCallbackFunction &&validate=[](CCommandMenuItem *){})
 

Additional Inherited Members

- Public Types inherited from CMenuItem
enum  Flags {
  kNoFlags = 0, kDisabled = 1 << 0, kTitle = 1 << 1, kChecked = 1 << 2,
  kSeparator = 1 << 3
}
 
- Protected Member Functions inherited from CMenuItem
 ~CMenuItem () noexcept override=default
 

Detailed Description

a command menu item

The CCommandMenuItem supports setting a category, name and a target. The target will get a notify() call before the item is displayed and after it was selected.

See also
CCommandMenuItem::kMsgMenuItemValidate and
CCommandMenuItem::kMsgMenuItemSelected

Member Typedef Documentation

◆ SelectedCallbackFunction

using SelectedCallbackFunction = std::function<void(CCommandMenuItem* item)>

◆ ValidateCallbackFunction

using ValidateCallbackFunction = std::function<void(CCommandMenuItem* item)>

Constructor & Destructor Documentation

◆ CCommandMenuItem() [1/3]

CCommandMenuItem ( Desc &&  args)

◆ CCommandMenuItem() [2/3]

CCommandMenuItem ( const Desc args)

◆ CCommandMenuItem() [3/3]

◆ ~CCommandMenuItem()

~CCommandMenuItem ( )
overridedefaultnoexcept

Member Function Documentation

◆ execute()

void execute ( )

◆ getCommandCategory()

const UTF8String& getCommandCategory ( ) const
inline

◆ getCommandName()

const UTF8String& getCommandName ( ) const
inline

◆ getItemTarget()

ICommandMenuItemTarget* getItemTarget ( ) const
inline

◆ isCommandCategory()

bool isCommandCategory ( const UTF8String category) const

◆ isCommandName()

bool isCommandName ( const UTF8String name) const

◆ setActions()

void setActions ( SelectedCallbackFunction &&  selected,
ValidateCallbackFunction &&  validate = [](CCommandMenuItem*){} 
)

◆ setCommandCategory()

void setCommandCategory ( const UTF8String category)

◆ setCommandName()

void setCommandName ( const UTF8String name)

◆ setItemTarget()

void setItemTarget ( ICommandMenuItemTarget target)

◆ validate()

void validate ( )

Member Data Documentation

◆ commandCategory

UTF8String commandCategory
protected

◆ commandName

UTF8String commandName
protected

◆ itemTarget

SharedPointer<ICommandMenuItemTarget> itemTarget
protected

◆ selectedFunc

SelectedCallbackFunction selectedFunc
protected

◆ validateFunc

ValidateCallbackFunction validateFunc
protected

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