VSTGUI: IView Struct Reference

VSTGUI 4.10 Graphical User Interface Framework not only for VST plugins

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes

- Class List
- Class Index
- Class Hierarchy
- Class Members

All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
Public Types | Public Member Functions | List of all members
IView Struct Referenceabstract

interface for embedding views from external view systems More...

Inheritance diagram for IView:

## Public Types
using | TookFocusCallback = std::function< void()>

## Public Member Functions
virtual | ~IView () noexcept=default
virtual bool | platformViewTypeSupported (PlatformViewType type)=0
| check if the view supports the platform view type
virtual bool | attach (void *parent, PlatformViewType parentViewType)=0
| attach the view to the parent
virtual bool | remove ()=0
| remove the view from its parent
virtual void | setViewSize (IntRect frame, IntRect visible)=0
| set the size and position of the view
virtual void | setContentScaleFactor (double scaleFactor)=0
| set the scale factor in use
virtual void | setMouseEnabled (bool state)=0
| enable or disable mouse handling for the view
virtual void | takeFocus ()=0
| the view should take focus
virtual void | looseFocus ()=0
| the view should loose focus
virtual void | setTookFocusCallback (const TookFocusCallback &callback)=0
| a callback the embedder sets on the view to get notified when the view took focus

## Detailed Description

interface for embedding views from external view systems

## Member Typedef Documentation

using TookFocusCallback = std::function<void ()>

## Constructor & Destructor Documentation

virtual ~IView | ( |  | ) |
| virtualdefaultnoexcept

## Member Function Documentation

virtual bool attach | ( | void * | parent,
|  | PlatformViewType | parentViewType
| ) |  |
| pure virtual

attach the view to the parent

Implemented in ViewAdapter.

virtual void looseFocus | ( |  | ) |
| pure virtual

the view should loose focus

Implemented in ViewAdapter.

virtual bool platformViewTypeSupported | ( | PlatformViewType | type | ) |
| pure virtual

check if the view supports the platform view type

Implemented in ViewAdapter.

virtual bool remove | ( |  | ) |
| pure virtual

remove the view from its parent

Implemented in ViewAdapter.

virtual void setContentScaleFactor | ( | double | scaleFactor | ) |
| pure virtual

set the scale factor in use

Implemented in ViewAdapter.

virtual void setMouseEnabled | ( | bool | state | ) |
| pure virtual

enable or disable mouse handling for the view

Implemented in ViewAdapter.

virtual void setTookFocusCallback | ( | const TookFocusCallback & | callback | ) |
| pure virtual

a callback the embedder sets on the view to get notified when the view took focus

Implemented in ViewAdapter.

virtual void setViewSize | ( | IntRect | frame,
|  | IntRect | visible
| ) |  |
| pure virtual

set the size and position of the view

the coordinate system for the parameters used are system native, this means on Windows the scale factor is already applied to the coordinates and on macOS they are not (as with all NSViews)

the visible rectangle is the rectangle clipped to all its parent views while the frame rectangle is the full size of the view if it would not be clipped. this way it is possible to support views inside of scroll views and the like. See the examples how this is done.

Implemented in ViewAdapter.

virtual void takeFocus | ( |  | ) |
| pure virtual

the view should take focus

Implemented in ViewAdapter.

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

- iexternalview.h