Audacity 3.2.0
Public Member Functions | Static Public Member Functions | Protected Attributes | Private Member Functions | Private Attributes | List of all members
MixerToolBar Class Referencefinal

A ToolBar that provides the record and playback volume settings. More...

#include <MixerToolBar.h>

Inheritance diagram for MixerToolBar:
[legend]
Collaboration diagram for MixerToolBar:
[legend]

Public Member Functions

 MixerToolBar (AudacityProject &project)
 Methods for MixerToolBar. More...
 
virtual ~MixerToolBar ()
 
void Create (wxWindow *parent) override
 
void UpdatePrefs () override
 
void UpdateControls ()
 
void SetMixer (wxCommandEvent &event)
 
void Populate () override
 
void Repaint (wxDC *WXUNUSED(dc)) override
 
void EnableDisableButtons () override
 
int GetMinToolbarWidth () override
 
int GetInitialWidth () override
 Resizable toolbars should implement these. More...
 
void OnFocus (wxFocusEvent &event)
 
void OnCaptureKey (wxCommandEvent &event)
 
void OnSlider (wxCommandEvent &event)
 
void OnAudioCapture (AudioIOEvent)
 
void ShowOutputGainDialog ()
 
void ShowInputGainDialog ()
 
void AdjustOutputGain (int adj)
 
void AdjustInputGain (int adj)
 
void RegenerateTooltips () override
 
- Public Member Functions inherited from ToolBar
 ToolBar (AudacityProject &project, int type, const TranslatableString &label, const wxString &section, bool resizable=false)
 
virtual ~ToolBar ()
 
bool AcceptsFocus () const override
 
virtual void SetToDefaultSize ()
 
virtual void Create (wxWindow *parent)
 
virtual void EnableDisableButtons ()=0
 
virtual void ReCreateButtons ()
 
void UpdatePrefs () override
 
virtual void RegenerateTooltips ()=0
 
int GetType ()
 
TranslatableString GetTitle ()
 
TranslatableString GetLabel ()
 
wxString GetSection ()
 
ToolDockGetDock ()
 
void SetLabel (const TranslatableString &label)
 
virtual void SetDocked (ToolDock *dock, bool pushed)
 
virtual bool Expose (bool show=true)
 
bool IsResizable () const
 
bool IsVisible () const
 
bool IsDocked () const
 
bool IsPositioned ()
 
void SetVisible (bool bVisible)
 
void SetPositioned ()
 
virtual int GetInitialWidth ()
 Resizable toolbars should implement these. More...
 
virtual int GetMinToolbarWidth ()
 
virtual wxSize GetDockedSize ()
 
wxSize GetSmartDockedSize ()
 
virtual void ResizingDone ()
 
- Public Member Functions inherited from wxPanelWrapper
 wxPanelWrapper ()
 
 wxPanelWrapper (wxWindow *parent, wxWindowID winid=wxID_ANY, const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxDefaultSize, long style=wxTAB_TRAVERSAL|wxNO_BORDER, const TranslatableString &name=XO("Panel"))
 
bool Create (wxWindow *parent, wxWindowID winid=wxID_ANY, const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxDefaultSize, long style=wxTAB_TRAVERSAL|wxNO_BORDER, const TranslatableString &name=XO("Panel"))
 
void SetLabel (const TranslatableString &label)
 
void SetName (const TranslatableString &name)
 
void SetToolTip (const TranslatableString &toolTip)
 
void SetName ()
 
- Public Member Functions inherited from wxTabTraversalWrapper< wxPanel >
 wxTabTraversalWrapper (Args &&... args)
 
 wxTabTraversalWrapper (const wxTabTraversalWrapper &)=delete
 
 wxTabTraversalWrapper (wxTabTraversalWrapper &&)=delete
 
wxTabTraversalWrapperoperator= (const wxTabTraversalWrapper &)=delete
 
wxTabTraversalWrapperoperator= (wxTabTraversalWrapper &&)=delete
 

Static Public Member Functions

static MixerToolBarGet (AudacityProject &project)
 
static const MixerToolBarGet (const AudacityProject &project)
 
- Static Public Member Functions inherited from ToolBar
static AButtonMakeButton (wxWindow *parent, teBmps eUp, teBmps eDown, teBmps eHilite, teBmps eDownHi, teBmps eStandardUp, teBmps eStandardDown, teBmps eDisabled, wxWindowID id, wxPoint placement, bool processdownevents, wxSize size)
 
