VSTGUI  4.9
Graphical User Interface Framework not only for VST plugins
VSTGUI Namespace Reference

Namespaces

 Animation
 
 BitmapFilter
 
 Call
 
 CDrawMethods
 
 Constants
 
 Standalone
 Standalone Library
 
 String
 
 UIDescriptionPrivate
 
 UIViewCreator
 
 VST3EditorInternal
 
 Xml
 

Classes

class  AEffGUIEditor
 
class  Base64Codec
 
struct  BitScopeToggleT
 
class  Buffer
 
class  BufferedOutputStream
 
class  CAnimationSplashScreen
 a splash screen which animates the opening and closing of the splash bitmap More...
 
class  CAnimKnob
 a bitmap knob control More...
 
class  CAutoAnimation
 
class  CAutoLayoutContainerView
 TODO: Doc. More...
 
class  CBaseObject
 Base Object with reference counter. More...
 
class  CBaseObjectGuard
 
class  CBitmap
 Encapsulates various platform depended kinds of bitmaps. More...
 
class  CBitmapPixelAccess
 direct pixel access to a CBitmap More...
 
struct  CButtonState
 Button and Modifier state. More...
 
class  CCheckBox
 a check box control with a title and 3 states More...
 
struct  CColor
 RGBA Color structure. More...
 
class  CColorChooser
 
struct  CColorChooserUISettings
 
class  CCommandMenuItem
 a command menu item More...
 
class  CControl
 base class of all VSTGUI controls More...
 
class  CDataBrowser
 DataBrowser view. More...
 
class  CDragContainerHelper
 Helper class to port old code which used CDragContainer. More...
 
class  CDrawContext
 A drawing context encapsulates the drawing context of the underlying OS. More...
 
struct  CDrawMode
 
class  CDropSource
 drop source More...
 
class  CFileExtension
 file extension description More...
 
class  CFileStream
 File input and output stream. More...
 
class  CFontChooser
 
struct  CFontChooserUIDefinition
 
class  CFontDesc
 font class More...
 
class  CFrame
 The CFrame is the parent container of all views. More...
 
class  CGradient
 Gradient Object [new in 4.0]. More...
 
class  CGradientView
 View which draws a gradient. More...
 
class  CGraphicsPath
 Graphics Path Object. More...
 
struct  CGraphicsTransform
 Graphics Transform Matrix. More...
 
class  CHorizontalSlider
 a horizontal slider control More...
 
class  CHorizontalSwitch
 a horizontal switch control More...
 
class  CKickButton
 
class  CKnob
 a knob control More...
 
class  CKnobBase
 
class  CLayeredViewContainer
 a view container which draws into a platform layer on top of a parent layer or the platform viewA CLayeredViewContainer creates a platform layer on top of a parent layer or the platform view of CFrame if available on that platform and draws into it, otherwise it acts exactly like a CViewContainer More...
 
class  CLineStyle
 
class  CListControl
 Control which draws a list of configurable rows. More...
 
struct  CListControlRowDesc
 The description of one row for the CListControl. More...
 
class  CMemoryStream
 Memory input and output stream. More...
 
class  CMenuItem
 a menu item More...
 
class  CMouseWheelEditingSupport
 Helper class for mouse wheel editing. More...
 
class  CMovieBitmap
 a bitmap view that displays different bitmaps according to its current value More...
 
class  CMovieButton
 a bi-states button with 2 subbitmaps More...
 
class  CMultiLineTextLabel
 Multi line text label. More...
 
class  CNewFileSelector
 New file selector class. More...
 
class  CNewFileSelectorCallback
 
class  CNinePartTiledBitmap
 a nine-part tiled bitmap More...
 
struct  CNinePartTiledDescription
 
class  COffscreenContext
 A draw context using a bitmap as it's back buffer. More...
 
class  CommandMenuItemTargetAdapter
 
class  CompressedUIDescription
 
struct  ConcatClip
 
class  COnOffButton
 a button control with 2 states More...
 
class  COpenGLView
 a subview which uses OpenGL for drawing More...
 
class  COptionMenu
 a popup menu control More...
 
class  CParamDisplay
 a parameter display More...
 
struct  CPoint
 Point structure. More...
 
struct  CRect
 Rect structure. More...
 
class  CResourceDescription
 Describes a resource by name or by ID. More...
 
class  CResourceInputStream
 Resource input stream. More...
 
class  CRockerSwitch
 a switch control with 3 sub bitmaps More...
 
class  CRowColumnView
 a view container which layouts its subview as rows or columns More...
 
class  CScrollbar
 a scrollbar control More...
 
class  CScrollView
 a scrollable container view with scrollbars More...
 
class  CSearchTextEdit
 Search text edit field. More...
 
class  CSegmentButton
 Control which draws a segmented button. More...
 
class  CShadowViewContainer
 a view container which draws a shadow for it's subviews More...
 
class  CSlider
 a slider control More...
 
class  CSliderBase
 
class  CSpecialDigit
 special display with custom numbers (0...9) More...
 
class  CSplashScreen
 
class  CSplitView
 a split container view with separators between its child views More...
 
class  CSwitchBase
 
class  CTabView
 a tab view More...
 
class  CTextButton
 a button which renders without bitmaps More...
 
class  CTextEdit
 a text edit control More...
 
class  CTextLabel
 a text label More...
 
class  CTooltipSupport
 Generic Tooltip Support class. More...
 
class  CVerticalSlider
 a vertical slider control More...
 
class  CVerticalSwitch
 a vertical switch control More...
 
class  CView
 Base Class of all view objects. More...
 
class  CViewContainer
 Container Class of CView objects. More...
 
struct  CViewContainerDropTarget
 
class  CVSTGUITimer
 A timer class, which posts timer messages to CBaseObjects or calls a lambda function (c++11 only). More...
 
class  CVuMeter
 
class  CXYPad
 
class  DataBrowserDelegateAdapter
 
class  DelegationController
 
class  DispatchList
 
class  DragCallbackAdapter
 Drag callback interface adapter. More...
 
