wip: endpoint meter
This commit is contained in:
parent
20a82b42d4
commit
6bda4702df
7 changed files with 41 additions and 11 deletions
|
|
@ -5,6 +5,10 @@ CustomWidgetEvent<T>::CustomWidgetEvent(QEvent::Type type, T payload) : QEvent(t
|
|||
this->payload = payload;
|
||||
}
|
||||
|
||||
void MeterSlider::setPeakValue(float peakValue) {
|
||||
this->peakValue = peakValue;
|
||||
}
|
||||
|
||||
void MeterSlider::paintEvent(QPaintEvent *event) {
|
||||
//Q_D(QSlider);
|
||||
/*
|
||||
|
|
@ -23,11 +27,15 @@ void MeterSlider::paintEvent(QPaintEvent *event) {
|
|||
QStyle *style = QApplication::style();
|
||||
int lol = style->pixelMetric(QStyle::PM_SliderSpaceAvailable);
|
||||
QPainter painter(this);
|
||||
painter.setPen(Qt::blue);
|
||||
//painter.setPen(Qt::blue);
|
||||
painter.setOpacity(1.0);
|
||||
painter.setClipping(false);
|
||||
painter.setCompositionMode(QPainter::CompositionMode::CompositionMode_Source);
|
||||
painter.fillRect(0, (this->height() / 2) - 3, this->width(), 4, Qt::black);
|
||||
float peakLength = (this->width() * (this->peakValue));
|
||||
//const qreal dpr = painter->device()->devicePixelRatio();
|
||||
QStyleOptionSlider slider = QStyleOptionSlider();
|
||||
QRect test = QApplication::style()->subControlRect(QStyle::CC_Slider, (QStyleOptionComplex*)&slider, QStyle::SC_SliderHandle);
|
||||
painter.fillRect(0, (this->height() / 2) - 3, (this->width() * (this->peakValue)), 4, Qt::green);
|
||||
}
|
||||
|
||||
void ExtendedCheckBox::customEvent(QEvent* ev) {
|
||||
|
|
@ -482,6 +490,8 @@ EndpointWidget::EndpointWidget(EndpointHandler* eph, QWidget *parent, uint64_t i
|
|||
mainSlider->blockSignals(true);
|
||||
muteButton->blockSignals(true);
|
||||
mainSlider->setValue((int)((eph->getCallbackInfo()->mainVolume + roundingFactor) * 100));
|
||||
mainSlider->setPeakValue(eph->getPeakVolume());
|
||||
mainSlider->update();
|
||||
mainVolumeLabel->setText(QString::number(mainSlider->value()));
|
||||
muteButton->setCheckState((eph->getCallbackInfo()->muted == false ? Qt::Unchecked : Qt::Checked));
|
||||
muteButton->setText(eph->getCallbackInfo()->muted ? STRING_UNMUTE : STRING_MUTE);
|
||||
|
|
@ -496,7 +506,7 @@ EndpointWidget::EndpointWidget(EndpointHandler* eph, QWidget *parent, uint64_t i
|
|||
mainSlider->blockSignals(false);
|
||||
muteButton->blockSignals(false);
|
||||
});
|
||||
timer->start(10);
|
||||
timer->start(2);
|
||||
|
||||
/* First Widget batch */
|
||||
for (size_t i = 0; i < eph->getSessionCount(); i++) {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue