From 5fa398a124bede24767a889d0daf87cb4b6d41a8 Mon Sep 17 00:00:00 2001 From: ArsenArsen Date: Wed, 28 Jun 2017 20:46:15 +0200 Subject: [PATCH] Remove the blur dialog. Settings are in settings. --- KShare.pro | 3 - cropeditor/drawing/bluritem.cpp | 10 +- cropeditor/settings/blurdialog.cpp | 45 -------- cropeditor/settings/blurdialog.hpp | 27 ----- cropeditor/settings/blurdialog.ui | 101 ------------------ cropeditor/settings/brushpenselection.cpp | 21 ++++ cropeditor/settings/brushpenselection.hpp | 6 +- cropeditor/settings/brushpenselection.ui | 122 ++++++++++++++++++---- 8 files changed, 136 insertions(+), 199 deletions(-) delete mode 100644 cropeditor/settings/blurdialog.cpp delete mode 100644 cropeditor/settings/blurdialog.hpp delete mode 100644 cropeditor/settings/blurdialog.ui diff --git a/KShare.pro b/KShare.pro index 6f081a4..d79073d 100644 --- a/KShare.pro +++ b/KShare.pro @@ -44,7 +44,6 @@ SOURCES += main.cpp\ cropeditor/drawing/dotitem.cpp \ cropeditor/settings/brushpenselection.cpp \ cropeditor/drawing/bluritem.cpp \ - cropeditor/settings/blurdialog.cpp \ cropeditor/drawing/pathitem.cpp \ cropeditor/drawing/lineitem.cpp \ cropeditor/drawing/textitem.cpp \ @@ -85,7 +84,6 @@ HEADERS += mainwindow.hpp \ cropeditor/drawing/dotitem.hpp \ cropeditor/settings/brushpenselection.hpp \ cropeditor/drawing/bluritem.hpp \ - cropeditor/settings/blurdialog.hpp \ cropeditor/drawing/pathitem.hpp \ cropeditor/drawing/lineitem.hpp \ cropeditor/drawing/textitem.hpp \ @@ -130,7 +128,6 @@ mac { FORMS += mainwindow.ui \ cropeditor/settings/brushpenselection.ui \ - cropeditor/settings/blurdialog.ui \ recording/encoders/encodersettingsdialog.ui \ settingsdialog.ui \ aboutbox.ui \ diff --git a/cropeditor/drawing/bluritem.cpp b/cropeditor/drawing/bluritem.cpp index 9ed162d..f687dbe 100644 --- a/cropeditor/drawing/bluritem.cpp +++ b/cropeditor/drawing/bluritem.cpp @@ -1,10 +1,16 @@ #include "bluritem.hpp" -#include +#include bool BlurItem::init(CropScene *) { effect = new QGraphicsBlurEffect; - return BlurDialog(effect).exec(); + QFlags blurHints; + blurHints.setFlag(QGraphicsBlurEffect::AnimationHint, settings::settings().value("blur/animatedHint", false).toBool()); + blurHints.setFlag(QGraphicsBlurEffect::PerformanceHint, settings::settings().value("blur/performanceHint", true).toBool()); + blurHints.setFlag(QGraphicsBlurEffect::QualityHint, settings::settings().value("blur/qualityHint", false).toBool()); + effect->setBlurHints(blurHints); + effect->setBlurRadius(settings::settings().value("blurRadius", 5.).toDouble()); + return true; } void BlurItem::mouseDragEvent(QGraphicsSceneMouseEvent *e, CropScene *scene) { diff --git a/cropeditor/settings/blurdialog.cpp b/cropeditor/settings/blurdialog.cpp deleted file mode 100644 index 4bb52fe..0000000 --- a/cropeditor/settings/blurdialog.cpp +++ /dev/null @@ -1,45 +0,0 @@ -#include "blurdialog.hpp" -#include "ui_blurdialog.h" - -#include -#include -#include -#include - -BlurDialog::BlurDialog(QGraphicsBlurEffect *e, QWidget *parent) : QDialog(parent), ui(new Ui::BlurDialog) { - effect = e; - ui->setupUi(this); - ui->animated->setChecked(effect->blurHints().testFlag(QGraphicsBlurEffect::AnimationHint)); - ui->performance->setChecked(effect->blurHints().testFlag(QGraphicsBlurEffect::PerformanceHint)); - ui->quality->setChecked(effect->blurHints().testFlag(QGraphicsBlurEffect::QualityHint)); - ui->radSlider->setValue(effect->blurRadius() * 100); - ui->radSpinner->setValue(effect->blurRadius()); - this->setFocus(); - connect(ui->buttonBox, &QDialogButtonBox::accepted, [&] { - QFlags hints; - hints.setFlag(QGraphicsBlurEffect::AnimationHint, ui->animated->isChecked()); - hints.setFlag(QGraphicsBlurEffect::PerformanceHint, ui->performance->isChecked()); - hints.setFlag(QGraphicsBlurEffect::QualityHint, ui->quality->isChecked()); - effect->setBlurHints(hints); - effect->setBlurRadius(ui->radSpinner->value()); - accept(); - close(); - }); - connect(ui->buttonBox, &QDialogButtonBox::rejected, [&] { - reject(); - close(); - emit finished(result()); - }); -} - -BlurDialog::~BlurDialog() { - delete ui; -} - -void BlurDialog::on_radSpinner_valueChanged(double arg1) { - ui->radSlider->setValue(arg1 * 100); -} - -void BlurDialog::on_radSlider_sliderMoved(int position) { - ui->radSpinner->setValue(position / 100.); -} diff --git a/cropeditor/settings/blurdialog.hpp b/cropeditor/settings/blurdialog.hpp deleted file mode 100644 index f965c4b..0000000 --- a/cropeditor/settings/blurdialog.hpp +++ /dev/null @@ -1,27 +0,0 @@ -#ifndef BLURDIALOG_HPP -#define BLURDIALOG_HPP - -#include -#include - -namespace Ui { -class BlurDialog; -} - -class BlurDialog : public QDialog { - Q_OBJECT - -public: - explicit BlurDialog(QGraphicsBlurEffect *effect, QWidget *parent = 0); - ~BlurDialog(); - -private slots: - void on_radSpinner_valueChanged(double arg1); - void on_radSlider_sliderMoved(int position); - -private: - Ui::BlurDialog *ui; - QGraphicsBlurEffect *effect; -}; - -#endif // BLURDIALOG_HPP diff --git a/cropeditor/settings/blurdialog.ui b/cropeditor/settings/blurdialog.ui deleted file mode 100644 index 52a788f..0000000 --- a/cropeditor/settings/blurdialog.ui +++ /dev/null @@ -1,101 +0,0 @@ - - - BlurDialog - - - - 0 - 0 - 400 - 222 - - - - Qt::StrongFocus - - - Blur Settings - - - - - - 3000 - - - Qt::Horizontal - - - - - - - px - - - 30.000000000000000 - - - - - - - http://doc.qt.io/qt-5/qgraphicsblureffect.html#BlurHint-enum - - - <a href="http://doc.qt.io/qt-5/qgraphicsblureffect.html#BlurHint-enum">Blur Hints - - - true - - - Qt::TextBrowserInteraction - - - - - - - Blur Radius - - - - - - - Performance Hint - - - - - - - Animated Hint - - - - - - - Quality Hint - - - - - - - Qt::Horizontal - - - QDialogButtonBox::Cancel|QDialogButtonBox::Ok - - - true - - - - - - - - diff --git a/cropeditor/settings/brushpenselection.cpp b/cropeditor/settings/brushpenselection.cpp index a25856b..10e5fba 100644 --- a/cropeditor/settings/brushpenselection.cpp +++ b/cropeditor/settings/brushpenselection.cpp @@ -5,6 +5,7 @@ #include #include #include +#include #include #include #include @@ -12,6 +13,13 @@ BrushPenSelection::BrushPenSelection(CropScene *scene) : QDialog(), ui(new Ui::BrushPenSelection) { ui->setupUi(this); + + ui->animated->setChecked(settings::settings().value("blur/animatedHint", false).toBool()); + ui->performance->setChecked(settings::settings().value("blur/performanceHint", true).toBool()); + ui->quality->setChecked(settings::settings().value("blur/qualityHint", false).toBool()); + ui->radSlider->setValue(settings::settings().value("blur/radius", 5.).toDouble() * 100); + ui->radSpinner->setValue(settings::settings().value("blur/radius", 5.).toDouble()); + ui->cosmetic->setChecked(scene->pen().isCosmetic()); ui->widthSlider->setValue(scene->pen().width()); ui->widthSpinner->setValue(scene->pen().widthF()); @@ -41,12 +49,17 @@ void BrushPenSelection::on_buttonBox_accepted() { scene->pen().setWidthF(ui->widthSpinner->value()); scene->brush().setColor(brush); scene->brush().setStyle((Qt::BrushStyle)ui->brushStyle->currentIndex()); + settings::settings().setValue("penColor", scene->pen().color()); settings::settings().setValue("penCosmetic", scene->pen().isCosmetic()); settings::settings().setValue("penWidth", scene->pen().widthF()); settings::settings().setValue("brushColor", scene->brush().color()); settings::settings().setValue("brushStyle", (int)scene->brush().style()); settings::settings().setValue("brushPath", ui->pathItemHasBrush->isChecked()); + settings::settings().setValue("blur/radius", ui->radSpinner->value()); + settings::settings().setValue("blur/animatedHint", ui->animated->isChecked()); + settings::settings().setValue("blur/qualityHint", ui->quality->isChecked()); + settings::settings().setValue("blur/performanceHint", ui->performance->isChecked()); close(); } @@ -61,3 +74,11 @@ void BrushPenSelection::on_widthSlider_sliderMoved(int position) { void BrushPenSelection::on_widthSpinner_valueChanged(double arg) { ui->widthSlider->setValue(arg * 100); } + +void BrushPenSelection::on_radSpinner_valueChanged(double arg1) { + ui->radSlider->setValue(arg1 * 100); +} + +void BrushPenSelection::on_radSlider_sliderMoved(int position) { + ui->radSpinner->setValue(position / 100.); +} diff --git a/cropeditor/settings/brushpenselection.hpp b/cropeditor/settings/brushpenselection.hpp index 5c0183c..aca79ec 100644 --- a/cropeditor/settings/brushpenselection.hpp +++ b/cropeditor/settings/brushpenselection.hpp @@ -15,13 +15,13 @@ public: explicit BrushPenSelection(CropScene *scene); ~BrushPenSelection(); -private slots: +public slots: + void on_radSlider_sliderMoved(int position); + void on_radSpinner_valueChanged(double arg1); void on_penColor_clicked(bool); void on_brushColor_clicked(bool); - void on_buttonBox_accepted(); void on_buttonBox_rejected(); - void on_widthSlider_sliderMoved(int position); void on_widthSpinner_valueChanged(double arg1); diff --git a/cropeditor/settings/brushpenselection.ui b/cropeditor/settings/brushpenselection.ui index a6f8934..b8c0c8f 100644 --- a/cropeditor/settings/brushpenselection.ui +++ b/cropeditor/settings/brushpenselection.ui @@ -6,7 +6,7 @@ 0 0 - 416 + 449 367 @@ -16,13 +16,20 @@ Dialog - + Pen settings + + + + Choose pen color + + + @@ -30,16 +37,6 @@ - - - - 2500 - - - Qt::Horizontal - - - @@ -50,17 +47,20 @@ - - - - Choose pen color + + + + 2500 + + + Qt::Horizontal - + Brush settings @@ -162,7 +162,7 @@ - + QDialogButtonBox::Cancel|QDialogButtonBox::Ok @@ -172,6 +172,92 @@ + + + + Blur settings + + + + + + http://doc.qt.io/qt-5/qgraphicsblureffect.html#BlurHint-enum + + + <a href="http://doc.qt.io/qt-5/qgraphicsblureffect.html#BlurHint-enum">Blur Hints + + + true + + + Qt::TextBrowserInteraction + + + + + + + 3000 + + + Qt::Horizontal + + + + + + + px + + + 30.000000000000000 + + + + + + + Performance Hint + + + + + + + Animated Hint + + + + + + + Quality Hint + + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + + + + Blur Radius + + + + + +