class  DragCallbackFunctions
 Drag callback interface adapter which calls std::functions. More...
 
struct  DragDescription
 Drag description. More...
 
struct  DragEventData
 Drag event data. More...
 
struct  DragStartMouseObserver
 Helper object to be used to decide if a mouse move is far enough to start a drag operation. More...
 
class  DropTargetAdapter
 Drop target interface adapter. More...
 
struct  ERect
 
struct  FocusDrawingSettings
 
class  GenericStringListDataBrowserSource
 Generic string list data browser source. More...
 
class  GenericStringListDataBrowserSourceSelectionChanged
 
struct  GetViewOptions
 
class  GroupController
 
class  IBitmapCreator
 
class  IColorChooserDelegate
 
class  ICommandMenuItemTarget
 Command menu item target. More...
 
class  IContextMenuController
 extension to IController The VST3Editor checks all controllers of the views under the mouse on a right click if they have this interface implemented and calls the appendContextMenuItems before showing the context menu to the user More...
 
class  IContextMenuController2
 
class  IController
 extension to IControlListener used by UIDescription More...
 
class  IControlListener
 
class  IDataBrowserDelegate
 DataBrowser Interface. More...
 
class  IDataPackage
 interface for drag&drop and clipboard data More...
 
class  IDependency
 simple dependency between objects. More...
 
class  IDragCallback
 Drag callback interface. More...
 
class  IDraggingSession
 Dragging session interface. More...
 
class  IDropTarget
 Drop target interface. More...
 
class  IFocusDrawing
 Custom focus drawing interface. More...
 
class  IFocusViewObserver
 focus view observer interface for CFrame More...
 
class  IFontChooserDelegate
 
class  IKeyboardHook
 generic keyboard hook interface for CFrame More...
 
struct  IKeyboardViewKeyRangeChangedListener
 
struct  IKeyboardViewPlayerDelegate
 
class  IListControlConfigurator
 The list control configurator interface. More...
 
class  IListControlDrawer
 The list control drawer interface. More...
 
class  IMouseObserver
 generic mouse observer interface for CFrame More...
 
class  IMultiBitmapControl
 interface for controls with sub images More...
 
class  InputStream
 ByteOrder aware input stream interface. More...
 
class  Interface
 
class  IOptionMenuListener
 Option menu listener. More...
 
class  IReference
 
class  IScaleFactorChangedListener
 
class  IScrollbarDrawer
 
class  ISplitViewController
 Split View Controller. More...
 
class  ISplitViewSeparatorDrawer
 TODO: Doc. More...
 
class  ITextLabelListener
 Listener for a text label. More...
 
class  IUIDescription
 
class  IViewAddedRemovedObserver
 view added removed observer interface for CFrame More...
 
class  IViewContainerListener
 ViewContainer Listener Interface. More...
 
class  IViewCreator
 View creator interface. More...
 
class  IViewFactory
 
class  IViewListener
 View Listener Interface. More...
 
class  IViewMouseListener
 View Mouse Listener Interface. More...
 
class  IViewSwitchController
 
class  KeyboardView
 
class  KeyboardViewBase
 
class  KeyboardViewBaseCreator
 
class  KeyboardViewCreator
 
struct  KeyboardViewPlayerDelegate
 
class  KeyboardViewRangeSelector
 
class  KeyboardViewRangeSelectorCreator
 
struct  ListenerProvider
 
struct  MallocAllocator
 
struct  ModalViewSession
 
struct  Optional
 simplified optional More...
 
class  OptionMenuListenerAdapter
 
class  OutputStream
 ByteOrder aware output stream interface. More...
 
class  OwningPointer
 An owning pointer. More...
 
class  PadController
 
class  ParameterChangeListener
 
class  PluginGUIEditor
 
class  ReferenceCounted
 
class  SeekableStream
 Seekable stream interface. More...
 
class  SharedPointer
 
class  StaticListControlConfigurator
 A list control configurator implementation. More...
 
class  StringListControlDrawer
 A specialized list control drawer to draw strings. More...
 
class  TextLabelListenerAdapter
 
struct  TrimOptions
 
class  UIAttributes
 
class  UIDescription
 XML description parser and view creator. More...
 
class  UIDescriptionListener
 
class  UIDescriptionListenerAdapter
 
struct  UIDescriptionListenerOff
 
class  UIDescriptionViewSwitchController
 
class  UIViewFactory
 Default view factory. More...
 
class  UIViewSwitchContainer
 
class  UTF8CharacterIterator
 
class  UTF8CodePointIterator
 
class  UTF8String
 holds an UTF8 encoded string and a platform representation of it More...
 
class  UTF8StringView
 a view on a null terminated UTF-8 String More...
 
class  ViewContainerListenerAdapter
 ViewContainer Listener Interface Adapter. More...
 
class  ViewCreatorAdapter
 View creator interface adapter. More...
 
class  ViewCreatorRegistry
 
class  ViewListenerAdapter
 View Listener Interface Adapter. More...
 
class  ViewMouseListenerAdapter
 View Mouse Listener Interface Adapter. More...
 
class  VST3Editor
 VST3 Editor with automatic parameter binding. More...
 
class  VST3EditorDelegate
 delegate extension to Steinberg::Vst::EditController for a VST3 Editor More...
 
class  VSTGUIEditorInterface
 
class  ZLibInputStream
 
class  ZLibOutputStream
 

Typedefs

using CMenuItemList = std::vector< SharedPointer< CMenuItem > >
 
using CMenuItemIterator = CMenuItemList::iterator
 
using CConstMenuItemIterator = CMenuItemList::const_iterator
 
using CParamDisplayValueToStringProc = bool(*)(float value, char utf8String[256], void *userData)
 
using CTextEditStringToValueProc = bool(*)(UTF8StringPtr txt, float &result, void *userData)
 
using ViewIterator = CViewContainer::Iterator< false >
 
using ReverseViewIterator = CViewContainer::Iterator< true >
 
using CCoord = double
 coordinate type More...
 
using IdStringPtr = const char *
 ID String pointer. More...
 
using UTF8StringPtr = const char *
 UTF8 String pointer. More...
 