static AButtonMakeButton (ToolBar *parent, teBmps eEnabledUp, teBmps eEnabledDown, teBmps eDisabled, int id, bool processdownevents, const TranslatableString &label)
 
static void MakeAlternateImages (AButton &button, int idx, teBmps eUp, teBmps eDown, teBmps eHilite, teBmps eDownHi, teBmps eStandardUp, teBmps eStandardDown, teBmps eDisabled, wxSize size)
 
static void SetButtonToolTip (AudacityProject &project, AButton &button, const ComponentInterfaceSymbol commands[], size_t nCommands)
 
static void MakeButtonBackgroundsSmall ()
 
static void MakeButtonBackgroundsLarge ()
 

Protected Attributes

float mInputSliderVolume
 
float mOutputSliderVolume
 
- Protected Attributes inherited from ToolBar
AudacityProjectmProject
 
TranslatableString mLabel
 
wxString mSection
 
int mType
 

Private Member Functions

void InitializeMixerToolBar ()
 
void SetToolTips ()
 

Private Attributes

Observer::Subscription mSubscription
 
ASlidermInputSlider
 
ASlidermOutputSlider
 
bool mEnabled
 

Additional Inherited Members

- Public Types inherited from ToolBar
using Holder = wxWindowPtr< ToolBar >
 
- Protected Member Functions inherited from ToolBar
void SetButton (bool down, AButton *button)
 
wxBoxSizer * GetSizer ()
 
void Add (wxWindow *window, int proportion=0, int flag=wxALIGN_TOP, int border=0, wxObject *userData=NULL)
 
void Add (wxSizer *sizer, int proportion=0, int flag=0, int border=0, wxObject *userData=NULL)
 
void Add (int width, int height, int proportion=0, int flag=0, int border=0, wxObject *userData=NULL)
 
void AddSpacer (int size=14)
 
void AddStretchSpacer (int prop=1)
 
void Detach (wxWindow *window)
 
void Detach (wxSizer *sizer)
 
void Updated ()
 
int GetResizeGrabberWidth ()
 Returns the width in pixels of the resizer element. More...
 
virtual void Populate ()=0
 
virtual void Repaint (wxDC *dc)=0
 
void OnErase (wxEraseEvent &event)
 
void OnPaint (wxPaintEvent &event)
 
void OnMouseEvents (wxMouseEvent &event)
 
- Protected Member Functions inherited from PrefsListener
virtual void UpdateSelectedPrefs (int id)
 
 PrefsListener ()
 
virtual ~PrefsListener ()
 
virtual void UpdatePrefs ()=0
 
- Static Protected Member Functions inherited from ToolBar
static void MakeMacRecoloredImage (teBmps eBmpOut, teBmps eBmpIn)
 
static void MakeMacRecoloredImageSize (teBmps eBmpOut, teBmps eBmpIn, const wxSize &size)
 
static void MakeRecoloredImage (teBmps eBmpOut, teBmps eBmpIn)
 
static void MakeRecoloredImageSize (teBmps eBmpOut, teBmps eBmpIn, const wxSize &size)
 
- Static Protected Member Functions inherited from PrefsListener
static void Broadcast (int id=0)
 Call this static function to notify all PrefsListener objects. More...
 

Detailed Description

A ToolBar that provides the record and playback volume settings.

Definition at line 24 of file MixerToolBar.h.

Constructor & Destructor Documentation

◆ MixerToolBar()

MixerToolBar::MixerToolBar ( AudacityProject project)

Methods for MixerToolBar.

Definition at line 58 of file MixerToolBar.cpp.

59: ToolBar(project, MixerBarID, XO("Mixer"), wxT("Mixer"), true)
60{
63 mEnabled = true;
64}
#define XO(s)
Definition: Internat.h:31
@ MixerBarID
Definition: ToolBar.h:77
float mOutputSliderVolume
Definition: MixerToolBar.h:63
float mInputSliderVolume
Definition: MixerToolBar.h:59
ToolBar(AudacityProject &project, int type, const TranslatableString &label, const wxString &section, bool resizable=false)
Definition: ToolBar.cpp:330

◆ ~MixerToolBar()

MixerToolBar::~MixerToolBar ( )
virtual

Definition at line 66 of file MixerToolBar.cpp.

67{
68}

Member Function Documentation

◆ AdjustInputGain()

void MixerToolBar::AdjustInputGain ( int  adj)

Definition at line 296 of file MixerToolBar.cpp.

