mirror of
https://github.com/overte-org/overte.git
synced 2025-04-21 09:24:00 +02:00
Build fix
This commit is contained in:
parent
6c32783a09
commit
6297448e90
3 changed files with 36 additions and 21 deletions
|
@ -70,6 +70,7 @@ Rectangle {
|
|||
}
|
||||
|
||||
property bool showPeaks: true;
|
||||
|
||||
function enablePeakValues() {
|
||||
Audio.devices.input.peakValuesEnabled = true;
|
||||
Audio.devices.input.peakValuesEnabledChanged.connect(function(enabled) {
|
||||
|
@ -78,6 +79,7 @@ Rectangle {
|
|||
}
|
||||
});
|
||||
}
|
||||
|
||||
function disablePeakValues() {
|
||||
root.showPeaks = false;
|
||||
Audio.devices.input.peakValuesEnabled = false;
|
||||
|
@ -202,12 +204,13 @@ Rectangle {
|
|||
}
|
||||
}
|
||||
}
|
||||
InputLevel {
|
||||
InputPeak {
|
||||
id: inputLevel
|
||||
anchors.right: parent.right
|
||||
anchors.verticalCenter: parent.verticalCenter
|
||||
visible: (bar.currentIndex === 1 && selectedHMD && isVR) ||
|
||||
(bar.currentIndex === 0 && selectedDesktop && !isVR);
|
||||
(bar.currentIndex === 0 && selectedDesktop && !isVR) &&
|
||||
Audio.devices.input.peakValuesAvailable;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -105,14 +105,14 @@ AudioDeviceList::~AudioDeviceList() {
|
|||
auto& settingHMD = getSetting(true, _mode);
|
||||
auto& settingDesktop = getSetting(false, _mode);
|
||||
// store the selected device
|
||||
foreach(AudioDevice adevice, _devices) {
|
||||
if (adevice.selectedDesktop) {
|
||||
qDebug() << "Saving Desktop for" << _mode << "name" << adevice.info.deviceName();
|
||||
settingDesktop.set(adevice.info.deviceName());
|
||||
foreach(std::shared_ptr<AudioDevice> adevice, _devices) {
|
||||
if (adevice->selectedDesktop) {
|
||||
qDebug() << "Saving Desktop for" << _mode << "name" << adevice->info.deviceName();
|
||||
settingDesktop.set(adevice->info.deviceName());
|
||||
}
|
||||
if (adevice.selectedHMD) {
|
||||
qDebug() << "Saving HMD for" << _mode << "name" << adevice.info.deviceName();
|
||||
settingHMD.set(adevice.info.deviceName());
|
||||
if (adevice->selectedHMD) {
|
||||
qDebug() << "Saving HMD for" << _mode << "name" << adevice->info.deviceName();
|
||||
settingHMD.set(adevice->info.deviceName());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -123,18 +123,30 @@ QVariant AudioDeviceList::data(const QModelIndex& index, int role) const {
|
|||
}
|
||||
|
||||
if (role == DeviceNameRole) {
|
||||
return _devices.at(index.row()).display;
|
||||
return _devices.at(index.row())->display;
|
||||
} else if (role == SelectedDesktopRole) {
|
||||
return _devices.at(index.row()).selectedDesktop;
|
||||
return _devices.at(index.row())->selectedDesktop;
|
||||
} else if (role == SelectedHMDRole) {
|
||||
return _devices.at(index.row()).selectedHMD;
|
||||
} else if (role == DeviceInfoRole) {
|
||||
return QVariant::fromValue<QAudioDeviceInfo>(_devices.at(index.row()).info);
|
||||
return _devices.at(index.row())->selectedHMD;
|
||||
} else if (role == InfoRole) {
|
||||
return QVariant::fromValue<QAudioDeviceInfo>(_devices.at(index.row())->info);
|
||||
} else {
|
||||
return QVariant();
|
||||
}
|
||||
}
|
||||
|
||||
QVariant AudioInputDeviceList::data(const QModelIndex& index, int role) const {
|
||||
if (!index.isValid() || index.row() >= rowCount()) {
|
||||
return QVariant();
|
||||
}
|
||||
|
||||
if (role == PeakRole) {
|
||||
return std::static_pointer_cast<AudioInputDevice>(_devices.at(index.row()))->peak;
|
||||
} else {
|
||||
return AudioDeviceList::data(index, role);
|
||||
}
|
||||
}
|
||||
|
||||
void AudioDeviceList::resetDevice(bool contextIsHMD) {
|
||||
auto client = DependencyManager::get<AudioClient>().data();
|
||||
QString deviceName = getTargetDevice(contextIsHMD, _mode);
|
||||
|
@ -175,11 +187,11 @@ void AudioDeviceList::onDeviceChanged(const QAudioDeviceInfo& device, bool isHMD
|
|||
selectedDevice = device;
|
||||
|
||||
for (auto i = 0; i < _devices.size(); ++i) {
|
||||
AudioDevice& device = _devices[i];
|
||||
bool &isSelected = isHMD ? device.selectedHMD : device.selectedDesktop;
|
||||
if (isSelected && device.info != selectedDevice) {
|
||||
std::shared_ptr<AudioDevice> device = _devices[i];
|
||||
bool &isSelected = isHMD ? device->selectedHMD : device->selectedDesktop;
|
||||
if (isSelected && device->info != selectedDevice) {
|
||||
isSelected = false;
|
||||
} else if (device.info == selectedDevice) {
|
||||
} else if (device->info == selectedDevice) {
|
||||
isSelected = true;
|
||||
}
|
||||
}
|
||||
|
@ -211,7 +223,7 @@ void AudioDeviceList::onDevicesChanged(const QList<QAudioDeviceInfo>& devices, b
|
|||
isSelected = (device.info.deviceName() == savedDeviceName);
|
||||
}
|
||||
qDebug() << "adding audio device:" << device.display << device.selectedDesktop << device.selectedHMD << _mode;
|
||||
_devices.push_back(device);
|
||||
_devices.push_back(newDevice(device));
|
||||
}
|
||||
|
||||
endResetModel();
|
||||
|
|
|
@ -33,8 +33,8 @@ class AudioDeviceList : public QAbstractListModel {
|
|||
Q_OBJECT
|
||||
|
||||
public:
|
||||
AudioDeviceList(QAudio::Mode mode = QAudio::AudioOutput) : _mode(mode) {}
|
||||
~AudioDeviceList() = default;
|
||||
AudioDeviceList(QAudio::Mode mode = QAudio::AudioOutput);
|
||||
virtual ~AudioDeviceList();
|
||||
|
||||
virtual std::shared_ptr<AudioDevice> newDevice(const AudioDevice& device)
|
||||
{ return std::make_shared<AudioDevice>(device); }
|
||||
|
|
Loading…
Reference in a new issue