iPlug2 - C++ Audio Plug-in Framework
Loading...
Searching...
No Matches
Classes
IControl.h File Reference

This file contains the base IControl implementation, along with some base classes for specific types of control. More...

#include <cstring>
#include <cstdlib>
#include <vector>
#include <unordered_map>
#include "IPlugPlatform.h"
#include "wdlstring.h"
#include "ptrlist.h"
#include "IGraphics.h"

Go to the source code of this file.

Classes

class  IControl
 The lowest level base class of an IGraphics control. More...
 
class  IContainerBase
 IContainerBase allows a control to nest sub controls and it clips the drawing of those subcontrols Inheritors can add child controls by overriding OnAttached() and calling AddChildControl(), or passing in an AttachFunc lambda to the construtor. More...
 
class  IBitmapBase
 A base interface to be combined with IControl for bitmap-based controls "IBControls", managing an IBitmap. More...
 
class  IVectorBase
 A base interface to be combined with IControl for vectorial controls "IVControls", in order for them to share a common style If you need more flexibility, you're on your own! More...
 
class  IMultiTouchControlBase
 A base class for controls that can do do multitouch. More...
 
struct  IMultiTouchControlBase::TrackedTouch
 
class  IKnobControlBase
 A base class for knob/dial controls, to handle mouse action and Sender. More...
 
class  ISliderControlBase
 A base class for slider/fader controls, to handle mouse action and Sender. More...
 
class  IVTrackControlBase
 A base class for mult-strip/track controls, such as multi-sliders, meters Track refers to the channel/strip, Step refers to cross-axis steps, e.g. More...
 
class  IButtonControlBase
 A base class for buttons/momentary switches - cannot be linked to parameters. More...
 
class  ISwitchControlBase
 A base class for switch controls. More...
 
class  IDirBrowseControlBase
 An abstract IControl base class that you can inherit from in order to make a control that pops up a menu to browse files Optionally with a specific extension. More...
 
class  IPanelControl
 A basic control to fill a rectangle with a color or gradient. More...
 
class  ILambdaControl
 A control that can be specialised with a lambda function, for quick experiments without making a custom IControl. More...
 
class  IBitmapControl
 A basic control to draw a bitmap, or one frame of a stacked bitmap depending on the current value. More...
 
class  ISVGControl
 A basic control to draw an SVG image to the screen. More...
 
class  ITextControl
 A basic control to display some text. More...
 
class  IEditableTextControl
 A basic control to display some editable text. More...
 
class  IMultiLineTextControl
 A basic control to display some text that needs to span multiple lines. More...
 
class  IURLControl
 A control to show a clickable URL, that changes color after clicking. More...
 
class  ITextToggleControl
 A control to toggle between two text strings on click. More...
 
class  ICaptionControl
 A control to display the textual representation of a parameter. More...
 
class  PlaceHolder
 A control to use as a placeholder during development. More...
 

Detailed Description

This file contains the base IControl implementation, along with some base classes for specific types of control.

Definition in file IControl.h.