using UTF8StringBuffer = char *
 UTF8 String buffer pointer. More...
 
using AtomicReferenceCounted = ReferenceCounted< std::atomic< int32_t > >
 
using NonAtomicReferenceCounted = ReferenceCounted< int32_t >
 
using AssertionHandler = std::function< void(const char *filename, const char *line, const char *desc)>
 
using CViewAttributeID = size_t
 
using ModalViewSessionID = uint32_t
 
using CFontRef = CFontDesc *
 
using UIAttributesMap = std::unordered_map< std::string, std::string >
 
using ViewCreatorRegistryMap = std::unordered_map< std::string, const IViewCreator * >
 
using InterfacePtr = std::shared_ptr< Interface >
 

Enumerations

enum  CButton {
  kLButton = 1 << 1, kMButton = 1 << 2, kRButton = 1 << 3, kShift = 1 << 4,
  kControl = 1 << 5, kAlt = 1 << 6, kApple = 1 << 7, kButton4 = 1 << 8,
  kButton5 = 1 << 9, kDoubleClick = 1 << 10, kMouseWheelInverted = 1 << 11
}
 
enum  CDrawModeFlags : uint32_t { kAliasing = 0, kAntiAliasing = 1, kNonIntegralMode = 0xF0000000 }
 
enum  CHoriTxtAlign { kLeftText = 0, kCenterText, kRightText }
 
enum  CDrawStyle { kDrawStroked = 0, kDrawFilled, kDrawFilledAndStroked }
 
enum  CTxtFace {
  kNormalFace = 0, kBoldFace = 1 << 1, kItalicFace = 1 << 2, kUnderlineFace = 1 << 3,
  kStrikethroughFace = 1 << 4
}
 
enum  CKnobMode { kCircularMode = 0, kRelativCircularMode, kLinearMode }
 
enum  DragOperation { Copy, Move, None }
 Drag operation. More...
 
enum  ByteOrder { kBigEndianByteOrder = 0, kLittleEndianByteOrder, kNativeByteOrder = kBigEndianByteOrder }
 
enum  CMessageResult { kMessageUnknown = 0, kMessageNotified = 1 }
 
enum  CMouseWheelAxis { kMouseWheelAxisX = 0, kMouseWheelAxisY }
 
enum  CMouseEventResult {
  kMouseEventNotImplemented = 0, kMouseEventHandled, kMouseEventNotHandled, kMouseDownEventHandledButDontNeedMovedOrUpEvents,
  kMouseMoveEventHandledButDontNeedMoreEvents
}
 
enum  CCursorType {
  kCursorDefault = 0, kCursorWait, kCursorHSize, kCursorVSize,
  kCursorSizeAll, kCursorNESWSize, kCursorNWSESize, kCursorCopy,
  kCursorNotAllowed, kCursorHand, kCursorIBeam
}
 
enum  CViewAutosizing {
  kAutosizeNone = 0, kAutosizeLeft = 1 << 0, kAutosizeTop = 1 << 1, kAutosizeRight = 1 << 2,
  kAutosizeBottom = 1 << 3, kAutosizeColumn = 1 << 4, kAutosizeRow = 1 << 5, kAutosizeAll = kAutosizeLeft | kAutosizeTop | kAutosizeRight | kAutosizeBottom
}
 
enum  DragResult { kDragRefused = 0, kDragMoved, kDragCopied, kDragError = -1 }
 
enum  BitmapInterpolationQuality { kDefault = 0, kLow, kMedium, kHigh }
 
enum  CSliderMode {
  Touch, RelativeTouch, FreeClick, Ramp,
  UseGlobal
}
 
enum  SeekMode { Set, Current, End }
 

Functions

template<typename Iter , typename Type , typename ResultType = int32_t>
Optional< ResultType > indexOf (Iter first, Iter last, const Type &value)
 Returns the index of the value. More...
 
template<typename Iter , typename Proc , typename ResultType = int32_t>
Optional< ResultType > indexOfTest (Iter first, Iter last, Proc p)
 Returns the index of the element for which predicate p returns true. More...
 
template<typename T >
clamp (T value, T min, T max)
 Returns the value clamped to min and max. More...
 
template<typename T >
clampNorm (T value)
 Returns the value clamped to zero and one. More...
 
constexpr CColor MakeCColor (uint8_t red=0, uint8_t green=0, uint8_t blue=0, uint8_t alpha=255)
 
template<typename Proc >
void drawClipped (CDrawContext *context, const CRect &clip, Proc proc)
 
static double radians (double degrees)
 
bool isLineBreakSeparator (char32_t c)
 
template<size_t numBoxes>
static std::array< int32_t, numBoxes > boxesForGauss (double sigma)
 
static bool isUniformScaled (const CGraphicsTransform &matrix)
 
static ISplitViewControllergetSplitViewController (const CView *view)
 
bool isSpace (char32_t character) noexcept
 white-character test More...
 
UTF8String trim (const UTF8String &str, TrimOptions options)
 
bool operator== (const UTF8String::StringType &lhs, const UTF8String &rhs) noexcept
 
bool operator!= (const UTF8String::StringType &lhs, const UTF8String &rhs) noexcept
 
UTF8String operator+ (UTF8StringPtr lhs, const UTF8String &rhs)
 
template<typename T >
UTF8String toString (const T &value)
 
static Buffer< char > getTooltipFromView (CView *view)
 
static bool viewHasTooltip (CView *view)
 
bool shouldStartDrag (CPoint mouseDownPos, CPoint mouseMovePos)
 Helper method to be used to decide if a mouse move is far enough to start a drag operation. More...
 
template<typename T >
Optional< typename std::decay< T >::type > makeOptional (T &&value)
 
template<class I >
SharedPointer< I > owned (I *p) noexcept
 
template<class I >
SharedPointer< I > shared (I *p) noexcept
 
template<class I , typename ... Args>
SharedPointer< I > makeOwned (Args &&...args)
 
template<typename T , typename B >
void setBit (T &storage, B bit, bool state)
 
template<typename T , typename B >
constexpr bool hasBit (T storage, B bit)
 
