iPlug 2: IGraphics::Structs
Utility structures and classes for IGraphics. More...
Classes | |
| class | IPopupMenu |
| A class for setting the contents of a pop up menu. More... | |
| class | IBitmap |
| User-facing bitmap abstraction that you use to manage bitmap data, independant of draw class/platform. More... | |
| struct | ISVG |
| User-facing SVG abstraction that you use to manage SVG data ISVG doesn't actually own the image data. More... | |
| struct | IColor |
| Used to manage color data, independent of draw class/platform. More... | |
| struct | IBlend |
| Used to manage composite/blend operations, independent of draw class/platform. More... | |
| struct | IFillOptions |
| Used to manage fill behaviour. More... | |
| struct | IStrokeOptions |
| Used to manage stroke behaviour for path based drawing back ends. More... | |
| struct | IText |
| IText is used to manage font and text/text entry style for a piece of text on the UI, independent of draw class/platform. More... | |
| struct | IRECT |
| Used to manage a rectangular area, independent of draw class/platform. More... | |
| struct | IMouseMod |
| Used to manage mouse modifiers i.e. More... | |
| struct | IMouseInfo |
| Used to group mouse coordinates with mouse modifier information. More... | |
| struct | IGestureInfo |
| Used to describe a particular gesture. More... | |
| class | IRECTList |
| Used to manage a list of rectangular areas and optimize them for drawing to the screen. More... | |
| struct | IMatrix |
| Used to store transformation matrices. More... | |
| struct | IColorStop |
| Used to represent a point/stop in a gradient. More... | |
| struct | IPattern |
| Used to store pattern information for gradients. More... | |
| class | ILayer |
| An abstraction that is used to store a temporary raster image/framebuffer. More... | |
| struct | IShadow |
| Used to specify properties of a drop-shadow to a layer. More... | |
| struct | IVColorSpec |
| Contains a set of 9 colors used to theme IVControls. More... | |
| struct | IVStyle |
| A struct encapsulating a set of properties used to configure IVControls. More... | |
Typedefs | |
| using | IActionFunction = std::function< void(IControl *)> |
| using | IAnimationFunction = std::function< void(IControl *)> |
| using | IControlFunction = std::function< void(IControl *)> |
| using | ILambdaDrawFunction = std::function< void(ILambdaControl *, IGraphics &, IRECT &)> |
| using | IKeyHandlerFunc = std::function< bool(const IKeyPress &key, bool isUp)> |
| using | IMsgBoxCompletionHandlerFunc = std::function< void(EMsgBoxResult result)> |
| using | IFileDialogCompletionHandlerFunc = std::function< void(const WDL_String &fileName, const WDL_String &path)> |
| using | IColorPickerHandlerFunc = std::function< void(const IColor &result)> |
| using | IGestureFunc = std::function< void(IControl *, const IGestureInfo &)> |
| using | IPopupFunction = std::function< void(IPopupMenu *pMenu)> |
| using | IDisplayTickFunc = std::function< void()> |
| using | IUIAppearanceChangedFunc = std::function< void(EUIAppearance appearance)> |
| using | ITouchID = uintptr_t |
| using | MTLTexturePtr = void * |
| using | Milliseconds = std::chrono::duration< double, std::chrono::milliseconds::period > |
| using | TimePoint = std::chrono::time_point< std::chrono::high_resolution_clock, Milliseconds > |
| using | ILayerPtr = std::unique_ptr< ILayer > |
| ILayerPtr is a managed pointer for transferring the ownership of layers. More... | |
Functions | |
| void | EmptyClickActionFunc (IControl *pCaller) |
| A click action function that does nothing. More... | |
| void | DefaultClickActionFunc (IControl *pCaller) |
| A click action function that triggers the default animation function for DEFAULT_ANIMATION_DURATION. More... | |
| void | DefaultAnimationFunc (IControl *pCaller) |
| An animation function that just calls the caller control's OnEndAnimation() method at the end of the animation More... | |
| void | SplashClickActionFunc (IControl *pCaller) |
| The splash click action function is used by IVControls to start SplashAnimationFunc. More... | |
| void | SplashAnimationFunc (IControl *pCaller) |
| The splash animation function is used by IVControls to animate the splash. More... | |
| void | ShowBubbleHorizontalActionFunc (IControl *pCaller) |
| Use with a param-linked control to popup the bubble control horizontally. More... | |
| void | ShowBubbleVerticalActionFunc (IControl *pCaller) |
| Use with a param-linked control to popup the bubble control vertically. More... | |
| const IColor | COLOR_TRANSPARENT (0, 0, 0, 0) |
| const IColor | COLOR_TRANSLUCENT (10, 0, 0, 0) |
| const IColor | COLOR_BLACK (255, 0, 0, 0) |
| const IColor | COLOR_BLACK_DROP_SHADOW (128, 0, 0, 0) |
| const IColor | COLOR_GRAY (255, 127, 127, 127) |
| const IColor | COLOR_LIGHT_GRAY (255, 240, 240, 240) |
| const IColor | COLOR_MID_GRAY (255, 200, 200, 200) |
| const IColor | COLOR_DARK_GRAY (255, 70, 70, 70) |
| const IColor | COLOR_WHITE (255, 255, 255, 255) |
| const IColor | COLOR_RED (255, 255, 0, 0) |
| const IColor | COLOR_GREEN (255, 0, 255, 0) |
| const IColor | COLOR_BLUE (255, 0, 0, 255) |
| const IColor | COLOR_YELLOW (255, 255, 255, 0) |
| const IColor | COLOR_ORANGE (255, 255, 127, 0) |
| const IColor | COLOR_INDIGO (255, 75, 0, 130) |
| const IColor | COLOR_VIOLET (255, 148, 0, 211) |
| static IColor | GetRainbow (int colorIdx) |
| float | BlendWeight (const IBlend *pBlend) |
| Helper function to extract the blend weight value from an IBlend ptr if it is valid. More... | |
| static const char * | TextStyleString (ETextStyle style) |
| Helper to get a CString based on ETextStyle. More... | |
Variables | |
| const IColor | DEFAULT_GRAPHICS_BGCOLOR = COLOR_GRAY |
| const IColor | DEFAULT_BGCOLOR = COLOR_TRANSPARENT |
| const IColor | DEFAULT_FGCOLOR = COLOR_MID_GRAY |
| const IColor | DEFAULT_PRCOLOR = COLOR_LIGHT_GRAY |
| const IColor | DEFAULT_FRCOLOR = COLOR_DARK_GRAY |
| const IColor | DEFAULT_HLCOLOR = COLOR_TRANSLUCENT |
| const IColor | DEFAULT_SHCOLOR = IColor(60, 0, 0, 0) |
| const IColor | DEFAULT_X1COLOR = COLOR_BLACK |
| const IColor | DEFAULT_X2COLOR = COLOR_GREEN |
| const IColor | DEFAULT_X3COLOR = COLOR_BLUE |
| const IColor | DEFAULT_TEXT_FGCOLOR = COLOR_BLACK |
| const IColor | DEFAULT_TEXTENTRY_BGCOLOR = COLOR_WHITE |
| const IColor | DEFAULT_TEXTENTRY_FGCOLOR = COLOR_BLACK |
| const IBlend | BLEND_75 = IBlend(EBlend::Default, 0.75f) |
| const IBlend | BLEND_50 = IBlend(EBlend::Default, 0.5f) |
| const IBlend | BLEND_25 = IBlend(EBlend::Default, 0.25f) |
| const IBlend | BLEND_10 = IBlend(EBlend::Default, 0.1f) |
| const IBlend | BLEND_05 = IBlend(EBlend::Default, 0.05f) |
| const IBlend | BLEND_01 = IBlend(EBlend::Default, 0.01f) |
| const IBlend | BLEND_DST_IN = IBlend(EBlend::DstIn, 1.f) |
| const IBlend | BLEND_DST_OVER = IBlend(EBlend::DstOver, 1.f) |
| const IText | DEFAULT_TEXT = IText() |
| const IVColorSpec | DEFAULT_COLOR_SPEC = IVColorSpec() |
| static constexpr bool | DEFAULT_HIDE_CURSOR = true |
| static constexpr bool | DEFAULT_SHOW_VALUE = true |
| static constexpr bool | DEFAULT_SHOW_LABEL = true |
| static constexpr bool | DEFAULT_DRAW_FRAME = true |
| static constexpr bool | DEFAULT_DRAW_SHADOWS = true |
| static constexpr bool | DEFAULT_EMBOSS = false |
| static constexpr float | DEFAULT_ROUNDNESS = 0.f |
| static constexpr float | DEFAULT_FRAME_THICKNESS = 1.f |
| static constexpr float | DEFAULT_SHADOW_OFFSET = 3.f |
| static constexpr float | DEFAULT_WIDGET_FRAC = 1.f |
| static constexpr float | DEFAULT_WIDGET_ANGLE = 0.f |
| static constexpr EOrientation | DEFAULT_LABEL_ORIENTATION = EOrientation::North |
| const IText | DEFAULT_LABEL_TEXT {DEFAULT_TEXT_SIZE + 5.f, EVAlign::Top} |
| const IText | DEFAULT_VALUE_TEXT {DEFAULT_TEXT_SIZE, EVAlign::Bottom} |
| const IVStyle | DEFAULT_STYLE = IVStyle() |
Utility structures and classes for IGraphics.
◆ IStrokeOptions
Used to manage stroke behaviour for path based drawing back ends.
Definition at line 589 of file IGraphicsStructs.h.
| Class Members | ||
|---|---|---|
| ELineCap | mCapOption = ELineCap::Butt | |
| DashOptions | mDash | |
| ELineJoin | mJoinOption = ELineJoin::Miter | |
| float | mMiterLimit = 10.f | |
| bool | mPreserve = false | |
◆ IMouseInfo
Used to group mouse coordinates with mouse modifier information.
Definition at line 1720 of file IGraphicsStructs.h.
| Class Members | ||
|---|---|---|
| float | dX = 0.0 | |
| float | dY = 0.0 | |
| IMouseMod | ms | |
| float | x = 0.0 | |
| float | y = 0.0 | |
◆ IGestureInfo
Used to describe a particular gesture.
Definition at line 1728 of file IGraphicsStructs.h.
| Class Members | ||
|---|---|---|
| float | angle = 0.f | |
| float | scale = 0.f | |
| EGestureState | state = EGestureState::Unknown | |
| EGestureType | type = EGestureType::Unknown | |
| float | velocity = 0.f | |
| float | x = 0.f | |
| float | y = 0.f | |
◆ IActionFunction
using IActionFunction = std::function<void(IControl*)>
◆ IAnimationFunction
using IAnimationFunction = std::function<void(IControl*)>
◆ IColorPickerHandlerFunc
using IColorPickerHandlerFunc = std::function<void(const IColor& result)>
◆ IControlFunction
using IControlFunction = std::function<void(IControl*)>
◆ IDisplayTickFunc
using IDisplayTickFunc = std::function<void()>
◆ IFileDialogCompletionHandlerFunc
using IFileDialogCompletionHandlerFunc = std::function<void(const WDL_String& fileName, const WDL_String& path)>
◆ IGestureFunc
◆ IKeyHandlerFunc
using IKeyHandlerFunc = std::function<bool(const IKeyPress& key, bool isUp)>
◆ ILambdaDrawFunction
◆ ILayerPtr
ILayerPtr is a managed pointer for transferring the ownership of layers.
Definition at line 2370 of file IGraphicsStructs.h.
◆ IMsgBoxCompletionHandlerFunc
using IMsgBoxCompletionHandlerFunc = std::function<void(EMsgBoxResult result)>
◆ IPopupFunction
using IPopupFunction = std::function<void(IPopupMenu* pMenu)>
◆ ITouchID
using ITouchID = uintptr_t
◆ IUIAppearanceChangedFunc
using IUIAppearanceChangedFunc = std::function<void(EUIAppearance appearance)>
◆ Milliseconds
using Milliseconds = std::chrono::duration<double, std::chrono::milliseconds::period>
◆ MTLTexturePtr
using MTLTexturePtr = void*
◆ TimePoint
using TimePoint = std::chrono::time_point<std::chrono::high_resolution_clock, Milliseconds>
◆ BlendWeight()
|
inline |
◆ DefaultAnimationFunc()
| void DefaultAnimationFunc | ( | IControl * | pCaller | ) |
◆ DefaultClickActionFunc()
| void DefaultClickActionFunc | ( | IControl * | pCaller | ) |
◆ EmptyClickActionFunc()
| void EmptyClickActionFunc | ( | IControl * | pCaller | ) |
A click action function that does nothing.
Definition at line 43 of file IControl.cpp.
◆ GetRainbow()
|
static |
◆ ShowBubbleHorizontalActionFunc()
| void ShowBubbleHorizontalActionFunc | ( | IControl * | pCaller | ) |
◆ ShowBubbleVerticalActionFunc()
| void ShowBubbleVerticalActionFunc | ( | IControl * | pCaller | ) |
◆ SplashAnimationFunc()
| void SplashAnimationFunc | ( | IControl * | pCaller | ) |
◆ SplashClickActionFunc()
| void SplashClickActionFunc | ( | IControl * | pCaller | ) |
◆ TextStyleString()
|
static |
◆ BLEND_01
◆ BLEND_05
◆ BLEND_10
◆ BLEND_25
◆ BLEND_50
◆ BLEND_75
◆ BLEND_DST_IN
◆ BLEND_DST_OVER
◆ DEFAULT_BGCOLOR
const IColor DEFAULT_BGCOLOR = COLOR_TRANSPARENT
◆ DEFAULT_COLOR_SPEC
◆ DEFAULT_DRAW_FRAME
|
constexpr bool DEFAULT_DRAW_FRAME = true |
staticconstexpr |
◆ DEFAULT_DRAW_SHADOWS
|
constexpr bool DEFAULT_DRAW_SHADOWS = true |
staticconstexpr |
◆ DEFAULT_EMBOSS
|
constexpr bool DEFAULT_EMBOSS = false |
staticconstexpr |
◆ DEFAULT_FGCOLOR
const IColor DEFAULT_FGCOLOR = COLOR_MID_GRAY
◆ DEFAULT_FRAME_THICKNESS
|
constexpr float DEFAULT_FRAME_THICKNESS = 1.f |
staticconstexpr |
◆ DEFAULT_FRCOLOR
const IColor DEFAULT_FRCOLOR = COLOR_DARK_GRAY
◆ DEFAULT_GRAPHICS_BGCOLOR
const IColor DEFAULT_GRAPHICS_BGCOLOR = COLOR_GRAY
◆ DEFAULT_HIDE_CURSOR
|
constexpr bool DEFAULT_HIDE_CURSOR = true |
staticconstexpr |
◆ DEFAULT_HLCOLOR
const IColor DEFAULT_HLCOLOR = COLOR_TRANSLUCENT
◆ DEFAULT_LABEL_ORIENTATION
|
constexpr EOrientation DEFAULT_LABEL_ORIENTATION = EOrientation::North |
staticconstexpr |
◆ DEFAULT_LABEL_TEXT
const IText DEFAULT_LABEL_TEXT {DEFAULT_TEXT_SIZE + 5.f, EVAlign::Top}
◆ DEFAULT_PRCOLOR
const IColor DEFAULT_PRCOLOR = COLOR_LIGHT_GRAY
◆ DEFAULT_ROUNDNESS
|
constexpr float DEFAULT_ROUNDNESS = 0.f |
staticconstexpr |
◆ DEFAULT_SHADOW_OFFSET
|
constexpr float DEFAULT_SHADOW_OFFSET = 3.f |
staticconstexpr |
◆ DEFAULT_SHCOLOR
◆ DEFAULT_SHOW_LABEL
|
constexpr bool DEFAULT_SHOW_LABEL = true |
staticconstexpr |
◆ DEFAULT_SHOW_VALUE
|
constexpr bool DEFAULT_SHOW_VALUE = true |
staticconstexpr |
◆ DEFAULT_STYLE
◆ DEFAULT_TEXT
◆ DEFAULT_TEXT_FGCOLOR
const IColor DEFAULT_TEXT_FGCOLOR = COLOR_BLACK
◆ DEFAULT_TEXTENTRY_BGCOLOR
const IColor DEFAULT_TEXTENTRY_BGCOLOR = COLOR_WHITE
◆ DEFAULT_TEXTENTRY_FGCOLOR
const IColor DEFAULT_TEXTENTRY_FGCOLOR = COLOR_BLACK
◆ DEFAULT_VALUE_TEXT
const IText DEFAULT_VALUE_TEXT {DEFAULT_TEXT_SIZE, EVAlign::Bottom}
◆ DEFAULT_WIDGET_ANGLE
|
constexpr float DEFAULT_WIDGET_ANGLE = 0.f |
staticconstexpr |
◆ DEFAULT_WIDGET_FRAC
|
constexpr float DEFAULT_WIDGET_FRAC = 1.f |
staticconstexpr |
◆ DEFAULT_X1COLOR
const IColor DEFAULT_X1COLOR = COLOR_BLACK
◆ DEFAULT_X2COLOR
const IColor DEFAULT_X2COLOR = COLOR_GREEN
◆ DEFAULT_X3COLOR
const IColor DEFAULT_X3COLOR = COLOR_BLUE