0c266e760b
This change replaces the remaining usages of the old connect syntax with the new connect syntax. Unfortunately, there are still places where we have to use SIGNAL() and SLOT() macros, for example the stuff that deals with d-bus business. Clazy was used to create this change. There were a few cases that needed manual intervention, the majority of those cases were about resolving ambiguity caused by overloaded signals.
104 lines
3 KiB
C++
104 lines
3 KiB
C++
/*
|
|
KWin - the KDE window manager
|
|
This file is part of the KDE project.
|
|
|
|
SPDX-FileCopyrightText: 2009 Lucas Murray <lmurray@undefinedfire.com>
|
|
SPDX-FileCopyrightText: 2020 Cyril Rossi <cyril.rossi@enioka.com>
|
|
|
|
SPDX-License-Identifier: GPL-2.0-or-later
|
|
*/
|
|
|
|
#include "kwinscreenedgeconfigform.h"
|
|
#include "ui_main.h"
|
|
|
|
namespace KWin
|
|
{
|
|
|
|
KWinScreenEdgesConfigForm::KWinScreenEdgesConfigForm(QWidget *parent)
|
|
: KWinScreenEdge(parent)
|
|
, ui(new Ui::KWinScreenEdgesConfigUI)
|
|
{
|
|
ui->setupUi(this);
|
|
|
|
connect(ui->kcfg_ElectricBorderDelay, qOverload<int>(&QSpinBox::valueChanged), this, &KWinScreenEdgesConfigForm::sanitizeCooldown);
|
|
|
|
// Visual feedback of action group conflicts
|
|
connect(ui->kcfg_ElectricBorders, qOverload<int>(&QComboBox::currentIndexChanged), this, &KWinScreenEdgesConfigForm::groupChanged);
|
|
connect(ui->kcfg_ElectricBorderMaximize, &QCheckBox::stateChanged, this, &KWinScreenEdgesConfigForm::groupChanged);
|
|
connect(ui->kcfg_ElectricBorderTiling, &QCheckBox::stateChanged, this, &KWinScreenEdgesConfigForm::groupChanged);
|
|
|
|
connect(ui->electricBorderCornerRatioSpin, qOverload<int>(&QSpinBox::valueChanged), this, &KWinScreenEdgesConfigForm::onChanged);
|
|
}
|
|
|
|
KWinScreenEdgesConfigForm::~KWinScreenEdgesConfigForm()
|
|
{
|
|
delete ui;
|
|
}
|
|
|
|
void KWinScreenEdgesConfigForm::setElectricBorderCornerRatio(double value)
|
|
{
|
|
m_referenceCornerRatio = value;
|
|
ui->electricBorderCornerRatioSpin->setValue(m_referenceCornerRatio * 100.);
|
|
}
|
|
|
|
void KWinScreenEdgesConfigForm::setDefaultElectricBorderCornerRatio(double value)
|
|
{
|
|
m_defaultCornerRatio = value;
|
|
}
|
|
|
|
double KWinScreenEdgesConfigForm::electricBorderCornerRatio() const
|
|
{
|
|
return ui->electricBorderCornerRatioSpin->value() / 100.;
|
|
}
|
|
|
|
void KWinScreenEdgesConfigForm::setElectricBorderCornerRatioEnabled(bool enable)
|
|
{
|
|
return ui->electricBorderCornerRatioSpin->setEnabled(enable);
|
|
}
|
|
|
|
void KWinScreenEdgesConfigForm::reload()
|
|
{
|
|
ui->electricBorderCornerRatioSpin->setValue(m_referenceCornerRatio * 100.);
|
|
KWinScreenEdge::reload();
|
|
}
|
|
|
|
void KWinScreenEdgesConfigForm::setDefaults()
|
|
{
|
|
ui->electricBorderCornerRatioSpin->setValue(m_defaultCornerRatio * 100.);
|
|
KWinScreenEdge::setDefaults();
|
|
}
|
|
|
|
Monitor *KWinScreenEdgesConfigForm::monitor() const
|
|
{
|
|
return ui->monitor;
|
|
}
|
|
|
|
bool KWinScreenEdgesConfigForm::isSaveNeeded() const
|
|
{
|
|
return m_referenceCornerRatio != electricBorderCornerRatio();
|
|
}
|
|
|
|
bool KWinScreenEdgesConfigForm::isDefault() const
|
|
{
|
|
return m_defaultCornerRatio == electricBorderCornerRatio();
|
|
}
|
|
|
|
void KWinScreenEdgesConfigForm::sanitizeCooldown()
|
|
{
|
|
ui->kcfg_ElectricBorderCooldown->setMinimum(ui->kcfg_ElectricBorderDelay->value() + 50);
|
|
}
|
|
|
|
void KWinScreenEdgesConfigForm::groupChanged()
|
|
{
|
|
// Monitor conflicts
|
|
bool hide = false;
|
|
if (ui->kcfg_ElectricBorders->currentIndex() == 2) {
|
|
hide = true;
|
|
}
|
|
monitorHideEdge(ElectricTop, hide);
|
|
monitorHideEdge(ElectricRight, hide);
|
|
monitorHideEdge(ElectricBottom, hide);
|
|
monitorHideEdge(ElectricLeft, hide);
|
|
}
|
|
|
|
} // namespace
|