void setAssertionHandler (const AssertionHandler &handler)
 
bool hasAssertionHandler ()
 
void doAssert (const char *filename, const char *line, const char *desc) noexcept(false)
 
template<typename T >
void endianSwap (T &value)
 
template<typename T >
bool writeEndianSwap (const T &value, OutputStream &s)
 
void unixfyPath (std::string &path)
 Helper function to transform all Windows path separators to unix ones. More...
 
bool removeLastPathComponent (std::string &path)
 
Optional< std::string > lastPathComponent (const std::string path)
 
bool pathIsAbsolute (const std::string &path)
 
IControllergetViewController (const CView *view, bool deep=false)
 helper method to get the controller of a view More...
 
template<typename T >
T * findViewController (const CViewContainer *view)
 helper method to find a specific controller inside a view hierarchy More...
 
static UIViewFactorygetGenericViewFactory ()
 
static void FreeNodePlatformResources (UINode *node)
 
static std::string moveOldFile (UTF8StringPtr filename)
 
static void removeChildNode (UINode *baseNode, UTF8StringPtr nodeName)
 
static ViewCreatorRegistrygetCreatorRegistry ()
 
static CControlfindControlForTag (CViewContainer *parent, int32_t tag, bool reverse=true)
 
template<typename Iface , typename T >
auto dynamicPtrCast (std::shared_ptr< T > &obj)
 
template<typename Iface , typename T >
const auto dynamicPtrCast (const std::shared_ptr< T > &obj)
 
template<typename Iface , typename T >
auto staticPtrCast (std::shared_ptr< T > &obj)
 
template<typename Iface , typename T >
const auto staticPtrCast (const std::shared_ptr< T > &obj)
 
template<typename Iface , typename T >
const auto & asInterface (const T &obj)
 

Variables

constexpr const CColor kTransparentCColor = CColor (255, 255, 255, 0)
 
constexpr const CColor kBlackCColor = CColor ( 0, 0, 0, 255)
 
constexpr const CColor kWhiteCColor = CColor (255, 255, 255, 255)
 
constexpr const CColor kGreyCColor = CColor (127, 127, 127, 255)
 
constexpr const CColor kRedCColor = CColor (255, 0, 0, 255)
 
constexpr const CColor kGreenCColor = CColor ( 0, 255, 0, 255)
 
constexpr const CColor kBlueCColor = CColor ( 0, 0, 255, 255)
 
constexpr const CColor kYellowCColor = CColor (255, 255, 0, 255)
 
constexpr const CColor kMagentaCColor = CColor (255, 0, 255, 255)
 
constexpr const CColor kCyanCColor = CColor ( 0, 255, 255, 255)
 
static CFontDesc gSystemFont ("Arial", 12)
 
static CFontDesc gNormalFontVeryBig ("Arial", 18)
 
static CFontDesc gNormalFontBig ("Arial", 14)
 
static CFontDesc gNormalFont ("Arial", 12)
 
static CFontDesc gNormalFontSmall ("Arial", 11)
 
static CFontDesc gNormalFontSmaller ("Arial", 10)
 
static CFontDesc gNormalFontVerySmall ("Arial", 9)
 
static CFontDesc gSymbolFont ("Symbol", 13)
 
const CFontRef kSystemFont = &gSystemFont
 
const CFontRef kNormalFontVeryBig = &gNormalFontVeryBig
 
const CFontRef kNormalFontBig = &gNormalFontBig
 
const CFontRef kNormalFont = &gNormalFont
 
const CFontRef kNormalFontSmall = &gNormalFontSmall
 
const CFontRef kNormalFontSmaller = &gNormalFontSmaller
 
const CFontRef kNormalFontVerySmall = &gNormalFontVerySmall
 
const CFontRef kSymbolFont = &gSymbolFont
 
IdStringPtr kMsgNewFocusView = "kMsgNewFocusView"
 Message send to all parents of the new focus view. More...
 
IdStringPtr kMsgOldFocusView = "kMsgOldFocusView"
 Message send to all parents of the old focus view. More...
 
static const CCoord kDefaultOnOffDashLength [] = {1, 1}
 
const CLineStyle kLineSolid {}
 
const CLineStyle kLineOnOffDash (CLineStyle::kLineCapButt, CLineStyle::kLineJoinMiter, 0, 2, kDefaultOnOffDashLength)
 
static CCoord kCheckBoxTitleMargin = 5
 
static const float kCKnobRange = 200.f
 
static constexpr CViewAttributeID kCKnobMouseStateAttribute = 'knms'
 
UTF8StringPtr kDegreeSymbol = "\xC2\xB0"
 degree sign More...
 
UTF8StringPtr kInfiniteSymbol = "\xE2\x88\x9E"
 infinity sign More...
 
UTF8StringPtr kCopyrightSymbol = "\xC2\xA9"
 copyright sign More...
 
UTF8StringPtr kTrademarkSymbol = "\xE2\x84\xA2"
 trade mark sign More...
 
UTF8StringPtr kRegisteredSymbol = "\xC2\xAE"
 registered sign More...
 
UTF8StringPtr kMicroSymbol = "\xC2\xB5"
 micro sign More...
 
UTF8StringPtr kPerthousandSymbol = "\xE2\x80\xB0"
 per mille sign More...
 
IdStringPtr kMsgViewSizeChanged = "kMsgViewSizeChanged"
 Message send to parent that the size of the view has changed. More...
 
static constexpr CViewAttributeID kCViewHitTestPathAttrID = 'cvht'
 
static constexpr CViewAttributeID kCViewCustomDropTargetAttrID = 'cvdt'
 
static constexpr CViewAttributeID kCViewAlphaValueAttrID = 'cvav'
 
static constexpr CViewAttributeID kCViewMouseableAreaAttrID = 'cvma'
 
static constexpr CViewAttributeID kCViewBackgroundBitmapAttrID = 'cvbb'
 
static constexpr CViewAttributeID kCViewDisabledBackgroundBitmapAttrID = 'cvdb'
 
