1
0
mirror of https://github.com/cookiengineer/audacity synced 2025-10-26 07:13:49 +01:00
Files
audacity/src/prefs/DevicePrefs.h
Paul Licameli 8399effc45 Table-driven construction of Prefs dialog. A factory for each kind of panel...
... and maybe a future plug-in protocol to break compilation dependency on
all of the PrefsPanel subclasses.
2015-07-26 19:41:20 -04:00

64 lines
1.2 KiB
C++

/**********************************************************************
Audacity: A Digital Audio Editor
DevicePrefs.h
Joshua Haberman
James Crook
**********************************************************************/
#ifndef __AUDACITY_DEVICE_PREFS__
#define __AUDACITY_DEVICE_PREFS__
#include <wx/defs.h>
#include <wx/choice.h>
#include <wx/string.h>
#include <wx/window.h>
#include <wx/dynarray.h>
#include "PrefsPanel.h"
class ShuttleGui;
class DevicePrefs :public PrefsPanel
{
public:
DevicePrefs(wxWindow * parent);
virtual ~DevicePrefs();
virtual bool Apply();
private:
void Populate();
void PopulateOrExchange(ShuttleGui & S);
void GetNamesAndLabels();
void OnHost(wxCommandEvent & e);
void OnDevice(wxCommandEvent & e);
wxArrayString mHostNames;
wxArrayString mHostLabels;
wxString mPlayDevice;
wxString mRecordDevice;
wxString mRecordSource;
long mRecordChannels;
wxChoice *mHost;
wxChoice *mPlay;
wxChoice *mRecord;
wxChoice *mChannels;
DECLARE_EVENT_TABLE();
};
class DevicePrefsFactory : public PrefsPanelFactory
{
public:
virtual PrefsPanel *Create(wxWindow *parent);
};
#endif