Issue #100 Add hotkeys to change COM volume

This commit is contained in:
Lars Toenning
2021-09-05 12:00:59 +02:00
parent 4b37c5ca30
commit 6564c93ae6
4 changed files with 77 additions and 0 deletions

View File

@@ -639,6 +639,38 @@ namespace BlackCore
this->setMasterOutputVolume(v);
}
void CContextAudioBase::audioIncreaseVolumeCom1(bool enabled)
{
if (!enabled) { return; }
if (isComUnitIntegrated()) { return; }
const int v = qRound(this->getComOutputVolume(CComSystem::Com1) * 1.05);
this->setComOutputVolume(CComSystem::Com1, v);
}
void CContextAudioBase::audioDecreaseVolumeCom1(bool enabled)
{
if (!enabled) { return; }
if (isComUnitIntegrated()) { return; }
const int v = qRound(this->getComOutputVolume(CComSystem::Com1) / 1.05);
this->setComOutputVolume(CComSystem::Com1, v);
}
void CContextAudioBase::audioIncreaseVolumeCom2(bool enabled)
{
if (!enabled) { return; }
if (isComUnitIntegrated()) { return; }
const int v = qRound(this->getComOutputVolume(CComSystem::Com2) * 1.05);
this->setComOutputVolume(CComSystem::Com2, v);
}
void CContextAudioBase::audioDecreaseVolumeCom2(bool enabled)
{
if (!enabled) { return; }
if (isComUnitIntegrated()) { return; }
const int v = qRound(this->getComOutputVolume(CComSystem::Com2) / 1.05);
this->setComOutputVolume(CComSystem::Com2, v);
}
void CContextAudioBase::xCtxNetworkConnectionStatusChanged(const CConnectionStatus &from, const CConnectionStatus &to)
{
if (!m_voiceClient) { return; }

View File

@@ -339,6 +339,10 @@ namespace BlackCore
//! @{
void audioIncreaseVolume(bool enabled);
void audioDecreaseVolume(bool enabled);
void audioIncreaseVolumeCom1(bool enabled);
void audioDecreaseVolumeCom1(bool enabled);
void audioIncreaseVolumeCom2(bool enabled);
void audioDecreaseVolumeCom2(bool enabled);
//! @}
//! Network connection status
@@ -355,6 +359,10 @@ namespace BlackCore
CActionBind m_actionPttCom2 { BlackMisc::Input::pttCom2HotkeyAction(), BlackMisc::Input::pttHotkeyIcon(), this, &CContextAudioBase::setVoiceTransmissionCom2 };
CActionBind m_actionAudioVolumeIncrease { BlackMisc::Input::audioVolumeIncreaseHotkeyAction(), BlackMisc::Input::audioVolumeIncreaseHotkeyIcon(), this, &CContextAudioBase::audioIncreaseVolume };
CActionBind m_actionAudioVolumeDecrease { BlackMisc::Input::audioVolumeDecreaseHotkeyAction(), BlackMisc::Input::audioVolumeDecreaseHotkeyIcon(), this, &CContextAudioBase::audioDecreaseVolume };
CActionBind m_actionAudioVolumeIncreaseCom1 { BlackMisc::Input::audioVolumeIncreaseCom1HotkeyAction(), BlackMisc::Input::audioVolumeIncreaseHotkeyIcon(), this, &CContextAudioBase::audioIncreaseVolumeCom1 };
CActionBind m_actionAudioVolumeDecreaseCom1 { BlackMisc::Input::audioVolumeDecreaseCom1HotkeyAction(), BlackMisc::Input::audioVolumeDecreaseHotkeyIcon(), this, &CContextAudioBase::audioDecreaseVolumeCom1 };
CActionBind m_actionAudioVolumeIncreaseCom2 { BlackMisc::Input::audioVolumeIncreaseCom2HotkeyAction(), BlackMisc::Input::audioVolumeIncreaseHotkeyIcon(), this, &CContextAudioBase::audioIncreaseVolumeCom2 };
CActionBind m_actionAudioVolumeDecreaseCom2 { BlackMisc::Input::audioVolumeDecreaseCom2HotkeyAction(), BlackMisc::Input::audioVolumeDecreaseHotkeyIcon(), this, &CContextAudioBase::audioDecreaseVolumeCom2 };
int m_outMasterVolumeBeforeMute = 50;
static constexpr int MinUnmuteVolume = 20; //!< minimum volume when unmuted

View File

@@ -57,6 +57,31 @@ namespace BlackMisc
return s;
}
const QString &audioVolumeDecreaseCom1HotkeyAction()
{
static const QString s("/Audio/Volume (COM1) decrease");
return s;
}
const QString &audioVolumeIncreaseCom1HotkeyAction()
{
static const QString s("/Audio/Volume (COM1) increase");
return s;
}
const QString &audioVolumeDecreaseCom2HotkeyAction()
{
static const QString s("/Audio/Volume (COM2) decrease");
return s;
}
const QString &audioVolumeIncreaseCom2HotkeyAction()
{
static const QString s("/Audio/Volume (COM2) increase");
return s;
}
CIcons::IconIndex toggleXPDRStateHotkeyIcon()
{
return CIcons::StandardIconRadio16;

View File

@@ -38,6 +38,18 @@ namespace BlackMisc
//! Audio volume - key
BLACKMISC_EXPORT const QString &audioVolumeDecreaseHotkeyAction();
//! Audio volume + key
BLACKMISC_EXPORT const QString &audioVolumeIncreaseCom1HotkeyAction();
//! Audio volume - key
BLACKMISC_EXPORT const QString &audioVolumeDecreaseCom1HotkeyAction();
//! Audio volume + key
BLACKMISC_EXPORT const QString &audioVolumeIncreaseCom2HotkeyAction();
//! Audio volume - key
BLACKMISC_EXPORT const QString &audioVolumeDecreaseCom2HotkeyAction();
//! Audio icon volume +
BLACKMISC_EXPORT BlackMisc::CIcons::IconIndex audioVolumeIncreaseHotkeyIcon();