static constexpr CViewAttributeID kCViewAttributeReferencePointer = 'cvrp'
 
static constexpr CViewAttributeID kCViewTooltipAttribute = 'cvtt'
 
static constexpr CViewAttributeID kCViewControllerAttribute = 'ictr'
 
IdStringPtr kMsgLooseFocus = "LooseFocus"
 Message of a view loosing focus (only CTextEdit and COptionMenu send this) More...
 
const CViewAttributeID kCViewContainerDropTargetAttribute = 'vcdt'
 
const CViewAttributeID kCViewContainerMouseDownViewAttribute = 'vcmd'
 
const CViewAttributeID kCViewContainerLastDrawnFocusAttribute = 'vclf'
 
const CViewAttributeID kCViewContainerBackgroundOffsetAttribute = 'vcbo'
 
static AssertionHandler assertionHandler {}
 
static constexpr uint32_t kStreamIOError = std::numeric_limits<uint32_t>::max ()
 
static constexpr int64_t kStreamSeekError = -1
 
static constexpr int64_t kUIDescIdentifier = 0x7072637365646975LL
 
static const int8_t unixPathSeparator = '/'
 
static const int8_t windowsPathSeparator = '\\'
 
static constexpr auto kTemplateAttributeMinSize = "minSize"
 
static constexpr auto kTemplateAttributeMaxSize = "maxSize"
 
static CViewAttributeID kViewNameAttribute = 'cvcr'
 
return result
 
static const std::string kAttrWhiteKeyPressed = "white-key-pressed"
 
static const std::string kAttrWhiteKeyUnpressed = "white-key-unpressed"
 
static const std::string kAttrBlackKeyPressed = "black-key-pressed"
 
static const std::string kAttrBlackKeyUnpressed = "black-key-unpressed"
 
static const std::string kAttrWhiteKeyShadowLeft = "white-key-shadow-left"
 
static const std::string kAttrWhiteKeyShadowRight = "white-key-shadow-right"
 
static const std::string kAttrWhiteKeyWidth = "white-key-width"
 
static const std::string kAttrBlackKeyWidth = "black-key-width"
 
static const std::string kAttrBlackKeyHeight = "black-key-height"
 
static const std::string kAttrWhiteKeyColor = "white-key-color"
 
static const std::string kAttrWhiteKeyPressedColor = "white-key-pressed-color"
 
static const std::string kAttrBlackKeyColor = "black-key-color"
 
static const std::string kAttrBlackKeyPressedColor = "black-key-pressed-color"
 
static const std::string kAttrStartNote = "start-note"
 
static const std::string kAttrNumKeys = "num-keys"
 
static const std::string kAttrNoteNameFont = "note-name-font"
 
static const std::string kAttrDrawNoteText = "draw-note-text"
 
KeyboardViewCreator __gKeyboardViewCreator
 
static const std::string kAttrSelectionRangeMin = "sel-range-min"
 
static const std::string kAttrSelectionRangeMax = "sel-range-max"
 
KeyboardViewRangeSelectorCreator __gKeyboardViewRangeSelectorCreator
 

Typedef Documentation

◆ AssertionHandler

using AssertionHandler = std::function<void (const char* filename, const char* line, const char* desc)>

◆ AtomicReferenceCounted

using AtomicReferenceCounted = ReferenceCounted<std::atomic<int32_t> >

◆ CConstMenuItemIterator

using CConstMenuItemIterator = CMenuItemList::const_iterator

◆ CCoord

using CCoord = double

coordinate type

◆ CFontRef

using CFontRef = CFontDesc*

◆ CMenuItemIterator

using CMenuItemIterator = CMenuItemList::iterator

◆ CMenuItemList

using CMenuItemList = std::vector<SharedPointer<CMenuItem> >

◆ CParamDisplayValueToStringProc

using CParamDisplayValueToStringProc = bool (*) (float value, char utf8String[256], void* userData)

◆ CTextEditStringToValueProc

using CTextEditStringToValueProc = bool (*) (UTF8StringPtr txt, float& result, void* userData)

◆ CViewAttributeID

using CViewAttributeID = size_t

◆ IdStringPtr

using IdStringPtr = const char*

ID String pointer.

◆ InterfacePtr

using InterfacePtr = std::shared_ptr<Interface>

◆ ModalViewSessionID

using ModalViewSessionID = uint32_t

◆ NonAtomicReferenceCounted

◆ ReverseViewIterator

◆ UIAttributesMap

using UIAttributesMap = std::unordered_map<std::string,std::string>

◆ UTF8StringBuffer

using UTF8StringBuffer = char*

UTF8 String buffer pointer.

◆ UTF8StringPtr

using UTF8StringPtr = const char*

UTF8 String pointer.

◆ ViewCreatorRegistryMap

using ViewCreatorRegistryMap = std::unordered_map<std::string, const IViewCreator*>

◆ ViewIterator

Enumeration Type Documentation

◆ BitmapInterpolationQuality

Enumerator
kDefault 

Let system decide.

kLow 

Nearest neighbour.

kMedium 

Bilinear interpolation.

kHigh 

Bicubic interpolation (Bilinear on Windows)

◆ ByteOrder

enum ByteOrder
Enumerator
kBigEndianByteOrder 
kLittleEndianByteOrder 
kNativeByteOrder 

◆ CButton

enum CButton
Enumerator
kLButton 

left mouse button

kMButton 

middle mouse button

kRButton 

right mouse button

kShift 

shift modifier

kControl 

control modifier (Command Key on Mac OS X and Control Key on Windows)

kAlt 

alt modifier

kApple 

apple modifier (Mac OS X only.

Is the Control key)

kButton4 

4th mouse button

kButton5 

5th mouse button

kDoubleClick 

mouse button is double click

kMouseWheelInverted 

system mouse wheel setting is inverted (Only valid for onMouseWheel methods).

The distance value is already transformed back to non inverted. But for scroll views we need to know if we need to invert it back.

◆ CCursorType

Enumerator
kCursorDefault 

arrow cursor

kCursorWait 

wait cursor

kCursorHSize 

horizontal size cursor

