summaryrefslogtreecommitdiffstats
path: root/desktop-widgets
diff options
context:
space:
mode:
authorGravatar Berthold Stoeger <bstoeger@mail.tuwien.ac.at>2019-05-31 19:28:45 +0200
committerGravatar Lubomir I. Ivanov <neolit123@gmail.com>2019-06-10 17:59:35 +0300
commitb9154123ed5235b008a37b612a54a1fa637b39b5 (patch)
tree78c3176ede292bab79ef98308a06e76ef015148c /desktop-widgets
parent58985cd8aee2015d4b182108a062357d6e256158 (diff)
downloadsubsurface-b9154123ed5235b008a37b612a54a1fa637b39b5.tar.gz
Cleanup: Un-PIMPL-ize MinMaxAvgWidget
The PIMPL idiom is used by some frameworks (notably Qt) to ensure binary compatibility. Objects consist only the general object header (ref-count, connections, children, etc..) plus a single pointer to private data. MinMaxAvgWidget was implemented using this idiom. This seems to make no sense, as we don't produce a general library with the need of a stable ABI. Let's remove this unnecessary indirection. Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
Diffstat (limited to 'desktop-widgets')
-rw-r--r--desktop-widgets/simplewidgets.cpp100
-rw-r--r--desktop-widgets/simplewidgets.h9
2 files changed, 47 insertions, 62 deletions
diff --git a/desktop-widgets/simplewidgets.cpp b/desktop-widgets/simplewidgets.cpp
index f5bd5640e..660a8a433 100644
--- a/desktop-widgets/simplewidgets.cpp
+++ b/desktop-widgets/simplewidgets.cpp
@@ -23,118 +23,104 @@
#include "desktop-widgets/command.h"
#include "core/metadata.h"
-class MinMaxAvgWidgetPrivate {
-public:
- QLabel *avgIco, *avgValue;
- QLabel *minIco, *minValue;
- QLabel *maxIco, *maxValue;
-
- MinMaxAvgWidgetPrivate(MinMaxAvgWidget *owner)
- {
- avgIco = new QLabel(owner);
- avgIco->setPixmap(QIcon(":value-average-icon").pixmap(16, 16));
- avgIco->setToolTip(gettextFromC::tr("Average"));
- minIco = new QLabel(owner);
- minIco->setPixmap(QIcon(":value-minimum-icon").pixmap(16, 16));
- minIco->setToolTip(gettextFromC::tr("Minimum"));
- maxIco = new QLabel(owner);
- maxIco->setPixmap(QIcon(":value-maximum-icon").pixmap(16, 16));
- maxIco->setToolTip(gettextFromC::tr("Maximum"));
- avgValue = new QLabel(owner);
- minValue = new QLabel(owner);
- maxValue = new QLabel(owner);
-
- QGridLayout *formLayout = new QGridLayout();
- formLayout->addWidget(maxIco, 0, 0);
- formLayout->addWidget(maxValue, 0, 1);
- formLayout->addWidget(avgIco, 1, 0);
- formLayout->addWidget(avgValue, 1, 1);
- formLayout->addWidget(minIco, 2, 0);
- formLayout->addWidget(minValue, 2, 1);
- owner->setLayout(formLayout);
- }
-};
-
double MinMaxAvgWidget::average() const
{
- return d->avgValue->text().toDouble();
+ return avgValue->text().toDouble();
}
double MinMaxAvgWidget::maximum() const
{
- return d->maxValue->text().toDouble();
+ return maxValue->text().toDouble();
}
+
double MinMaxAvgWidget::minimum() const
{
- return d->minValue->text().toDouble();
+ return minValue->text().toDouble();
}
-MinMaxAvgWidget::MinMaxAvgWidget(QWidget*) : d(new MinMaxAvgWidgetPrivate(this))
+MinMaxAvgWidget::MinMaxAvgWidget(QWidget *parent) : QWidget(parent)
{
-}
+ avgIco = new QLabel(this);
+ avgIco->setPixmap(QIcon(":value-average-icon").pixmap(16, 16));
+ avgIco->setToolTip(gettextFromC::tr("Average"));
+ minIco = new QLabel(this);
+ minIco->setPixmap(QIcon(":value-minimum-icon").pixmap(16, 16));
+ minIco->setToolTip(gettextFromC::tr("Minimum"));
+ maxIco = new QLabel(this);
+ maxIco->setPixmap(QIcon(":value-maximum-icon").pixmap(16, 16));
+ maxIco->setToolTip(gettextFromC::tr("Maximum"));
+ avgValue = new QLabel(this);
+ minValue = new QLabel(this);
+ maxValue = new QLabel(this);
-MinMaxAvgWidget::~MinMaxAvgWidget()
-{
+ QGridLayout *formLayout = new QGridLayout;
+ formLayout->addWidget(maxIco, 0, 0);
+ formLayout->addWidget(maxValue, 0, 1);
+ formLayout->addWidget(avgIco, 1, 0);
+ formLayout->addWidget(avgValue, 1, 1);
+ formLayout->addWidget(minIco, 2, 0);
+ formLayout->addWidget(minValue, 2, 1);
+ setLayout(formLayout);
}
void MinMaxAvgWidget::clear()
{
- d->avgValue->setText(QString());
- d->maxValue->setText(QString());
- d->minValue->setText(QString());
+ avgValue->setText(QString());
+ maxValue->setText(QString());
+ minValue->setText(QString());
}
void MinMaxAvgWidget::setAverage(double average)
{
- d->avgValue->setText(QString::number(average));
+ avgValue->setText(QString::number(average));
}
void MinMaxAvgWidget::setMaximum(double maximum)
{
- d->maxValue->setText(QString::number(maximum));
+ maxValue->setText(QString::number(maximum));
}
void MinMaxAvgWidget::setMinimum(double minimum)
{
- d->minValue->setText(QString::number(minimum));
+ minValue->setText(QString::number(minimum));
}
void MinMaxAvgWidget::setAverage(const QString &average)
{
- d->avgValue->setText(average);
+ avgValue->setText(average);
}
void MinMaxAvgWidget::setMaximum(const QString &maximum)
{
- d->maxValue->setText(maximum);
+ maxValue->setText(maximum);
}
void MinMaxAvgWidget::setMinimum(const QString &minimum)
{
- d->minValue->setText(minimum);
+ minValue->setText(minimum);
}
void MinMaxAvgWidget::overrideMinToolTipText(const QString &newTip)
{
- d->minIco->setToolTip(newTip);
- d->minValue->setToolTip(newTip);
+ minIco->setToolTip(newTip);
+ minValue->setToolTip(newTip);
}
void MinMaxAvgWidget::overrideAvgToolTipText(const QString &newTip)
{
- d->avgIco->setToolTip(newTip);
- d->avgValue->setToolTip(newTip);
+ avgIco->setToolTip(newTip);
+ avgValue->setToolTip(newTip);
}
void MinMaxAvgWidget::overrideMaxToolTipText(const QString &newTip)
{
- d->maxIco->setToolTip(newTip);
- d->maxValue->setToolTip(newTip);
+ maxIco->setToolTip(newTip);
+ maxValue->setToolTip(newTip);
}
-void MinMaxAvgWidget::setAvgVisibility(const bool visible)
+void MinMaxAvgWidget::setAvgVisibility(bool visible)
{
- d->avgIco->setVisible(visible);
- d->avgValue->setVisible(visible);
+ avgIco->setVisible(visible);
+ avgValue->setVisible(visible);
}
RenumberDialog *RenumberDialog::instance()
diff --git a/desktop-widgets/simplewidgets.h b/desktop-widgets/simplewidgets.h
index a814519c4..024edbca1 100644
--- a/desktop-widgets/simplewidgets.h
+++ b/desktop-widgets/simplewidgets.h
@@ -29,9 +29,11 @@ class MinMaxAvgWidget : public QWidget {
Q_PROPERTY(double minimum READ minimum WRITE setMinimum)
Q_PROPERTY(double maximum READ maximum WRITE setMaximum)
Q_PROPERTY(double average READ average WRITE setAverage)
+ QLabel *avgIco, *avgValue;
+ QLabel *minIco, *minValue;
+ QLabel *maxIco, *maxValue;
public:
MinMaxAvgWidget(QWidget *parent);
- ~MinMaxAvgWidget();
double minimum() const;
double maximum() const;
double average() const;
@@ -44,11 +46,8 @@ public:
void overrideMinToolTipText(const QString &newTip);
void overrideAvgToolTipText(const QString &newTip);
void overrideMaxToolTipText(const QString &newTip);
- void setAvgVisibility(const bool visible);
+ void setAvgVisibility(bool visible);
void clear();
-
-private:
- QScopedPointer<MinMaxAvgWidgetPrivate> d;
};
class RenumberDialog : public QDialog {