LMMS
Loading...
Searching...
No Matches
Presonus::IHostCommandHandler Struct Referenceabstract

#include <ipslhostcommands.h>

Inheritance diagram for Presonus::IHostCommandHandler:
Steinberg::FUnknown

Public Member Functions

virtual ICommandList *PLUGIN_API createParamCommands (Steinberg::Vst::ParamID tag)=0
virtual Steinberg::tresult PLUGIN_API popupCommandMenu (ICommandList *commandList, Steinberg::int32 xPos, Steinberg::int32 yPos, Steinberg::IPlugView *view=0)=0
Public Member Functions inherited from Steinberg::FUnknown
virtual tresult PLUGIN_API queryInterface (const TUID _iid, void **obj)=0
virtual uint32 PLUGIN_API addRef ()=0
virtual uint32 PLUGIN_API release ()=0

Static Public Attributes

static const Steinberg::FUID iid
Static Public Attributes inherited from Steinberg::FUnknown
static const FUID iid

Detailed Description

Callback interface to access host-specific parameter commands to be integrated into a context menu inside the plug-in editor. Implemented as extension of Steinberg::Vst::IComponentHandler.

Please note that the intention of this set of interfaces is not to allow a generic menu implementation. This is the responsibility of a GUI toolkit. It basically provides a way to enumerate and execute commands anonymously, i.e. the plug-in does not have to know the exact sematics of the commands and the host does not break the consistency of the plug-in GUI.

Usage Example:

IComponentHandler* handler; FUnknownPtr<IHostCommandHandler> commandHandler (handler); if(commandHandler) if(ICommandList* commandList = commandHandler->createParamCommands (kMyParamId)) { FReleaser commandListReleaser (commandList); commandHandler->popupCommandMenu (commandList, xPos, yPos); }

Member Function Documentation

◆ createParamCommands()

virtual ICommandList *PLUGIN_API Presonus::IHostCommandHandler::createParamCommands ( Steinberg::Vst::ParamID tag)
pure virtual

Create list of currently available host commands for given parameter. The command list has a short lifecycle, it is recreated whenever a context menu should appear. The returned pointer can be null, otherwise it has to be released.

◆ popupCommandMenu()

virtual Steinberg::tresult PLUGIN_API Presonus::IHostCommandHandler::popupCommandMenu ( ICommandList * commandList,
Steinberg::int32 xPos,
Steinberg::int32 yPos,
Steinberg::IPlugView * view = 0 )
pure virtual

Helper to popup a command menu at given position. Coordinates are relative to view or in screen coordintes if view is null. Can be used for testing purpose, if the plug-in does not have its own context menu implementation or if it wants to use the look & feel of the host menu. This method is not supposed to support command lists implemented by the plug-in.

Member Data Documentation

◆ iid

const Steinberg::FUID Presonus::IHostCommandHandler::iid
static

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