kCursorVSize 

vertical size cursor

kCursorSizeAll 

size all cursor

kCursorNESWSize 

northeast and southwest size cursor

kCursorNWSESize 

northwest and southeast size cursor

kCursorCopy 

copy cursor (mainly for drag&drop operations)

kCursorNotAllowed 

not allowed cursor (mainly for drag&drop operations)

kCursorHand 

hand cursor

kCursorIBeam 

i beam cursor

◆ CDrawModeFlags

enum CDrawModeFlags : uint32_t
Enumerator
kAliasing 

aliased drawing

kAntiAliasing 

antialised drawing

kNonIntegralMode 

do not round coordinates to pixel aligned values

◆ CDrawStyle

enum CDrawStyle
Enumerator
kDrawStroked 
kDrawFilled 
kDrawFilledAndStroked 

◆ CHoriTxtAlign

Enumerator
kLeftText 
kCenterText 
kRightText 

◆ CKnobMode

enum CKnobMode
Enumerator
kCircularMode 
kRelativCircularMode 
kLinearMode 

◆ CMessageResult

Enumerator
kMessageUnknown 
kMessageNotified 

◆ CMouseEventResult

Enumerator
kMouseEventNotImplemented 
kMouseEventHandled 
kMouseEventNotHandled 
kMouseDownEventHandledButDontNeedMovedOrUpEvents 
kMouseMoveEventHandledButDontNeedMoreEvents 

◆ CMouseWheelAxis

Enumerator
kMouseWheelAxisX 
kMouseWheelAxisY 

◆ CSliderMode

enum CSliderMode
strong
Enumerator
Touch 
RelativeTouch 
FreeClick 
Ramp 
UseGlobal 

◆ CTxtFace

enum CTxtFace
Enumerator
kNormalFace 
kBoldFace 
kItalicFace 
kUnderlineFace 
kStrikethroughFace 

◆ CViewAutosizing

Enumerator
kAutosizeNone 
kAutosizeLeft 
kAutosizeTop 
kAutosizeRight 
kAutosizeBottom 
kAutosizeColumn 
kAutosizeRow 
kAutosizeAll 

◆ DragResult

enum DragResult
Enumerator
kDragRefused 
kDragMoved 
kDragCopied 
kDragError 

◆ SeekMode

enum SeekMode
strong
Enumerator
Set 
Current 
End 

Function Documentation

◆ asInterface()

const auto& VSTGUI::asInterface ( const T &  obj)
inline

◆ boxesForGauss()

static std::array<int32_t, numBoxes> VSTGUI::boxesForGauss ( double  sigma)
static

◆ clamp()

T VSTGUI::clamp ( value,
min,
max 
)

Returns the value clamped to min and max.

◆ clampNorm()

T VSTGUI::clampNorm ( value)

Returns the value clamped to zero and one.

◆ doAssert()

void doAssert ( const char *  filename,
const char *  line,
const char *  desc 
)
noexcept

◆ drawClipped()

void VSTGUI::drawClipped ( CDrawContext context,
const CRect clip,
Proc  proc 
)

◆ dynamicPtrCast() [1/2]

auto VSTGUI::dynamicPtrCast ( std::shared_ptr< T > &  obj)
inline

◆ dynamicPtrCast() [2/2]

const auto VSTGUI::dynamicPtrCast ( const std::shared_ptr< T > &  obj)
inline

◆ endianSwap()

void VSTGUI::endianSwap ( T &  value)

◆ findControlForTag()

static CControl* VSTGUI::findControlForTag ( CViewContainer parent,
int32_t  tag,
bool  reverse = true 
)
static

◆ findViewController()

T* VSTGUI::findViewController ( const CViewContainer view)
inline

helper method to find a specific controller inside a view hierarchy

◆ FreeNodePlatformResources()

static void VSTGUI::FreeNodePlatformResources ( UINode *  node)
static

◆ getCreatorRegistry()

static ViewCreatorRegistry& VSTGUI::getCreatorRegistry ( )
static

◆ getGenericViewFactory()

static UIViewFactory* VSTGUI::getGenericViewFactory ( )
static

◆ getSplitViewController()

static ISplitViewController* VSTGUI::getSplitViewController ( const CView view)
static

◆ getTooltipFromView()

static Buffer<char> VSTGUI::getTooltipFromView ( CView view)
static

◆ getViewController()

IController* VSTGUI::getViewController ( const CView view,
bool  deep = false 
)
inline

helper method to get the controller of a view

◆ hasAssertionHandler()

bool hasAssertionHandler ( )

◆ hasBit()

constexpr bool VSTGUI::hasBit ( storage,
bit 
)
inline

◆ indexOf()

Optional<ResultType> VSTGUI::indexOf ( Iter  first,
Iter  last,
const Type &  value 
)

Returns the index of the value.

◆ indexOfTest()

Optional<ResultType> VSTGUI::indexOfTest ( Iter  first,
Iter  last,
Proc  p 
)

Returns the index of the element for which predicate p returns true.

◆ isLineBreakSeparator()

bool VSTGUI::isLineBreakSeparator ( char32_t  c)
inline

◆ isSpace()

bool isSpace ( char32_t  character)
noexcept

white-character test

Parameters
characterUTF-32 character
Returns
true if character is a white-character

◆ isUniformScaled()

static bool VSTGUI::isUniformScaled ( const CGraphicsTransform matrix)
static

◆ lastPathComponent()

Optional<std::string> VSTGUI::lastPathComponent ( const std::string  path)
inline

◆ MakeCColor()

constexpr CColor VSTGUI::MakeCColor ( uint8_t  red = 0,
uint8_t  green = 0,
uint8_t  blue = 0,
uint8_t  alpha = 255 
)
inline

◆ makeOptional()

Optional<typename std::decay<T>::type> VSTGUI::makeOptional ( T &&  value)
inline

◆ makeOwned()

SharedPointer<I> VSTGUI::makeOwned ( Args &&...  args)
inline

◆ moveOldFile()

static std::string VSTGUI::moveOldFile ( UTF8StringPtr  filename)
static

