struct CCL::IPlugInView

Overview

View interface for interaction with foreign GUI toolkits. More…

#include <ipluginview.h>

struct IPlugInView: public CCL::IUnknown
{
    // enums

    enum ViewStyles;

    // methods

    virtual IUnknown*CCL_API getOwner () const = 0;
    virtual int CCL_API getStyle () const = 0;
    virtual void CCL_API getSize (Rect& size) const = 0;
    virtual void CCL_API getSizeLimits (SizeLimit& sizeLimits) const = 0;
    virtual void CCL_API setFrame (IPlugInViewFrame* frame) = 0;
    virtual void CCL_API attached (void* nativeParent) = 0;
    virtual void CCL_API removed () = 0;
    virtual void CCL_API onIdle () = 0;
    virtual void CCL_API onSize (const Rect& newSize) = 0;
    virtual tbool CCL_API onViewEvent (const GUIEvent& event) = 0;
    virtual void CCL_API constrainSize (Rect& size) = 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

View interface for interaction with foreign GUI toolkits.

Methods

virtual IUnknown*CCL_API getOwner () const = 0

Get plug-in instance owning this view.

virtual int CCL_API getStyle () const = 0

Get style.

virtual void CCL_API getSize (Rect& size) const = 0

Get current size.

virtual void CCL_API getSizeLimits (SizeLimit& sizeLimits) const = 0

Get size limits (optional, only if kSizable).

virtual void CCL_API setFrame (IPlugInViewFrame* frame) = 0

Assign frame object provided by host.

virtual void CCL_API attached (void* nativeParent) = 0

View has been attached to host window nativeParent is: HWND on Windows, NSView on macOS, WindowContext on Linux (defined in ilinuxspecifics.h), or null when using IPlugInViewRenderer.

Not implemented for iOS and Android.

virtual void CCL_API removed () = 0

View has been removed from host window.

virtual void CCL_API onIdle () = 0

Called periodically by host.

virtual void CCL_API onSize (const Rect& newSize) = 0

Resize notification.

virtual tbool CCL_API onViewEvent (const GUIEvent& event) = 0

Handle view event.

virtual void CCL_API constrainSize (Rect& size) = 0

Adjust the proposed size to a size supported by the plug-in (if necessary).