297{
298 if (adj < 0) {
299 mInputSlider->Decrease(-adj);
300 }
301 else {
303 }
304 wxCommandEvent e;
305 SetMixer(e);
307}
void Increase(float steps)
Definition: ASlider.cpp:1752
void Decrease(float steps)
Definition: ASlider.cpp:1757
ASlider * mInputSlider
Definition: MixerToolBar.h:72
void UpdateControls()
void SetMixer(wxCommandEvent &event)

References ASlider::Decrease(), ASlider::Increase(), mInputSlider, SetMixer(), and UpdateControls().

Here is the call graph for this function:

◆ AdjustOutputGain()

void MixerToolBar::AdjustOutputGain ( int  adj)

Definition at line 283 of file MixerToolBar.cpp.

284{
285 if (adj < 0) {
286 mOutputSlider->Decrease(-adj);
287 }
288 else {
290 }
291 wxCommandEvent e;
292 SetMixer(e);
294}
ASlider * mOutputSlider
Definition: MixerToolBar.h:73

References ASlider::Decrease(), ASlider::Increase(), mOutputSlider, SetMixer(), and UpdateControls().

Here is the call graph for this function:

◆ Create()

void MixerToolBar::Create ( wxWindow *  parent)
overridevirtual

Reimplemented from ToolBar.

Definition at line 81 of file MixerToolBar.cpp.

82{
83 ToolBar::Create(parent);
85}
void UpdatePrefs() override
virtual void Create(wxWindow *parent)
Definition: ToolBar.cpp:475

References ToolBar::Create(), and UpdatePrefs().

Here is the call graph for this function:

◆ EnableDisableButtons()

void MixerToolBar::EnableDisableButtons ( )
inlineoverridevirtual

Implements ToolBar.

Definition at line 42 of file MixerToolBar.h.

42{};

◆ Get() [1/2]

MixerToolBar & MixerToolBar::Get ( AudacityProject project)
static

Definition at line 70 of file MixerToolBar.cpp.

71{
72 auto &toolManager = ToolManager::Get( project );
73 return *static_cast<MixerToolBar*>( toolManager.GetToolBar(MixerBarID) );
74}
A ToolBar that provides the record and playback volume settings.
Definition: MixerToolBar.h:24
static ToolManager & Get(AudacityProject &project)

References ToolManager::Get(), and MixerBarID.

Referenced by Get(), ExtraActions::Handler::OnInputGain(), ExtraActions::Handler::OnInputGainDec(), ExtraActions::Handler::OnInputGainInc(), ExtraActions::Handler::OnOutputGain(), ExtraActions::Handler::OnOutputGainDec(), ExtraActions::Handler::OnOutputGainInc(), and ProjectManager::OnTimer().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ Get() [2/2]

const MixerToolBar & MixerToolBar::Get ( const AudacityProject project)
static

Definition at line 76 of file MixerToolBar.cpp.

77{
78 return Get( const_cast<AudacityProject&>( project )) ;
79}
The top-level handle to an Audacity project. It serves as a source of events that other objects can b...
Definition: Project.h:89
static MixerToolBar & Get(AudacityProject &project)

References Get().

Here is the call graph for this function:

◆ GetInitialWidth()

int MixerToolBar::GetInitialWidth ( )
inlineoverridevirtual

Resizable toolbars should implement these.

Reimplemented from ToolBar.

Definition at line 44 of file MixerToolBar.h.

44{ return 460; }

◆ GetMinToolbarWidth()

int MixerToolBar::GetMinToolbarWidth ( )
inlineoverridevirtual

Reimplemented from ToolBar.

Definition at line 43 of file MixerToolBar.h.

43{ return 250; }

◆ InitializeMixerToolBar()

void MixerToolBar::InitializeMixerToolBar ( )
private

◆ OnAudioCapture()

void MixerToolBar::OnAudioCapture ( AudioIOEvent  event)

Definition at line 138 of file MixerToolBar.cpp.

139{
140 if (event.type == AudioIOEvent::CAPTURE && event.pProject != &mProject)
141 {
142 mEnabled = !event.on;
145 }
146}
bool Enable(bool enable=true) override
Definition: ASlider.cpp:1772
AudacityProject & mProject
Definition: ToolBar.h:248
enum AudioIOEvent::Type type
AudacityProject * pProject
Definition: AudioIO.h:69

References AudioIOEvent::CAPTURE, ASlider::Enable(), mEnabled, mInputSlider, mOutputSlider, ToolBar::mProject, AudioIOEvent::pProject, and AudioIOEvent::type.