◆ operator!=()

bool VSTGUI::operator!= ( const UTF8String::StringType lhs,
const UTF8String rhs 
)
inlinenoexcept

◆ operator+()

UTF8String VSTGUI::operator+ ( UTF8StringPtr  lhs,
const UTF8String rhs 
)
inline

◆ operator==()

bool VSTGUI::operator== ( const UTF8String::StringType lhs,
const UTF8String rhs 
)
inlinenoexcept

◆ owned()

SharedPointer<I> VSTGUI::owned ( I *  p)
inlinenoexcept

◆ pathIsAbsolute()

bool VSTGUI::pathIsAbsolute ( const std::string &  path)
inline

◆ radians()

static double VSTGUI::radians ( double  degrees)
inlinestatic

◆ removeChildNode()

static void VSTGUI::removeChildNode ( UINode *  baseNode,
UTF8StringPtr  nodeName 
)
static

◆ removeLastPathComponent()

bool VSTGUI::removeLastPathComponent ( std::string &  path)
inline

◆ setAssertionHandler()

void setAssertionHandler ( const AssertionHandler handler)

◆ setBit()

void VSTGUI::setBit ( T &  storage,
bit,
bool  state 
)
inline

◆ shared()

SharedPointer<I> VSTGUI::shared ( I *  p)
inlinenoexcept

◆ staticPtrCast() [1/2]

auto VSTGUI::staticPtrCast ( std::shared_ptr< T > &  obj)
inline

◆ staticPtrCast() [2/2]

const auto VSTGUI::staticPtrCast ( const std::shared_ptr< T > &  obj)
inline

◆ toString()

UTF8String VSTGUI::toString ( const T &  value)
inline

◆ trim()

UTF8String trim ( const UTF8String str,
TrimOptions  options 
)

◆ unixfyPath()

void VSTGUI::unixfyPath ( std::string &  path)
inline

Helper function to transform all Windows path separators to unix ones.

◆ viewHasTooltip()

static bool VSTGUI::viewHasTooltip ( CView view)
static

◆ writeEndianSwap()

bool VSTGUI::writeEndianSwap ( const T &  value,
OutputStream s 
)

Variable Documentation

◆ __gKeyboardViewCreator

KeyboardViewCreator __gKeyboardViewCreator

◆ __gKeyboardViewRangeSelectorCreator

KeyboardViewRangeSelectorCreator __gKeyboardViewRangeSelectorCreator

◆ assertionHandler

AssertionHandler assertionHandler {}
static

◆ gNormalFont

CFontDesc gNormalFont("Arial", 12)
static

◆ gNormalFontBig

CFontDesc gNormalFontBig("Arial", 14)
static

◆ gNormalFontSmall

CFontDesc gNormalFontSmall("Arial", 11)
static

◆ gNormalFontSmaller

CFontDesc gNormalFontSmaller("Arial", 10)
static

◆ gNormalFontVeryBig

CFontDesc gNormalFontVeryBig("Arial", 18)
static

◆ gNormalFontVerySmall

CFontDesc gNormalFontVerySmall("Arial", 9)
static

◆ gSymbolFont

CFontDesc gSymbolFont("Symbol", 13)
static

◆ gSystemFont

CFontDesc gSystemFont("Arial", 12)
static

◆ kAttrBlackKeyColor

const std::string kAttrBlackKeyColor = "black-key-color"
static

◆ kAttrBlackKeyHeight

const std::string kAttrBlackKeyHeight = "black-key-height"
static

◆ kAttrBlackKeyPressed

const std::string kAttrBlackKeyPressed = "black-key-pressed"
static

◆ kAttrBlackKeyPressedColor

const std::string kAttrBlackKeyPressedColor = "black-key-pressed-color"
static

◆ kAttrBlackKeyUnpressed

const std::string kAttrBlackKeyUnpressed = "black-key-unpressed"
static

◆ kAttrBlackKeyWidth

const std::string kAttrBlackKeyWidth = "black-key-width"
static

◆ kAttrDrawNoteText

const std::string kAttrDrawNoteText = "draw-note-text"
static

◆ kAttrNoteNameFont

const std::string kAttrNoteNameFont = "note-name-font"
static

◆ kAttrNumKeys

const std::string kAttrNumKeys = "num-keys"
static

◆ kAttrSelectionRangeMax

const std::string kAttrSelectionRangeMax = "sel-range-max"
static

◆ kAttrSelectionRangeMin

const std::string kAttrSelectionRangeMin = "sel-range-min"
static

◆ kAttrStartNote

const std::string kAttrStartNote = "start-note"
static

◆ kAttrWhiteKeyColor

const std::string kAttrWhiteKeyColor = "white-key-color"
static

◆ kAttrWhiteKeyPressed

const std::string kAttrWhiteKeyPressed = "white-key-pressed"
static

◆ kAttrWhiteKeyPressedColor

const std::string kAttrWhiteKeyPressedColor = "white-key-pressed-color"
static

◆ kAttrWhiteKeyShadowLeft

const std::string kAttrWhiteKeyShadowLeft = "white-key-shadow-left"
static

◆ kAttrWhiteKeyShadowRight

const std::string kAttrWhiteKeyShadowRight = "white-key-shadow-right"
static

◆ kAttrWhiteKeyUnpressed

const std::string kAttrWhiteKeyUnpressed = "white-key-unpressed"
static

◆ kAttrWhiteKeyWidth

const std::string kAttrWhiteKeyWidth = "white-key-width"
static

◆ kBlackCColor

constexpr const CColor kBlackCColor = CColor ( 0, 0, 0, 255)

◆ kBlueCColor

constexpr const CColor kBlueCColor = CColor ( 0, 0, 255, 255)

◆ kCheckBoxTitleMargin

CCoord kCheckBoxTitleMargin = 5
static

◆ kCKnobMouseStateAttribute

constexpr CViewAttributeID kCKnobMouseStateAttribute = 'knms'
static

◆ kCKnobRange

const float kCKnobRange = 200.f
static

◆ kCopyrightSymbol

UTF8StringPtr kCopyrightSymbol = "\xC2\xA9"

