JUCE v8.0.9
JUCE API
 
Loading...
Searching...
No Matches
juce::WebToggleButtonRelay Class Referenceabstract

Helper class that relays audio parameter information to an object inside a WebBrowserComponent. More...

#include <juce_WebControlRelays.h>

Inheritance diagram for juce::WebToggleButtonRelay:
Collaboration diagram for juce::WebToggleButtonRelay:

Classes

struct  Listener
 

Public Member Functions

 WebToggleButtonRelay (StringRef nameIn)
 Creating a relay will ensure that a Javascript object under the provided name will be available in the specified WebBrowserComponent's context.
 
void addListener (Listener *l)
 
WebBrowserComponent::Options buildOptions ()
 
WebBrowserComponent::Options buildOptions (const WebBrowserComponent::Options &initialOptions) override
 
virtual WebBrowserComponent::Options buildOptions (const WebBrowserComponent::Options &initialOptions)=0
 
void emitEvent (const var &payload)
 
void removeListener (Listener *l)
 
void setToggleState (bool newState)
 

Private Member Functions

void handleEvent (const var &event)
 
void webViewConstructed (WebBrowserComponent *) override
 Called from the WebBrowserComponent constructor.
 
void webViewDestructed (WebBrowserComponent *) override
 Called from the WebBrowserComponent destructor.
 

Private Attributes

WebBrowserComponentbrowser = nullptr
 
Identifier eventId { "__juce__toggle" + name }
 
ListenerList< Listenerlisteners
 
String name
 

Detailed Description

Helper class that relays audio parameter information to an object inside a WebBrowserComponent.

In order to create a relay you need to specify an identifier for the relayed state. This will result in a Javascript object becoming available inside the WebBrowserComponent under the provided identifier.

Pass the relay object to WebBrowserComponent::Options::withOptionsFrom() to associate it with a WebBrowserComponent instance.

You can then use a WebToggleButtonParameterAttachment as you would a ButtonParameterAttachment, to attach the relay to a RangedAudioParameter. This will synchronise the state and events of the Javascript object with the audio parameter at all times.

// Add a relay to your AudioProcessorEditor members
WebToggleButtonRelay muteToggleRelay { "muteToggle" };
WebBrowserComponent webComponent { WebBrowserComponent::Options{}::withOptionsFrom (muteToggleRelay) };
Options to configure WebBrowserComponent.
Definition juce_WebBrowserComponent.h:122
A component that displays an embedded web browser.
Definition juce_WebBrowserComponent.h:84
Helper class that relays audio parameter information to an object inside a WebBrowserComponent.
Definition juce_WebControlRelays.h:150
// In your Javascript GUI code you obtain an object from the framework
import * as Juce from "juce-framework-frontend";
const checkboxState = Juce.getToggleState("muteToggle");
See also
WebToggleButtonParameterAttachment

@tags{GUI}

Constructor & Destructor Documentation

◆ WebToggleButtonRelay()

juce::WebToggleButtonRelay::WebToggleButtonRelay ( StringRef  nameIn)

Creating a relay will ensure that a Javascript object under the provided name will be available in the specified WebBrowserComponent's context.

Use the frontend framework's getToggleState function with the same name to get a hold of this object.

Member Function Documentation

◆ addListener()

void juce::WebToggleButtonRelay::addListener ( Listener l)

◆ buildOptions() [1/3]

◆ buildOptions() [2/3]

WebBrowserComponent::Options juce::WebToggleButtonRelay::buildOptions ( const WebBrowserComponent::Options initialOptions)
override

◆ buildOptions() [3/3]

virtual WebBrowserComponent::Options OptionsBuilder< WebBrowserComponent::Options >::buildOptions ( const WebBrowserComponent::Options &  initialOptions)
pure virtualinherited

◆ emitEvent()

void juce::WebToggleButtonRelay::emitEvent ( const var payload)

◆ handleEvent()

void juce::WebToggleButtonRelay::handleEvent ( const var event)
private

◆ removeListener()

void juce::WebToggleButtonRelay::removeListener ( Listener l)

◆ setToggleState()

void juce::WebToggleButtonRelay::setToggleState ( bool  newState)

◆ webViewConstructed()

void juce::WebToggleButtonRelay::webViewConstructed ( WebBrowserComponent )
overrideprivatevirtual

Called from the WebBrowserComponent constructor.

Implements juce::WebViewLifetimeListener.

◆ webViewDestructed()

void juce::WebToggleButtonRelay::webViewDestructed ( WebBrowserComponent )
overrideprivatevirtual

Called from the WebBrowserComponent destructor.

Implements juce::WebViewLifetimeListener.

Member Data Documentation

◆ browser

WebBrowserComponent* juce::WebToggleButtonRelay::browser = nullptr
private

◆ eventId

Identifier juce::WebToggleButtonRelay::eventId { "__juce__toggle" + name }
private

◆ listeners

ListenerList<Listener> juce::WebToggleButtonRelay::listeners
private

◆ name

String juce::WebToggleButtonRelay::name
private

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