Transert de la gestion du Z2 lock au MasterCtrl

This commit is contained in:
jfmartel 2024-02-04 14:25:04 -05:00
parent ac8490b5ee
commit 2dfd185494
6 changed files with 34 additions and 9 deletions

View File

@ -109,6 +109,14 @@ int CAvReceiver::Zone2VolumeChanged(float Value)
return mNetworkInterface->SendMasterCtrlCommand(AV_RECEIVER_INTERFACE_SET_ZONE2_VOLUME_REQUEST,VolumeData);
}
int CAvReceiver::SyncZonesVolumesChanged(bool Sync)
{
QByteArray SyncData;
QDataStream Strm(&SyncData,QIODevice::WriteOnly);
Strm << Sync;
return mNetworkInterface->SendMasterCtrlCommand(AV_RECEIVER_INTERFACE_SET_SYNC_Z2_WITH_Z1_REQUEST,SyncData);
}
int CAvReceiver::Zone2InputSrcChanged(QString InputSrc)
{
QByteArray SourceData;

View File

@ -25,6 +25,7 @@ public:
int MainZoneVolumeChanged(float Value);
int Zone2VolumeChanged(float Value);
int Zone2InputSrcChanged(QString InputSrc);
int SyncZonesVolumesChanged(bool Sync);

View File

@ -23,6 +23,7 @@ QByteArray CAvReceiverMainStatus::ToByteArray()
Strm << mDataValid;
Strm << mReceiverOnline;
Strm << mSyncZonesVolumes;
return Output;
@ -42,6 +43,7 @@ int CAvReceiverMainStatus::FromByteArray(QByteArray Data)
Strm >> mDataValid;
Strm >> mReceiverOnline;
Strm >> mSyncZonesVolumes;
return RET_OK;
@ -55,7 +57,8 @@ QDataStream &operator<<(QDataStream &out, const CAvReceiverMainStatus &source)
<< source.mInput
<< source.mProgram
<< source.mDataValid
<< source.mReceiverOnline;
<< source.mReceiverOnline
<< source.mSyncZonesVolumes;
return out;
}
@ -69,6 +72,7 @@ QDataStream &operator>>(QDataStream &in, CAvReceiverMainStatus &dest)
>> dest.mInput
>> dest.mProgram
>> dest.mDataValid
>> dest.mReceiverOnline;
>> dest.mReceiverOnline
>> dest.mSyncZonesVolumes;
return in;
}

View File

@ -29,6 +29,7 @@ public:
bool mIsMute;
QString mInput;
QString mProgram;
bool mSyncZonesVolumes;
bool mDataValid;
bool mReceiverOnline;

View File

@ -172,6 +172,11 @@ int CAvReceiverGui::UpdateReceiverStatus(CAvReceiverMainStatus Status, CAvReceiv
mTrayVolumeCtrlGuiHandle->SetZone2Volume(SliderValue,Zone2Status.mMainVolume);
}
if(Status.mSyncZonesVolumes)
ui->mZone2SyncVolumeChkBx->setCheckState(Qt::Checked);
else
ui->mZone2SyncVolumeChkBx->setCheckState(Qt::Unchecked);
return RET_OK;
}
@ -219,11 +224,12 @@ void CAvReceiverGui::MainZoneVolumeSetChanged(int value)
mProgramHandle->MainZoneVolumeChanged(Volume);
if(mLockZone2VolumeWithZone1 == true)
// if(mLockZone2VolumeWithZone1 == true)
if(ui->mZone2SyncVolumeChkBx->checkState() == Qt::Checked)
{
ui->mZone2VolumeSldBar->setValue(BarPosition);
mVolumeBarMovementTimer->start();
//mProgramHandle->Zone2VolumeChanged(Volume);
// mVolumeBarMovementTimer->start();
// //mProgramHandle->Zone2VolumeChanged(Volume);
}
}
@ -251,17 +257,20 @@ void CAvReceiverGui::Zone2LockVolumeChanged(bool checked)
mLockZone2VolumeWithZone1 = checked;
if(checked)
{
//Set Zone 2 volume to main zone value
int BarPosition = ui->mMainZoneVolumeSldBar->value();
float Volume = ConvertBarPositionToVolume(BarPosition);
// //Set Zone 2 volume to main zone value
// int BarPosition = ui->mMainZoneVolumeSldBar->value();
// float Volume = ConvertBarPositionToVolume(BarPosition);
mProgramHandle->Zone2VolumeChanged(Volume);
// mProgramHandle->Zone2VolumeChanged(Volume);
ui->mZone2VolumeSldBar->setEnabled(false);
mProgramHandle->SyncZonesVolumesChanged(true);
}
else
{
ui->mZone2VolumeSldBar->setEnabled(true);
mProgramHandle->SyncZonesVolumesChanged(false);
}
}

View File

@ -254,6 +254,8 @@ enum AV_RECEIVER_INTERFACE_CMDS
AV_RECEIVER_INTERFACE_SET_ZONE2_VOLUME_RESPONSE,
AV_RECEIVER_INTERFACE_SET_ZONE2_INPUT_REQUEST,
AV_RECEIVER_INTERFACE_SET_ZONE2_INPUT_RESPONSE,
AV_RECEIVER_INTERFACE_SET_SYNC_Z2_WITH_Z1_REQUEST,
AV_RECEIVER_INTERFACE_SET_SYNC_Z2_WITH_Z1_RESPONSE,
MAX_AV_RECEIVER_INTERFACE_CMD