void UpdateSettings()
{
var dspEnabled = 0;
var stereoEnabled = 0;
var sectorEnabled = new int[6];
var sectorGain = new[] { 1f, 1f, 1f, 1f, 1f, 1f };
if (_clientId > 0)
{
MicroconeAPI.GetDspEnabled(_clientId, ref dspEnabled);
MicroconeAPI.GetDoStereo(_clientId, ref stereoEnabled);
MicroconeAPI.GetEnabled(_clientId, sectorEnabled);
MicroconeAPI.GetGain(_clientId, sectorGain);
}
this.Dispatcher.Invoke(new Action(() =>
{
var plugged = !_unplugged && _clientId > 0;
sliderMaster.IsEnabled = Reset.IsEnabled = DSPEnabled.IsEnabled = StereoEnabled.IsEnabled = plugged;
Enabled1.IsEnabled = Enabled2.IsEnabled = Enabled3.IsEnabled =
Enabled4.IsEnabled = Enabled5.IsEnabled = Enabled6.IsEnabled = plugged;
string appTitle = (string)Resources["AppTitle"];
Title = plugged ? appTitle : appTitle + " [Unplugged]";
DSPEnabled.IsChecked = (dspEnabled == 1);
StereoEnabled.IsChecked = (stereoEnabled == 1);
UpdateSectorEnabled(sectorEnabled);
recordButton.IsEnabled = plugged;
stopButton.IsEnabled = recording;
UpdateSliders(masterGain, sectorGain);
}));
}