Referenced by Populate().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ OnCaptureKey()

void MixerToolBar::OnCaptureKey ( wxCommandEvent &  event)

Definition at line 154 of file MixerToolBar.cpp.

155{
156 wxKeyEvent *kevent = (wxKeyEvent *)event.GetEventObject();
157 int keyCode = kevent->GetKeyCode();
158
159 // Pass LEFT/RIGHT/UP/DOWN/PAGEUP/PAGEDOWN through for input/output sliders
160 if (FindFocus() == mInputSlider && (keyCode == WXK_LEFT || keyCode == WXK_RIGHT
161 || keyCode == WXK_UP || keyCode == WXK_DOWN
162 || keyCode == WXK_PAGEUP || keyCode == WXK_PAGEDOWN)) {
163 return;
164 }
165 if (FindFocus() == mOutputSlider && (keyCode == WXK_LEFT || keyCode == WXK_RIGHT
166 || keyCode == WXK_UP || keyCode == WXK_DOWN
167 || keyCode == WXK_PAGEUP || keyCode == WXK_PAGEDOWN)) {
168 return;
169 }
170
171 event.Skip();
172
173 return;
174}

References mInputSlider, and mOutputSlider.

◆ OnFocus()

void MixerToolBar::OnFocus ( wxFocusEvent &  event)

Definition at line 149 of file MixerToolBar.cpp.

150{
151 KeyboardCapture::OnFocus( *this, event );
152}
void OnFocus(wxWindow &window, wxFocusEvent &event)
a function useful to implement a focus event handler The window releases the keyboard if the event is...

References KeyboardCapture::OnFocus().

Referenced by Populate().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ OnSlider()

void MixerToolBar::OnSlider ( wxCommandEvent &  event)

◆ Populate()

void MixerToolBar::Populate ( )
overridevirtual

Implements ToolBar.

Definition at line 87 of file MixerToolBar.cpp.

88{
89 SetBackgroundColour( theTheme.Colour( clrMedium ) );
90 // Recording icon and slider
92 wxID_ANY,
93 theTheme.Bitmap(bmpMic)), 0, wxALIGN_CENTER);
94 mInputSlider = safenew ASlider(this, wxID_ANY, XO("Recording Volume"),
95 wxDefaultPosition, wxSize(130, 25),
96 ASlider::Options{}.Line( 0.1f ).Page( 2.0f ));
97 Add(mInputSlider, 1, wxALIGN_CENTER);
98 mInputSlider->SetSizeHints(wxSize(75, 25), wxSize(1000, 25));
99
100 // Playback icon and slider
102 wxID_ANY,
103 theTheme.Bitmap(bmpSpeaker)), 0, wxALIGN_CENTER);
104 mOutputSlider = safenew ASlider(this, wxID_ANY, XO("Playback Volume"),
105 wxDefaultPosition, wxSize(130, 25),
106 ASlider::Options{}.Line( 0.1f ).Page( 2.0f ));
107 Add(mOutputSlider, 1, wxALIGN_CENTER);
108 mOutputSlider->SetSizeHints(wxSize(75, 25), wxSize(1000, 25));
109
110 // this bit taken from SelectionBar::Populate()
111 mInputSlider->Bind(wxEVT_SET_FOCUS,
113 this);
114 mInputSlider->Bind(wxEVT_KILL_FOCUS,
116 this);
117 mOutputSlider->Bind(wxEVT_SET_FOCUS,
119 this);
120 mOutputSlider->Bind(wxEVT_KILL_FOCUS,
122 this);
123 // Show or hide the input slider based on whether it works
124 auto gAudioIO = AudioIO::Get();
125 mInputSlider->Enable(mEnabled && gAudioIO->InputMixerWorks());
127
129
130 // Add a little space
131 Add(2, -1);
132
133 // Listen for capture events
136}
#define safenew
Definition: MemoryX.h:10
THEME_API Theme theTheme
Definition: Theme.cpp:82
ASlider is a custom slider, allowing for a slicker look and feel.
Definition: ASlider.h:234
A widget for bitmaps which ignores the erase event for flicker-free use.
Definition: Grabber.h:150
static AudioIO * Get()
Definition: AudioIO.cpp:133
void OnAudioCapture(AudioIOEvent)
Observer::Subscription mSubscription
Definition: MixerToolBar.h:70
void OnFocus(wxFocusEvent &event)
Subscription Subscribe(Callback callback)
Connect a callback to the Publisher; later-connected are called earlier.
Definition: Observer.h:199
wxColour & Colour(int iIndex)
wxBitmap & Bitmap(int iIndex)
void Add(wxWindow *window, int proportion=0, int flag=wxALIGN_TOP, int border=0, wxObject *userData=NULL)
Definition: ToolBar.cpp:686
Options & Line(float l)
Definition: ASlider.h:257

