VSTGUI 4.10
Graphical User Interface Framework not only for VST plugins
Loading...
Searching...
No Matches
CCommandMenuItem Class Reference

a command menu item More...

#include <coptionmenu.h>

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

CCommandMenuItem Methods

using ValidateCallbackFunction = std::function<void(CCommandMenuItem* item)>
 
using SelectedCallbackFunction = std::function<void(CCommandMenuItem* item)>
 
ValidateCallbackFunction validateFunc
 
SelectedCallbackFunction selectedFunc
 
UTF8String commandCategory
 
UTF8String commandName
 
SharedPointer< ICommandMenuItemTargetitemTarget
 
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 *){})
 
void execute ()
 
void validate ()
 

Additional Inherited Members

- Public Types inherited from CMenuItem
enum  Flags {
  kNoFlags = 0 , kDisabled = 1 << 0 , kTitle = 1 << 1 , kChecked = 1 << 2 ,
  kSeparator = 1 << 3
}
 
 CMenuItem ()
 
 ~CMenuItem () noexcept override
 
std::unique_ptr< Implimpl
 

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: