Modif du contrôle du volume de AvReceiverGui

Fuck-up de Windows
This commit is contained in:
2023-03-06 14:57:38 -05:00
parent 52841786a9
commit 635d754d27
5 changed files with 344 additions and 13 deletions
+27 -7
View File
@@ -8,6 +8,10 @@ CAvReceiverGui::CAvReceiverGui(QWidget *parent) :
ui(new Ui::CAvReceiverGui)
{
ui->setupUi(this);
mVolumeBarMovementTimer = new QTimer();
mVolumeBarMovementTimer->setInterval(500);
mVolumeBarMovementTimer->setSingleShot(true);
connect(mVolumeBarMovementTimer,SIGNAL(timeout()),this,SLOT(VolumeBarMovementTimerExpired()));
connect(ui->mSpkBCheckBox,SIGNAL(clicked(bool)),this,SLOT(SpeakerBRadioClicked(bool)));
connect(ui->mSpkACheckBox,SIGNAL(clicked(bool)),this,SLOT(SpeakerARadioClicked(bool)));
@@ -15,13 +19,14 @@ CAvReceiverGui::CAvReceiverGui(QWidget *parent) :
connect(ui->MainZoneScene2Btn,SIGNAL(clicked(bool)),this,SLOT(MainZoneScene2BtnClicked(bool)));
connect(ui->MainZoneScene3Btn,SIGNAL(clicked(bool)),this,SLOT(MainZoneScene3BtnClicked(bool)));
connect(ui->MainZoneScene4Btn,SIGNAL(clicked(bool)),this,SLOT(MainZoneScene4BtnClicked(bool)));
connect(ui->mMainZoneVolumeSldBar,SIGNAL(sliderMoved(int)),this,SLOT(MainZoneVolumeSetChanged()));
connect(ui->mZone2VolumeSldBar,SIGNAL(sliderMoved(int)),this,SLOT(Zone2VolumeSetChanged()));
connect(ui->mMainZoneVolumeSldBar,SIGNAL(valueChanged(int)),this,SLOT(MainZoneVolumeSetChanged(int)));
connect(ui->mZone2VolumeSldBar,SIGNAL(valueChanged(int)),this,SLOT(Zone2VolumeSetChanged(int)));
}
CAvReceiverGui::~CAvReceiverGui()
{
delete ui;
delete mVolumeBarMovementTimer;
}
void CAvReceiverGui::SpeakerBRadioClicked(bool checked)
@@ -85,8 +90,11 @@ int CAvReceiverGui::UpdateReceiverStatus(CAvReceiverMainStatus Status, CAvReceiv
ui->mRcvrStatusLabel->setText(StatusText);
if(ui->mMainZoneVolumeSldBar->isSliderDown() == false)
if(/*ui->mMainZoneVolumeSldBar->isSliderDown() == false && */mVolumeBarMovementTimer->isActive() == false)
{
ui->mMainZoneVolumeSldBar->setValue(ConvertVolumeToBarPosition(Status.mMainVolume));
ui->mMainZoneSliderValueLbl->setText("");
}
@@ -139,8 +147,11 @@ int CAvReceiverGui::UpdateReceiverStatus(CAvReceiverMainStatus Status, CAvReceiv
ui->mZone2StatusLabel->setText(StatusText);
if(ui->mZone2VolumeSldBar->isSliderDown() == false)
if(/*ui->mZone2VolumeSldBar->isSliderDown() == false && */mVolumeBarMovementTimer->isActive() == false)
{
ui->mZone2VolumeSldBar->setValue(ConvertVolumeToBarPosition(Zone2Status.mMainVolume));
ui->mZone2SliderValueLbl->setText("");
}
return RET_OK;
}
@@ -179,19 +190,28 @@ float CAvReceiverGui::ConvertBarPositionToVolume(int position)
return Volume;
}
void CAvReceiverGui::MainZoneVolumeSetChanged()
void CAvReceiverGui::MainZoneVolumeSetChanged(int value)
{
int BarPosition = ui->mMainZoneVolumeSldBar->value();
float Volume = ConvertBarPositionToVolume(BarPosition);
ui->mMainZoneSliderValueLbl->setText(QString("%1").arg(Volume));
mProgramHandle->MainZoneVolumeChanged(Volume);
mVolumeBarMovementTimer->start();
}
void CAvReceiverGui::Zone2VolumeSetChanged()
void CAvReceiverGui::Zone2VolumeSetChanged(int value)
{
int BarPosition = ui->mZone2VolumeSldBar->value();
float Volume = ConvertBarPositionToVolume(BarPosition);
ui->mZone2SliderValueLbl->setText(QString("%1").arg(Volume));
mProgramHandle->Zone2VolumeChanged(Volume);
mVolumeBarMovementTimer->start();
}
void CAvReceiverGui::VolumeBarMovementTimerExpired()
{
}
+5 -2
View File
@@ -4,6 +4,7 @@
#include <QWidget>
class CAvReceiver;
#include "AvReceiverData.h"
#include <QTimer>
namespace Ui {
class CAvReceiverGui;
@@ -22,6 +23,7 @@ public:
int UpdateReceiverStatus(CAvReceiverMainStatus Status, CAvReceiverMainStatus Zone2Status);
int ConvertVolumeToBarPosition(float Volume);
float ConvertBarPositionToVolume(int position);
QTimer *mVolumeBarMovementTimer;
private:
Ui::CAvReceiverGui *ui;
@@ -33,8 +35,9 @@ public slots:
void MainZoneScene2BtnClicked(bool);
void MainZoneScene3BtnClicked(bool);
void MainZoneScene4BtnClicked(bool);
void MainZoneVolumeSetChanged();
void Zone2VolumeSetChanged();
void MainZoneVolumeSetChanged(int);
void Zone2VolumeSetChanged(int);
void VolumeBarMovementTimerExpired();
};
#endif // AVRECEIVERGUI_H
+35 -3
View File
@@ -169,9 +169,9 @@
<property name="geometry">
<rect>
<x>500</x>
<y>110</y>
<width>16</width>
<height>160</height>
<y>119</y>
<width>20</width>
<height>151</height>
</rect>
</property>
<property name="maximum">
@@ -181,6 +181,38 @@
<enum>Qt::Vertical</enum>
</property>
</widget>
<widget class="QLabel" name="mMainZoneSliderValueLbl">
<property name="geometry">
<rect>
<x>180</x>
<y>100</y>
<width>47</width>
<height>14</height>
</rect>
</property>
<property name="text">
<string>TextLabel</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
<widget class="QLabel" name="mZone2SliderValueLbl">
<property name="geometry">
<rect>
<x>490</x>
<y>100</y>
<width>51</width>
<height>16</height>
</rect>
</property>
<property name="text">
<string>TextLabel</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</widget>
<resources/>
<connections/>