VCV Rack API  v1
rack::app Namespace Reference

Rack-specific GUI widgets and functions that control and offer feedback for the rack state. More...

Classes

struct  AudioWidget
 
struct  CableWidget
 
struct  CircularShadow
 
struct  Knob
 Implements vertical dragging behavior for ParamWidgets. More...
 
struct  LedDisplay
 
struct  LedDisplayChoice
 
struct  LedDisplaySeparator
 
struct  LedDisplayTextField
 
struct  LightWidget
 
struct  MenuBar
 
struct  MidiWidget
 
struct  ModuleLightWidget
 A MultiLightWidget that points to a module's Light or a range of lights Will access firstLightId, firstLightId + 1, etc. More...
 
struct  ModuleWidget
 Manages an engine::Module in the rack. More...
 
struct  MultiLightWidget
 Mixes a list of colors based on a list of brightness values. More...
 
struct  PanelBorder
 
struct  ParamWidget
 Manages an engine::Param on a ModuleWidget. More...
 
struct  PortWidget
 Manages an engine::Port on a ModuleWidget. More...
 
struct  RackRail
 
struct  RackScrollWidget
 
struct  RackWidget
 Container for ModuleWidget and CableWidget. More...
 
struct  Scene
 
struct  SliderKnob
 
struct  SvgButton
 
struct  SvgKnob
 A knob which rotates an SVG and caches it in a framebuffer. More...
 
struct  SvgPanel
 
struct  SvgPort
 
struct  SvgScrew
 If you don't add these to your ModuleWidget, they will fall out of the rack... More...
 
struct  SvgSlider
 Behaves like a knob but linearly moves an widget::SvgWidget between two points. More...
 
struct  SvgSwitch
 A ParamWidget with multiple frames corresponding to its value. More...
 
struct  Switch
 A ParamWidget that represents an integer. More...
 

Functions

float in2px (float in)
 Converts inch measurements to pixels. More...
 
math::Vec in2px (math::Vec in)
 
float mm2px (float mm)
 Converts millimeter measurements to pixels. More...
 
math::Vec mm2px (math::Vec mm)
 
MenuBarcreateMenuBar ()
 
widget::WidgetmoduleBrowserCreate ()
 

Variables

DEPRECATED typedef SvgButton SVGButton
 
DEPRECATED typedef SvgKnob SVGKnob
 
DEPRECATED typedef SvgPanel SVGPanel
 
DEPRECATED typedef SvgPort SVGPort
 
DEPRECATED typedef SvgScrew SVGScrew
 
DEPRECATED typedef SvgSlider SVGSlider
 
DEPRECATED typedef SvgSwitch SVGSwitch
 
const std::string APP_NAME
 
const std::string APP_VERSION
 
const std::string APP_ARCH
 
const std::string ABI_VERSION
 
const std::string API_URL
 
const std::string API_VERSION
 
static const float SVG_DPI = 75.f
 
static const float MM_PER_IN = 25.4f
 
static const float RACK_GRID_WIDTH = 15
 
static const float RACK_GRID_HEIGHT = 380
 
static const math::Vec RACK_GRID_SIZE = math::Vec(RACK_GRID_WIDTH, RACK_GRID_HEIGHT)
 
static const math::Vec RACK_OFFSET = RACK_GRID_SIZE.mult(math::Vec(2000, 100))
 
static const math::Vec BUS_BOARD_GRID_SIZE = math::Vec(RACK_GRID_WIDTH * 20, RACK_GRID_HEIGHT)
 

Detailed Description

Rack-specific GUI widgets and functions that control and offer feedback for the rack state.

Function Documentation

◆ in2px() [1/2]

float rack::app::in2px ( float  in)
inline

Converts inch measurements to pixels.

◆ in2px() [2/2]

math::Vec rack::app::in2px ( math::Vec  in)
inline

◆ mm2px() [1/2]

float rack::app::mm2px ( float  mm)
inline

Converts millimeter measurements to pixels.

◆ mm2px() [2/2]

math::Vec rack::app::mm2px ( math::Vec  mm)
inline

◆ createMenuBar()

MenuBar* rack::app::createMenuBar ( )

◆ moduleBrowserCreate()

widget::Widget* rack::app::moduleBrowserCreate ( )

Variable Documentation

◆ SVGButton

DEPRECATED typedef SvgButton rack::app::SVGButton

◆ SVGKnob

DEPRECATED typedef SvgKnob rack::app::SVGKnob

◆ SVGPanel

DEPRECATED typedef SvgPanel rack::app::SVGPanel

◆ SVGPort

DEPRECATED typedef SvgPort rack::app::SVGPort

◆ SVGScrew

DEPRECATED typedef SvgScrew rack::app::SVGScrew

◆ SVGSlider

DEPRECATED typedef SvgSlider rack::app::SVGSlider

◆ SVGSwitch

DEPRECATED typedef SvgSwitch rack::app::SVGSwitch

◆ APP_NAME

const std::string rack::app::APP_NAME

◆ APP_VERSION

const std::string rack::app::APP_VERSION

◆ APP_ARCH

const std::string rack::app::APP_ARCH

◆ ABI_VERSION

const std::string rack::app::ABI_VERSION

◆ API_URL

const std::string rack::app::API_URL

◆ API_VERSION

const std::string rack::app::API_VERSION

◆ SVG_DPI

const float rack::app::SVG_DPI = 75.f
static

◆ MM_PER_IN

const float rack::app::MM_PER_IN = 25.4f
static

◆ RACK_GRID_WIDTH

const float rack::app::RACK_GRID_WIDTH = 15
static

◆ RACK_GRID_HEIGHT

const float rack::app::RACK_GRID_HEIGHT = 380
static

◆ RACK_GRID_SIZE

const math::Vec rack::app::RACK_GRID_SIZE = math::Vec(RACK_GRID_WIDTH, RACK_GRID_HEIGHT)
static

◆ RACK_OFFSET

const math::Vec rack::app::RACK_OFFSET = RACK_GRID_SIZE.mult(math::Vec(2000, 100))
static

◆ BUS_BOARD_GRID_SIZE

const math::Vec rack::app::BUS_BOARD_GRID_SIZE = math::Vec(RACK_GRID_WIDTH * 20, RACK_GRID_HEIGHT)
static