File indexing completed on 2024-05-05 05:35:34
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 ShadowConfigWidget::ShadowConfigWidget(QWidget *parent) 0025 : QGroupBox(parent) 0026 , ui(new Ui_ShadowConfiguraionUI()) 0027 { 0028 setCheckable(true); 0029 ui->setupUi(this); 0030 0031 // connections 0032 connect(ui->shadowSize, SIGNAL(valueChanged(int)), SLOT(updateChanged())); 0033 connect(ui->verticalOffset, SIGNAL(valueChanged(int)), SLOT(updateChanged())); 0034 connect(ui->innerColor, SIGNAL(changed(QColor)), SLOT(updateChanged())); 0035 connect(ui->outerColor, SIGNAL(changed(QColor)), SLOT(updateChanged())); 0036 connect(ui->useOuterColor, SIGNAL(toggled(bool)), SLOT(updateChanged())); 0037 connect(this, SIGNAL(toggled(bool)), SLOT(updateChanged())); 0038 } 0039 0040 //_________________________________________________________ 0041 ShadowConfigWidget::~ShadowConfigWidget(void) 0042 { 0043 delete ui; 0044 } 0045 0046 //_________________________________________________________ 0047 void ShadowConfigWidget::save(void) const 0048 { 0049 if (_group == QPalette::Active) { 0050 ActiveShadowConfiguration::setShadowSize(ui->shadowSize->value()); 0051 ActiveShadowConfiguration::setVerticalOffset(0.1 * ui->verticalOffset->value()); 0052 ActiveShadowConfiguration::setInnerColor(ui->innerColor->color()); 0053 ActiveShadowConfiguration::setOuterColor(ui->outerColor->color()); 0054 ActiveShadowConfiguration::setUseOuterColor(ui->useOuterColor->isChecked()); 0055 0056 ActiveShadowConfiguration::setEnabled(isChecked()); 0057 ActiveShadowConfiguration::self()->save(); 0058 0059 } else if (_group == QPalette::Inactive) { 0060 InactiveShadowConfiguration::setShadowSize(ui->shadowSize->value()); 0061 InactiveShadowConfiguration::setVerticalOffset(0.1 * ui->verticalOffset->value()); 0062 InactiveShadowConfiguration::setInnerColor(ui->innerColor->color()); 0063 InactiveShadowConfiguration::setOuterColor(ui->outerColor->color()); 0064 InactiveShadowConfiguration::setUseOuterColor(ui->useOuterColor->isChecked()); 0065 0066 InactiveShadowConfiguration::setEnabled(isChecked()); 0067 InactiveShadowConfiguration::self()->save(); 0068 } 0069 } 0070 0071 //_________________________________________________________ 0072 void ShadowConfigWidget::updateChanged(void) 0073 { 0074 if (_group == QPalette::Active) { 0075 setChanged((ui->shadowSize->value() != ActiveShadowConfiguration::shadowSize()) 0076 || (ui->verticalOffset->value() != 10 * ActiveShadowConfiguration::verticalOffset()) 0077 || (ui->innerColor->color() != ActiveShadowConfiguration::innerColor()) 0078 || (ui->useOuterColor->isChecked() != ActiveShadowConfiguration::useOuterColor()) 0079 || (ui->outerColor->color() != ActiveShadowConfiguration::outerColor()) || (isChecked() != ActiveShadowConfiguration::enabled())); 0080 0081 } else if (_group == QPalette::Inactive) { 0082 setChanged((ui->shadowSize->value() != InactiveShadowConfiguration::shadowSize()) 0083 || (ui->verticalOffset->value() != 10 * InactiveShadowConfiguration::verticalOffset()) 0084 || (ui->innerColor->color() != InactiveShadowConfiguration::innerColor()) 0085 || (ui->useOuterColor->isChecked() != InactiveShadowConfiguration::useOuterColor()) 0086 || (ui->outerColor->color() != InactiveShadowConfiguration::outerColor()) || (isChecked() != InactiveShadowConfiguration::enabled())); 0087 } 0088 } 0089 0090 //_________________________________________________________ 0091 void ShadowConfigWidget::load(bool defaults) 0092 { 0093 if (_group == QPalette::Active) { 0094 if (defaults) 0095 ActiveShadowConfiguration::self()->setDefaults(); 0096 else { 0097 ActiveShadowConfiguration::self()->load(); 0098 } 0099 0100 ui->shadowSize->setValue(ActiveShadowConfiguration::shadowSize()); 0101 ui->verticalOffset->setValue(10 * ActiveShadowConfiguration::verticalOffset()); 0102 ui->innerColor->setColor(ActiveShadowConfiguration::innerColor()); 0103 ui->outerColor->setColor(ActiveShadowConfiguration::outerColor()); 0104 ui->useOuterColor->setChecked(ActiveShadowConfiguration::useOuterColor()); 0105 0106 setChecked(ActiveShadowConfiguration::enabled()); 0107 0108 } else if (_group == QPalette::Inactive) { 0109 if (defaults) 0110 InactiveShadowConfiguration::self()->setDefaults(); 0111 else { 0112 InactiveShadowConfiguration::self()->load(); 0113 } 0114 0115 ui->shadowSize->setValue(InactiveShadowConfiguration::shadowSize()); 0116 ui->verticalOffset->setValue(10 * InactiveShadowConfiguration::verticalOffset()); 0117 ui->innerColor->setColor(InactiveShadowConfiguration::innerColor()); 0118 ui->outerColor->setColor(InactiveShadowConfiguration::outerColor()); 0119 ui->useOuterColor->setChecked(InactiveShadowConfiguration::useOuterColor()); 0120 0121 setChecked(InactiveShadowConfiguration::enabled()); 0122 } 0123 } 0124 }