copyright sign

◆ kCViewAlphaValueAttrID

constexpr CViewAttributeID kCViewAlphaValueAttrID = 'cvav'
static

◆ kCViewAttributeReferencePointer

constexpr CViewAttributeID kCViewAttributeReferencePointer = 'cvrp'
static

◆ kCViewBackgroundBitmapAttrID

constexpr CViewAttributeID kCViewBackgroundBitmapAttrID = 'cvbb'
static

◆ kCViewContainerBackgroundOffsetAttribute

const CViewAttributeID kCViewContainerBackgroundOffsetAttribute = 'vcbo'

◆ kCViewContainerDropTargetAttribute

const CViewAttributeID kCViewContainerDropTargetAttribute = 'vcdt'

◆ kCViewContainerLastDrawnFocusAttribute

const CViewAttributeID kCViewContainerLastDrawnFocusAttribute = 'vclf'

◆ kCViewContainerMouseDownViewAttribute

const CViewAttributeID kCViewContainerMouseDownViewAttribute = 'vcmd'

◆ kCViewControllerAttribute

constexpr CViewAttributeID kCViewControllerAttribute = 'ictr'
static

◆ kCViewCustomDropTargetAttrID

constexpr CViewAttributeID kCViewCustomDropTargetAttrID = 'cvdt'
static

◆ kCViewDisabledBackgroundBitmapAttrID

constexpr CViewAttributeID kCViewDisabledBackgroundBitmapAttrID = 'cvdb'
static

◆ kCViewHitTestPathAttrID

constexpr CViewAttributeID kCViewHitTestPathAttrID = 'cvht'
static

◆ kCViewMouseableAreaAttrID

constexpr CViewAttributeID kCViewMouseableAreaAttrID = 'cvma'
static

◆ kCViewTooltipAttribute

constexpr CViewAttributeID kCViewTooltipAttribute = 'cvtt'
static

◆ kCyanCColor

constexpr const CColor kCyanCColor = CColor ( 0, 255, 255, 255)

◆ kDefaultOnOffDashLength

const CCoord kDefaultOnOffDashLength[] = {1, 1}
static

◆ kDegreeSymbol

UTF8StringPtr kDegreeSymbol = "\xC2\xB0"

degree sign

◆ kGreenCColor

constexpr const CColor kGreenCColor = CColor ( 0, 255, 0, 255)

◆ kGreyCColor

constexpr const CColor kGreyCColor = CColor (127, 127, 127, 255)

◆ kInfiniteSymbol

UTF8StringPtr kInfiniteSymbol = "\xE2\x88\x9E"

infinity sign

◆ kLineOnOffDash

const CLineStyle kLineOnOffDash

◆ kLineSolid

const CLineStyle kLineSolid {}

◆ kMagentaCColor

constexpr const CColor kMagentaCColor = CColor (255, 0, 255, 255)

◆ kMicroSymbol

UTF8StringPtr kMicroSymbol = "\xC2\xB5"

micro sign

◆ kMsgLooseFocus

IdStringPtr kMsgLooseFocus = "LooseFocus"

Message of a view loosing focus (only CTextEdit and COptionMenu send this)

◆ kMsgNewFocusView

IdStringPtr kMsgNewFocusView = "kMsgNewFocusView"

Message send to all parents of the new focus view.

◆ kMsgOldFocusView

IdStringPtr kMsgOldFocusView = "kMsgOldFocusView"

Message send to all parents of the old focus view.

◆ kMsgViewSizeChanged

IdStringPtr kMsgViewSizeChanged = "kMsgViewSizeChanged"

Message send to parent that the size of the view has changed.

◆ kNormalFont

const CFontRef kNormalFont = &gNormalFont

◆ kNormalFontBig

const CFontRef kNormalFontBig = &gNormalFontBig

◆ kNormalFontSmall

const CFontRef kNormalFontSmall = &gNormalFontSmall

◆ kNormalFontSmaller

const CFontRef kNormalFontSmaller = &gNormalFontSmaller

◆ kNormalFontVeryBig

const CFontRef kNormalFontVeryBig = &gNormalFontVeryBig

◆ kNormalFontVerySmall

const CFontRef kNormalFontVerySmall = &gNormalFontVerySmall

◆ kPerthousandSymbol

UTF8StringPtr kPerthousandSymbol = "\xE2\x80\xB0"

per mille sign

◆ kRedCColor

constexpr const CColor kRedCColor = CColor (255, 0, 0, 255)

◆ kRegisteredSymbol

UTF8StringPtr kRegisteredSymbol = "\xC2\xAE"

registered sign

◆ kStreamIOError

constexpr uint32_t kStreamIOError = std::numeric_limits<uint32_t>::max ()
static

◆ kStreamSeekError

constexpr int64_t kStreamSeekError = -1
static

◆ kSymbolFont

const CFontRef kSymbolFont = &gSymbolFont

◆ kSystemFont

const CFontRef kSystemFont = &gSystemFont

◆ kTemplateAttributeMaxSize

constexpr auto kTemplateAttributeMaxSize = "maxSize"
static

◆ kTemplateAttributeMinSize

constexpr auto kTemplateAttributeMinSize = "minSize"
static

◆ kTrademarkSymbol

UTF8StringPtr kTrademarkSymbol = "\xE2\x84\xA2"

trade mark sign

◆ kTransparentCColor

constexpr const CColor kTransparentCColor = CColor (255, 255, 255, 0)

◆ kUIDescIdentifier

constexpr int64_t kUIDescIdentifier = 0x7072637365646975LL
static

◆ kViewNameAttribute

CViewAttributeID kViewNameAttribute = 'cvcr'
static

◆ kWhiteCColor

constexpr const CColor kWhiteCColor = CColor (255, 255, 255, 255)

◆ kYellowCColor

constexpr const CColor kYellowCColor = CColor (255, 255, 0, 255)

◆ result

return result

◆ unixPathSeparator

const int8_t unixPathSeparator = '/'
static

◆ windowsPathSeparator

const int8_t windowsPathSeparator = '\\'
static