References ToolBar::Add(), ThemeBase::Bitmap(), ThemeBase::Colour(), ASlider::Enable(), AudioIO::Get(), ASlider::Options::Line(), mEnabled, mInputSlider, mOutputSlider, mSubscription, OnAudioCapture(), OnFocus(), safenew, Observer::Publisher< Message, NotifyAll >::Subscribe(), theTheme, UpdateControls(), and XO.

Here is the call graph for this function:

◆ RegenerateTooltips()

void MixerToolBar::RegenerateTooltips ( )
inlineoverridevirtual

Implements ToolBar.

Definition at line 59 of file MixerToolBar.h.

59{};

Referenced by UpdatePrefs().

Here is the caller graph for this function:

◆ Repaint()

void MixerToolBar::Repaint ( wxDC *  WXUNUSEDdc)
inlineoverride

Definition at line 41 of file MixerToolBar.h.

41{};

◆ SetMixer()

void MixerToolBar::SetMixer ( wxCommandEvent &  event)

Definition at line 250 of file MixerToolBar.cpp.

251{
252#if USE_PORTMIXER
253 float inputVolume = mInputSlider->Get();
254 float outputVolume = mOutputSlider->Get();
255 float oldIn, oldOut;
256 int inputSource;
257
258 auto gAudioIO = AudioIO::Get();
259 gAudioIO->GetMixer(&inputSource, &oldIn, &oldOut);
260 gAudioIO->SetMixer(inputSource, inputVolume, outputVolume);
261 mOutputSliderVolume = outputVolume;
262 mInputSliderVolume = inputVolume;
263 SetToolTips();
264#endif // USE_PORTMIXER
265}
float Get(bool convert=true)
Definition: ASlider.cpp:1742
void SetToolTips()

References AudioIO::Get(), ASlider::Get(), mInputSlider, mInputSliderVolume, mOutputSlider, mOutputSliderVolume, and SetToolTips().

Referenced by AdjustInputGain(), AdjustOutputGain(), ShowInputGainDialog(), and ShowOutputGainDialog().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ SetToolTips()

void MixerToolBar::SetToolTips ( )
private

Definition at line 309 of file MixerToolBar.cpp.

310{
311 if (mInputSlider->IsEnabled()) {
312 mInputSlider->SetToolTipTemplate(XO("Recording Volume: %.2f"));
313 }
314 else {
315 mInputSlider->SetToolTipTemplate(XO("Recording Volume (Unavailable; use system mixer.)"));
316 }
317
318 if (mOutputSlider->IsEnabled()) {
319 auto format = XO("Playback Volume: %.2f");
320
322 }
323 else {
324 mOutputSlider->SetToolTipTemplate(XO("Playback Volume (Unavailable; use system mixer.)"));
325 }
326}
int format
Definition: ExportPCM.cpp:56
bool IsEnabled() const
Definition: ASlider.cpp:1784
void SetToolTipTemplate(const TranslatableString &tip)
Definition: ASlider.cpp:1737

References format, ASlider::IsEnabled(), mInputSlider, mOutputSlider, ASlider::SetToolTipTemplate(), and XO.

Referenced by SetMixer(), and UpdateControls().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ShowInputGainDialog()

void MixerToolBar::ShowInputGainDialog ( )

Definition at line 275 of file MixerToolBar.cpp.

276{
278 wxCommandEvent e;
279 SetMixer(e);
281}
bool ShowDialog(wxPoint pos=wxPoint(-1, -1))
Definition: ASlider.cpp:1762

References mInputSlider, SetMixer(), ASlider::ShowDialog(), and UpdateControls().

Here is the call graph for this function:

◆ ShowOutputGainDialog()

void MixerToolBar::ShowOutputGainDialog ( )

Definition at line 267 of file MixerToolBar.cpp.

268{
270 wxCommandEvent e;
271 SetMixer(e);
273}

References mOutputSlider, SetMixer(), ASlider::ShowDialog(), and UpdateControls().

Here is the call graph for this function:

◆ UpdateControls()

