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

#include <ipslviewscaling.h>

Inheritance diagram for Presonus::IPlugInViewScaling:
Steinberg::FUnknown

Public Member Functions

virtual Steinberg::tresult PLUGIN_API setContentScaleFactor (float factor)=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

Support for plug-in view content scaling, to be implemented by the VST3 IPlugView class.

On Windows, if a process is "DPI-aware" and the system DPI setting is different from the default value of 96 DPI, the application is responsible to scale the contents of its windows accordingly, including child windows provided by 3rd party plug-ins.

This interface is used by the host to inform the plug-in about the current scaling factor. The scaling factor is used to convert user space coordinates aka DIPs (device-independent pixels) to physical pixels on screen.

The plug-in has to be prepared to deal with the following scaling factors:

96 DPI = 100% scaling (factor = 1.0) 120 DPI = 125% scaling (factor = 1.25) 144 DPI = 150% scaling (factor = 1.5) 192 DPI = 200% scaling (factor = 2.0)

On Windows 8.1 or later DPI settings are per monitor. The scaling factor for a window can change when it is moved between screens.

Member Function Documentation

◆ setContentScaleFactor()

virtual Steinberg::tresult PLUGIN_API Presonus::IPlugInViewScaling::setContentScaleFactor ( float factor)
pure virtual

Inform the view about the current content scaling factor. The scaling factor can change if the window is moved between screens.

Member Data Documentation

◆ iid

const Steinberg::FUID Presonus::IPlugInViewScaling::iid
static

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