diff --git a/gui/include/Visualization/ColorScaleEditor.h b/gui/include/Visualization/ColorScaleEditor.h index 48814b6..932955a 100644 --- a/gui/include/Visualization/ColorScaleEditor.h +++ b/gui/include/Visualization/ColorScaleEditor.h @@ -8,6 +8,8 @@ namespace Ui { class ColorScaleEditor; } // Ui +class QCPColorScale; + /** * @brief The ColorScaleEditor class represents the widget to set properties of color scale's graphs */ @@ -21,6 +23,7 @@ public: private: Ui::ColorScaleEditor *ui; QButtonGroup *m_ThresholdGroup; + QCPColorScale *m_PreviewScale; ///< Scale shown as preview private slots: /// Slot called when max threshold value changes diff --git a/gui/src/Visualization/ColorScaleEditor.cpp b/gui/src/Visualization/ColorScaleEditor.cpp index 34630d2..16f93fe 100644 --- a/gui/src/Visualization/ColorScaleEditor.cpp +++ b/gui/src/Visualization/ColorScaleEditor.cpp @@ -1,4 +1,5 @@ #include "Visualization/ColorScaleEditor.h" +#include "Visualization/qcustomplot.h" #include "ui_ColorScaleEditor.h" @@ -42,6 +43,20 @@ ColorScaleEditor::ColorScaleEditor(QWidget *parent) setSpinBoxProperties(*ui->minSpinBox); setSpinBoxProperties(*ui->maxSpinBox); + // Creates color scale preview + m_PreviewScale = new QCPColorScale{ui->plot}; + m_PreviewScale->setType(QCPAxis::atTop); + m_PreviewScale->setMinimumMargins(QMargins{5, 5, 5, 5}); + m_PreviewScale->axis()->setScaleType(QCPAxis::stLogarithmic); + m_PreviewScale->axis()->setNumberPrecision(0); + m_PreviewScale->axis()->setNumberFormat("eb"); + m_PreviewScale->axis()->setTicker(QSharedPointer::create()); + m_PreviewScale->setGradient(QCPColorGradient{QCPColorGradient::gpJet}); + + ui->plot->plotLayout()->clear(); + ui->plot->plotLayout()->insertRow(0); + ui->plot->plotLayout()->addElement(0, 0, m_PreviewScale); + // Inits connections connect(ui->thresholdAutoButton, SIGNAL(toggled(bool)), this, SLOT(onThresholdChanged(bool))); connect(ui->thresholdManualButton, SIGNAL(toggled(bool)), this, SLOT(onThresholdChanged(bool)));