void MixerToolBar::UpdateControls ( )

Definition at line 223 of file MixerToolBar.cpp.

224{
225#if USE_PORTMIXER
226 float inputVolume;
227 float playbackVolume;
228 int inputSource;
229
230 // Show or hide the input slider based on whether it works
231 auto gAudioIO = AudioIO::Get();
232 mInputSlider->Enable(mEnabled && gAudioIO->InputMixerWorks());
233
234 gAudioIO->GetMixer(&inputSource, &inputVolume, &playbackVolume);
235
236 if (mOutputSlider->Get() != playbackVolume) {
237 mOutputSlider->Set(playbackVolume);
238 mOutputSliderVolume = playbackVolume;
239 SetToolTips();
240 }
241
242 if (mInputSlider->Get() != inputVolume) {
243 mInputSlider->Set(inputVolume);
244 mInputSliderVolume = inputVolume;
245 SetToolTips();
246 }
247#endif // USE_PORTMIXER
248}
void Set(float value)
Definition: ASlider.cpp:1747

References ASlider::Enable(), AudioIO::Get(), ASlider::Get(), mEnabled, mInputSlider, mInputSliderVolume, mOutputSlider, mOutputSliderVolume, ASlider::Set(), and SetToolTips().

Referenced by AdjustInputGain(), AdjustOutputGain(), Populate(), ShowInputGainDialog(), and ShowOutputGainDialog().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ UpdatePrefs()

void MixerToolBar::UpdatePrefs ( )
overridevirtual

Implements PrefsListener.

Definition at line 176 of file MixerToolBar.cpp.

177{
178#if USE_PORTMIXER
179 float inputVolume;
180 float playbackVolume;
181 int inputSource;
182
183 // Reset the selected source
184 auto gAudioIO = AudioIO::Get();
185 gAudioIO->GetMixer(&inputSource, &inputVolume, &playbackVolume);
186
187 // Show or hide the input slider based on whether it works
188 mInputSlider->Enable(mEnabled && gAudioIO->InputMixerWorks());
189 Layout();
190
191// This code is from before the mixer toolbar was resizable.
192// Now that it is resizable we trust the user to resize the mixer toolbar themselves.
193#if 0
194 wxSize oldSize( GetSize() );
195 // Layout the toolbar
196 Layout();
197 // Resize the toolbar to fit the contents
198 //Fit();
199 // And make that size the minimum
200 wxSize newMinSize( wxWindow::GetSizer()->GetMinSize() );
201 SetMinSize( newMinSize );
202 // IF size must increase, do so.
203 if( newMinSize.x > oldSize.x ){
204 SetSize( newMinSize );
205 // Notify someone that we've changed our size
206 Updated();
207 }
208 // ELSE preserve original size.
209 else
210 SetSize( oldSize );
211#endif
212#endif
213
214 // Set label to pull in language change
215 SetLabel(XO("Mixer"));
216
218
219 // Give base class a chance
221}
void RegenerateTooltips() override
Definition: MixerToolBar.h:59
void SetLabel(const wxString &label) override
Definition: ToolBar.cpp:398
void UpdatePrefs() override
Definition: ToolBar.cpp:605
void Updated()
Definition: ToolBar.cpp:661

References ASlider::Enable(), AudioIO::Get(), mEnabled, mInputSlider, RegenerateTooltips(), ToolBar::SetLabel(), ToolBar::Updated(), ToolBar::UpdatePrefs(), and XO.

Referenced by Create().

Here is the call graph for this function:
Here is the caller graph for this function:

Member Data Documentation

◆ mEnabled

bool MixerToolBar::mEnabled
private

Definition at line 74 of file MixerToolBar.h.

Referenced by OnAudioCapture(), Populate(), UpdateControls(), and UpdatePrefs().

◆ mInputSlider

ASlider* MixerToolBar::mInputSlider
private

◆ mInputSliderVolume

float MixerToolBar::mInputSliderVolume
protected

Definition at line 62 of file MixerToolBar.h.

Referenced by SetMixer(), and UpdateControls().

◆ mOutputSlider

ASlider* MixerToolBar::mOutputSlider
private

◆ mOutputSliderVolume

float MixerToolBar::mOutputSliderVolume
protected

Definition at line 63 of file MixerToolBar.h.

Referenced by SetMixer(), and UpdateControls().

◆ mSubscription

Observer::Subscription MixerToolBar::mSubscription
private

Definition at line 70 of file MixerToolBar.h.

Referenced by Populate().


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