struct CCL::IParameterMenuBuilder

Overview

Framework-side interface providing methods to build a customized parameter menu. More…

#include <iparametermenu.h>

struct IParameterMenuBuilder: public CCL::IUnknown
{
    // methods

    virtual tresult CCL_API construct (IParameter* param) = 0;
    virtual IMenu*CCL_API buildIMenu (IMenu* menu = nullptr) = 0;

    virtual IMenuItem*CCL_API addSubMenu (
        IMenu& menu,
        IParameter& param,
        StringRef title
    ) = 0;

    virtual IMenuItem*CCL_API findSubMenu (IMenu& menu, StringRef title) = 0;

    virtual IMenuItem*CCL_API addValueItem (
        IMenu& menu,
        IParameter& param,
        int value
    ) = 0;
};

Inherited Members

public:
    // methods

    virtual tresult CCL_API queryInterface (UIDRef iid, void** ptr) = 0;
    virtual unsigned int CCL_API retain () = 0;
    virtual unsigned int CCL_API release () = 0;

Detailed Documentation

Framework-side interface providing methods to build a customized parameter menu.

Methods

virtual tresult CCL_API construct (IParameter* param) = 0

Initialize builder, required when created via ccl_new<>.

virtual IMenu*CCL_API buildIMenu (IMenu* menu = nullptr) = 0

Create parameter menu.

If no menu is given, a menu is created and owned by the caller.

virtual IMenuItem*CCL_API addSubMenu (
    IMenu& menu,
    IParameter& param,
    StringRef title
) = 0

Add sub menu with given title.

virtual IMenuItem*CCL_API findSubMenu (IMenu& menu, StringRef title) = 0

Find existing sub menu with given title.

virtual IMenuItem*CCL_API addValueItem (
    IMenu& menu,
    IParameter& param,
    int value
) = 0

Add item representing the given parameter value.