File indexing completed on 2024-05-12 17:06:31
0001 ////////////////////////////////////////////////////////////////////////////// 0002 // ShadowConfigurationui->cpp 0003 // ------------------- 0004 // 0005 // SPDX-FileCopyrightText: 2009 Hugo Pereira Da Costa <hugo.pereira@free.fr> 0006 // 0007 // SPDX-License-Identifier: MIT 0008 ////////////////////////////////////////////////////////////////////////////// 0009 0010 #include "oxygenshadowconfigwidget.h" 0011 #include "oxygenactiveshadowconfiguration.h" 0012 #include "oxygeninactiveshadowconfiguration.h" 0013 #include "ui_oxygenshadowconfigurationui.h" 0014 0015 #include "config-liboxygen.h" 0016 0017 #include <KLocalizedString> 0018 #include <QLabel> 0019 #include <QLayout> 0020 0021 namespace Oxygen 0022 { 0023 0024 //_________________________________________________________ 0025 ShadowConfigWidget::ShadowConfigWidget(QWidget *parent) 0026 : QGroupBox(parent) 0027 , ui(new Ui_ShadowConfiguraionUI()) 0028 { 0029 setCheckable(true); 0030 ui->setupUi(this); 0031 0032 // connections 0033 connect(ui->shadowSize, SIGNAL(valueChanged(int)), SLOT(updateChanged())); 0034 connect(ui->verticalOffset, SIGNAL(valueChanged(int)), SLOT(updateChanged())); 0035 connect(ui->innerColor, SIGNAL(changed(QColor)), SLOT(updateChanged())); 0036 connect(ui->outerColor, SIGNAL(changed(QColor)), SLOT(updateChanged())); 0037 connect(ui->useOuterColor, SIGNAL(toggled(bool)), SLOT(updateChanged())); 0038 connect(this, SIGNAL(toggled(bool)), SLOT(updateChanged())); 0039 } 0040 0041 //_________________________________________________________ 0042 ShadowConfigWidget::~ShadowConfigWidget(void) 0043 { 0044 delete ui; 0045 } 0046 0047 //_________________________________________________________ 0048 void ShadowConfigWidget::save(void) const 0049 { 0050 if (_group == QPalette::Active) { 0051 ActiveShadowConfiguration::setShadowSize(ui->shadowSize->value()); 0052 ActiveShadowConfiguration::setVerticalOffset(0.1 * ui->verticalOffset->value()); 0053 ActiveShadowConfiguration::setInnerColor(ui->innerColor->color()); 0054 ActiveShadowConfiguration::setOuterColor(ui->outerColor->color()); 0055 ActiveShadowConfiguration::setUseOuterColor(ui->useOuterColor->isChecked()); 0056 0057 ActiveShadowConfiguration::setEnabled(isChecked()); 0058 ActiveShadowConfiguration::self()->save(); 0059 0060 } else if (_group == QPalette::Inactive) { 0061 InactiveShadowConfiguration::setShadowSize(ui->shadowSize->value()); 0062 InactiveShadowConfiguration::setVerticalOffset(0.1 * ui->verticalOffset->value()); 0063 InactiveShadowConfiguration::setInnerColor(ui->innerColor->color()); 0064 InactiveShadowConfiguration::setOuterColor(ui->outerColor->color()); 0065 InactiveShadowConfiguration::setUseOuterColor(ui->useOuterColor->isChecked()); 0066 0067 InactiveShadowConfiguration::setEnabled(isChecked()); 0068 InactiveShadowConfiguration::self()->save(); 0069 } 0070 } 0071 0072 //_________________________________________________________ 0073 void ShadowConfigWidget::updateChanged(void) 0074 { 0075 if (_group == QPalette::Active) { 0076 setChanged((ui->shadowSize->value() != ActiveShadowConfiguration::shadowSize()) 0077 || (ui->verticalOffset->value() != 10 * ActiveShadowConfiguration::verticalOffset()) 0078 || (ui->innerColor->color() != ActiveShadowConfiguration::innerColor()) 0079 || (ui->useOuterColor->isChecked() != ActiveShadowConfiguration::useOuterColor()) 0080 || (ui->outerColor->color() != ActiveShadowConfiguration::outerColor()) || (isChecked() != ActiveShadowConfiguration::enabled())); 0081 0082 } else if (_group == QPalette::Inactive) { 0083 setChanged((ui->shadowSize->value() != InactiveShadowConfiguration::shadowSize()) 0084 || (ui->verticalOffset->value() != 10 * InactiveShadowConfiguration::verticalOffset()) 0085 || (ui->innerColor->color() != InactiveShadowConfiguration::innerColor()) 0086 || (ui->useOuterColor->isChecked() != InactiveShadowConfiguration::useOuterColor()) 0087 || (ui->outerColor->color() != InactiveShadowConfiguration::outerColor()) || (isChecked() != InactiveShadowConfiguration::enabled())); 0088 } 0089 } 0090 0091 //_________________________________________________________ 0092 void ShadowConfigWidget::load(bool defaults) 0093 { 0094 if (_group == QPalette::Active) { 0095 if (defaults) 0096 ActiveShadowConfiguration::self()->setDefaults(); 0097 else { 0098 ActiveShadowConfiguration::self()->load(); 0099 } 0100 0101 ui->shadowSize->setValue(ActiveShadowConfiguration::shadowSize()); 0102 ui->verticalOffset->setValue(10 * ActiveShadowConfiguration::verticalOffset()); 0103 ui->innerColor->setColor(ActiveShadowConfiguration::innerColor()); 0104 ui->outerColor->setColor(ActiveShadowConfiguration::outerColor()); 0105 ui->useOuterColor->setChecked(ActiveShadowConfiguration::useOuterColor()); 0106 0107 setChecked(ActiveShadowConfiguration::enabled()); 0108 0109 } else if (_group == QPalette::Inactive) { 0110 if (defaults) 0111 InactiveShadowConfiguration::self()->setDefaults(); 0112 else { 0113 InactiveShadowConfiguration::self()->load(); 0114 } 0115 0116 ui->shadowSize->setValue(InactiveShadowConfiguration::shadowSize()); 0117 ui->verticalOffset->setValue(10 * InactiveShadowConfiguration::verticalOffset()); 0118 ui->innerColor->setColor(InactiveShadowConfiguration::innerColor()); 0119 ui->outerColor->setColor(InactiveShadowConfiguration::outerColor()); 0120 ui->useOuterColor->setChecked(InactiveShadowConfiguration::useOuterColor()); 0121 0122 setChecked(InactiveShadowConfiguration::enabled()); 0123 } 0124 } 0125 }