kcontrol: format and indent

some (possibly) uninitialized variables usage was fixed while at it

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
This commit is contained in:
Ivailo Monev 2024-05-27 18:16:07 +03:00
parent c8926347cd
commit 64c5eb0884
13 changed files with 236 additions and 273 deletions

View file

@ -25,8 +25,8 @@
#include <kdebug.h>
OutputConfig::OutputConfig(QWidget* parent, RandROutput* output, OutputConfigList preceding, bool unified)
: QWidget(parent)
, precedingOutputConfigs( preceding )
: QWidget(parent),
precedingOutputConfigs(preceding)
{
m_output = output;
m_unified = unified;
@ -70,47 +70,56 @@ OutputConfig::~OutputConfig()
{
}
RandROutput *OutputConfig::output(void) const
RandROutput *OutputConfig::output() const
{
return m_output;
}
QPoint OutputConfig::position(void) const
QPoint OutputConfig::position() const
{
if( !isActive()) {
return QPoint();
}
int index = positionCombo->currentIndex();
if((Relation)positionCombo->itemData(index).toInt() == Absolute) {
Relation rel = static_cast<Relation>(positionCombo->itemData(index).toInt());
if(rel == Absolute) {
return QPoint(absolutePosX->value(), absolutePosY->value());
}
foreach(OutputConfig *config, precedingOutputConfigs) {
if (config->output()->id() == positionOutputCombo->itemData(positionOutputCombo->currentIndex()).toUInt()) {
QPoint pos = config->position();
switch( (Relation)positionCombo->itemData(index).toInt()) {
case LeftOf:
switch(rel) {
case LeftOf: {
return QPoint(pos.x() - resolution().width(), pos.y());
case RightOf:
}
case RightOf: {
return QPoint(pos.x() + config->resolution().width(), pos.y());
case Over:
}
case Over: {
return QPoint(pos.x(), pos.y() - resolution().height());
case Under:
}
case Under: {
return QPoint(pos.x(), pos.y() + config->resolution().height());
case SameAs:
}
case SameAs: {
return pos;
default:
abort();
}
default: {
Q_ASSERT(false);
break;
}
}
}
}
return QPoint(0, 0);
}
QSize OutputConfig::resolution(void) const
QSize OutputConfig::resolution() const
{
if( sizeCombo->count() == 0 )
if (sizeCombo->count() == 0) {
return QSize();
}
return sizeCombo->itemData(sizeCombo->currentIndex()).toSize();
}
@ -124,10 +133,10 @@ bool OutputConfig::isActive() const
return sizeCombo->count() != 0 && !resolution().isEmpty();
}
float OutputConfig::refreshRate(void) const
float OutputConfig::refreshRate() const
{
if( !isActive()) {
return 0;
return 0.0f;
}
float rate = float(refreshCombo->itemData(refreshCombo->currentIndex()).toDouble());
if (rate == 0.0f) {
@ -139,7 +148,7 @@ float OutputConfig::refreshRate(void) const
return rate;
}
int OutputConfig::rotation(void) const
int OutputConfig::rotation() const
{
if (!isActive()) {
return 0;
@ -167,7 +176,8 @@ void OutputConfig::setUnifyOutput(bool unified)
void OutputConfig::outputChanged(RROutput output, int changes)
{
Q_ASSERT(m_output->id() == output); Q_UNUSED(output);
Q_ASSERT(m_output->id() == output);
Q_UNUSED(output);
kDebug() << "Output" << m_output->name() << "changed. ( mask =" << QString::number(changes) << ")";
disconnect(absolutePosX, SIGNAL(valueChanged(int)), this, SLOT(setConfigDirty()));
@ -222,12 +232,24 @@ void OutputConfig::outputChanged(RROutput output, int changes)
QString OutputConfig::positionName(Relation position)
{
switch(position) {
case LeftOf: return i18n("Left of");
case RightOf: return i18n("Right of");
case Over: return i18nc("Output is placed above another one", "Above");
case Under: return i18nc("Output is placed below another one", "Below");
case SameAs: return i18n("Clone of");
case Absolute: return i18nc("Fixed, abitrary position", "Absolute");
case LeftOf: {
return i18n("Left of");
}
case RightOf: {
return i18n("Right of");
}
case Over: {
return i18nc("Output is placed above another one", "Above");
}
case Under: {
return i18nc("Output is placed below another one", "Below");
}
case SameAs: {
return i18n("Clone of");
}
case Absolute: {
return i18nc("Fixed, abitrary position", "Absolute");
}
}
return i18n("No relative position");
@ -260,30 +282,35 @@ void OutputConfig::setConfigDirty(void)
emit optionChanged();
}
bool OutputConfig::isRelativeTo( QRect rect, QRect to, Relation rel )
bool OutputConfig::isRelativeTo(const QRect &rect, const QRect &to, const Relation rel)
{
switch(rel) {
case LeftOf:
case LeftOf: {
return rect.x() + rect.width() == to.x() && rect.y() == to.y();
case RightOf:
}
case RightOf: {
return rect.x() == to.x() + to.width() && rect.y() == to.y();
case Over:
}
case Over: {
return rect.x() == to.x() && rect.y() + rect.height() == to.y();
case Under:
}
case Under: {
return rect.x() == to.x() && rect.y() == to.y() + to.height();
case SameAs:
}
case SameAs: {
return rect.topLeft() == to.topLeft();
}
case Absolute:
default:
default: {
return false;
}
}
}
void OutputConfig::positionComboChanged(int item)
{
Relation rel = (Relation)positionCombo->itemData(item).toInt();
bool isAbsolute = (rel == Absolute);
const Relation rel = static_cast<Relation>(positionCombo->itemData(item).toInt());
const bool isAbsolute = (rel == Absolute);
positionOutputCombo->setVisible(!isAbsolute);
absolutePosX->setVisible(isAbsolute);
@ -348,7 +375,7 @@ void OutputConfig::updatePositionListDelayed()
positionCombo->addItem(OutputConfig::positionName(OutputConfig::SameAs), OutputConfig::SameAs);
} else {
for(int i = -1; i < 5; i++) {
positionCombo->addItem(OutputConfig::positionName((Relation)i), i);
positionCombo->addItem(OutputConfig::positionName(static_cast<Relation>(i)), i);
}
}
@ -365,7 +392,7 @@ void OutputConfig::updatePositionListDelayed()
positionOutputCombo->addItem(QIcon(output->icon()), output->name(), (int)output->id());
if (!m_unified) {
for( int rel = -1; rel < 5; ++rel ) {
if( isRelativeTo( m_output->rect(), QRect( config->position(), config->resolution()), (Relation) rel )) {
if(isRelativeTo(m_output->rect(), QRect(config->position(), config->resolution()), static_cast<Relation>(rel))) {
positionCombo->setCurrentIndex(positionCombo->findData(rel));
}
}
@ -481,7 +508,7 @@ void OutputConfig::updateSizeList(void)
void OutputConfig::updateRateList(int resolutionIndex)
{
QSize resolution = sizeCombo->itemData(resolutionIndex).toSize();
if ((resolution == QSize(0, 0)) || !resolution.isValid()) {
if (resolution == QSize(0, 0) || !resolution.isValid()) {
refreshCombo->setEnabled(false);
rateLabel->setEnabled(false);
return;

View file

@ -52,28 +52,27 @@ public:
// and that confuses GCC.
bool isActive() const;
QPoint position(void) const;
QSize resolution(void) const;
QPoint position() const;
QSize resolution() const;
QRect rect() const;
float refreshRate(void) const;
int rotation(void) const;
float refreshRate() const;
int rotation() const;
static QString positionName(Relation position);
RandROutput *output(void) const;
RandROutput *output() const;
bool hasPendingChanges(const QPoint &normalizePos) const;
void setUnifyOutput(bool unified);
public slots:
void load();
void updateSizeList(void);
void updateSizeList();
protected slots:
void setConfigDirty(void);
void setConfigDirty();
void updatePositionList(void);
void updatePositionListDelayed(void);
void updateRotationList(void);
void updateRateList(void);
void updatePositionList();
void updatePositionListDelayed();
void updateRotationList();
void updateRateList();
void updateRateList(int resolutionIndex);
void positionComboChanged(int item);
@ -85,7 +84,8 @@ signals:
void connectedChanged(bool);
private:
static bool isRelativeTo(QRect rect, QRect to, Relation rel);
static QString positionName(Relation position);
static bool isRelativeTo(const QRect &rect, const QRect &to, const Relation rel);
bool m_changed;
bool m_unified;
QPoint m_pos;

View file

@ -129,19 +129,6 @@
</property>
</widget>
</item>
<item>
<spacer name="horizontalSpacer">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
</layout>
</item>
</layout>

View file

@ -31,7 +31,7 @@ RandRCrtc::RandRCrtc(RandRScreen *parent, RRCrtc id)
Q_ASSERT(m_screen);
m_currentRotation = m_originalRotation = m_proposedRotation = RandR::Rotate0;
m_currentRate = m_originalRate = m_proposedRate = 0;
m_currentRate = m_originalRate = m_proposedRate = 0.0;
m_currentMode = 0;
m_rotations = RandR::Rotate0;
@ -85,8 +85,8 @@ void RandRCrtc::loadSettings(bool notify)
changes |= RandR::ChangeRect;
}
// get all connected outputs
// and create a list of modes that are available in all connected outputs
// get all connected outputs and create a list of modes that are available in all connected
// outputs
OutputList outputs;
for (int i = 0; i < info->noutput; ++i) {
@ -198,6 +198,7 @@ bool RandRCrtc::applyProposed()
kDebug() << " Current Screen rect:" << m_screen->rect();
kDebug() << " Current CRTC rect:" << m_currentRect;
kDebug() << " Current rotation:" << m_currentRotation;
kDebug() << " Current refresh rate:" << m_currentRate;
kDebug() << " Proposed CRTC rect:" << m_proposedRect;
kDebug() << " Proposed rotation:" << m_proposedRotation;
kDebug() << " Proposed refresh rate:" << m_proposedRate;
@ -213,30 +214,27 @@ bool RandRCrtc::applyProposed()
if (m_proposedRect.size() == m_currentRect.size() && m_proposedRate == m_currentRate) {
mode = m_screen->mode(m_currentMode);
} else {
// find a mode that has the desired size and is supported
// by all connected outputs
// find a mode that has the desired size and is supported by all connected outputs
ModeList modeList = modes();
ModeList matchModes;
foreach(RRMode m, modeList)
{
foreach(const RRMode m, modeList) {
RandRMode mode = m_screen->mode(m); {
if (mode.size() == m_proposedRect.size())
matchModes.append(m);
}
}
// if no matching modes were found, disable output
// else set the mode to the first mode in the list. If no refresh rate was given
// or no mode was found matching the given refresh rate, the first mode of the
// list will be used
if (!matchModes.count()) {
// if no matching modes were found, disable output else set the mode to the first mode in
// the list. If no refresh rate was given or no mode was found matching the given refresh
// rate, the first mode of the list will be used
if (matchModes.count() <= 0) {
mode = RandRMode();
} else {
mode = m_screen->mode(matchModes.first());
}
foreach(RRMode m, matchModes) {
foreach(const RRMode m, matchModes) {
RandRMode testMode = m_screen->mode(m);
if (testMode.refreshRate() == m_proposedRate) {
mode = testMode;
@ -246,14 +244,13 @@ bool RandRCrtc::applyProposed()
}
// if no output was connected, set the mode to None
if (!m_connectedOutputs.count()) {
if (m_connectedOutputs.count() <= 0) {
mode = RandRMode();
} else if (!mode.isValid()) {
return false;
}
if (mode.isValid())
{
if (mode.isValid()) {
if (m_currentRotation == m_proposedRotation ||
(m_currentRotation == RandR::Rotate0 && m_proposedRotation == RandR::Rotate180) ||
(m_currentRotation == RandR::Rotate180 && m_proposedRotation == RandR::Rotate0) ||
@ -295,13 +292,18 @@ bool RandRCrtc::applyProposed()
outputs[i] = m_connectedOutputs.at(i);
}
Status s = XRRSetCrtcConfig(QX11Info::display(), m_screen->resources(), m_id,
XRRScreenResources* resources = m_screen->resources();
Status s = XRRSetCrtcConfig(
QX11Info::display(), resources, m_id,
RandR::timestamp, m_proposedRect.x(), m_proposedRect.y(), mode.id(),
m_proposedRotation, outputs, m_connectedOutputs.count());
m_proposedRotation, outputs, m_connectedOutputs.count()
);
delete[] outputs;
bool ret = false;
if (s == RRSetConfigSuccess) {
kDebug() << "Changes for CRTC" << m_id << "successfully applied.";
m_currentMode = mode.id();
@ -370,9 +372,11 @@ void RandRCrtc::setOriginal()
bool RandRCrtc::proposedChanged()
{
return (m_proposedRotation != m_currentRotation ||
return (
m_proposedRotation != m_currentRotation ||
m_proposedRect != m_currentRect ||
m_proposedRate != m_currentRate);
m_proposedRate != m_currentRate
);
}
bool RandRCrtc::addOutput(RROutput output, const QSize &s)
@ -383,8 +387,7 @@ bool RandRCrtc::addOutput(RROutput output, const QSize &s)
size = m_currentRect.size();
}
// check if this output is not already on this crtc
// if not, add it
// check if this output is not already on this crtc, if not add it
if (m_connectedOutputs.indexOf(output) == -1) {
// the given output is not possible
if (m_possibleOutputs.indexOf(output) == -1) {
@ -439,5 +442,3 @@ ModeList RandRCrtc::modes() const
}
#include "moc_randrcrtc.cpp"

View file

@ -75,7 +75,6 @@ private:
float m_currentRate;
int m_currentRotation;
QRect m_originalRect;
float m_originalRate;
int m_originalRotation;

View file

@ -31,7 +31,11 @@
#include "randrscreen.h"
RandRDisplay::RandRDisplay()
: m_valid(true)
: m_valid(true),
m_numScreens(0),
m_currentScreenIndex(0),
m_eventBase(0),
m_errorBase(0)
{
m_dpy = QX11Info::display();
@ -41,7 +45,8 @@ RandRDisplay::RandRDisplay()
return;
}
int major_version, minor_version;
int major_version = 0;
int minor_version = 0;
XRRQueryVersion(m_dpy, &major_version, &minor_version);
m_version = i18n("X Resize and Rotate extension version %1.%2", major_version, minor_version);
@ -205,7 +210,7 @@ void RandRDisplay::saveStartup(KConfig& config)
KConfigGroup group = config.group("Display");
group.writeEntry("ApplyOnStartup", true);
QStringList commands;
foreach(RandRScreen *s, m_screens) {
foreach(const RandRScreen *s, m_screens) {
commands += s->startupCommands();
}
group.writeEntry("StartupCommands", commands.join( "\n"));

View file

@ -18,15 +18,15 @@
#include "randrmode.h"
#include <QX11Info>
RandRMode::RandRMode(XRRModeInfo *info)
: m_size(0, 0)
: m_valid(false),
m_name("Invalid mode"),
m_size(0, 0),
m_rate(0.0),
m_id(0)
{
m_valid = false;
m_rate = 0;
m_id = 0;
m_name = "Invalid mode";
if (info) {
m_valid = true;
} else {
@ -45,7 +45,6 @@ RandRMode::RandRMode(XRRModeInfo *info)
} else {
m_rate = 0;
}
}
RandRMode::~RandRMode()

View file

@ -24,7 +24,7 @@
class RandRMode
{
public:
RandRMode(XRRModeInfo *info = 0);
RandRMode(XRRModeInfo *info = nullptr);
~RandRMode();
RRMode id() const;
@ -32,6 +32,7 @@ public:
bool isValid() const;
QSize size() const;
float refreshRate() const;
private:
bool m_valid;
QString m_name;

View file

@ -176,10 +176,7 @@ void RandROutput::handleEvent(XRROutputChangeNotifyEvent *event)
kDebug() << " rotation: " << event->rotation;
kDebug() << " connection: " << event->connection;
// FIXME: handling these events incorrectly, causing an X11 I/O error...
// Disable for now.
// kWarning() << "FIXME: Output event ignored!";
// return;
// NOTE: handling these events incorrectly causing an X11 I/O error...
RRCrtc currentCrtc = m_crtc->id();
if (event->crtc != currentCrtc) {
@ -195,8 +192,9 @@ void RandROutput::handleEvent(XRROutputChangeNotifyEvent *event)
}
}
if (event->mode != mode().id())
if (event->mode != mode().id()) {
changed |= RandR::ChangeMode;
}
if (event->rotation != rotation()) {
changed |= RandR::ChangeRotation;
@ -337,7 +335,6 @@ float RandROutput::refreshRate() const
if (!m_crtc->isValid()) {
return 0;
}
return m_crtc->mode().refreshRate();
}
@ -509,27 +506,6 @@ void RandROutput::proposeRotation(int r)
m_proposedRotation = r;
}
void RandROutput::slotChangeSize(QAction *action)
{
QSize size = action->data().toSize();
m_proposedRect.setSize(size);
applyProposed(RandR::ChangeRect, true);
}
void RandROutput::slotChangeRotation(QAction *action)
{
m_proposedRotation = action->data().toInt();
applyProposed(RandR::ChangeRotation, true);
}
void RandROutput::slotChangeRefreshRate(QAction *action)
{
float rate = action->data().toDouble();
m_proposedRate = rate;
applyProposed(RandR::ChangeRate, true);
}
void RandROutput::slotDisable()
{
m_originalRect = rect();
@ -553,31 +529,18 @@ void RandROutput::slotEnable()
}
}
void RandROutput::slotSetAsPrimary(bool primary)
{
if (!primary) {
if (m_screen->primaryOutput() == this) {
kDebug() << "Removing" << m_name << "as primary output";
m_screen->setPrimaryOutput(0);
}
} else if (m_connected) {
kDebug() << "Setting" << m_name << "as primary output";
m_screen->setPrimaryOutput(this);
}
}
RandRCrtc* RandROutput::findEmptyCrtc()
{
RandRCrtc *crtc = 0;
RandRCrtc *crtc = nullptr;
foreach(RRCrtc c, m_possibleCrtcs) {
foreach (const RRCrtc c, m_possibleCrtcs) {
crtc = m_screen->crtc(c);
if (crtc->connectedOutputs().count() == 0) {
return crtc;
}
}
return 0;
return nullptr;
}
bool RandROutput::tryCrtc(RandRCrtc *crtc, int changes)
@ -636,7 +599,7 @@ bool RandROutput::applyProposed(int changes, bool confirm)
if (m_crtc->isValid()
&& (m_crtc->rect() == m_proposedRect || !(changes & RandR::ChangeRect))
&& (m_crtc->rotation() == m_proposedRotation || !(changes & RandR::ChangeRotation))
&& ((m_crtc->refreshRate() == m_proposedRate || !m_proposedRate || !(changes & RandR::ChangeRate)))) {
&& (m_crtc->refreshRate() == m_proposedRate || !m_proposedRate || !(changes & RandR::ChangeRate))) {
return true;
}
kDebug() << "Applying proposed changes for output" << m_name << "...";
@ -694,7 +657,10 @@ bool RandROutput::setCrtc(RandRCrtc *crtc, bool applyNow)
<< "on output" << m_name;
if (m_crtc && m_crtc->isValid()) {
disconnect(m_crtc, SIGNAL(crtcChanged(RRCrtc,int)), this, SLOT(slotCrtcChanged(RRCrtc,int)));
disconnect(
m_crtc, SIGNAL(crtcChanged(RRCrtc,int)),
this, SLOT(slotCrtcChanged(RRCrtc,int))
);
m_crtc->removeOutput(m_id);
if (applyNow) {
@ -707,7 +673,10 @@ bool RandROutput::setCrtc(RandRCrtc *crtc, bool applyNow)
}
m_crtc->addOutput(m_id);
connect(m_crtc, SIGNAL(crtcChanged(RRCrtc,int)), this, SLOT(slotCrtcChanged(RRCrtc,int)));
connect(
m_crtc, SIGNAL(crtcChanged(RRCrtc,int)),
this, SLOT(slotCrtcChanged(RRCrtc,int))
);
return true;
}

View file

@ -127,12 +127,8 @@ public:
QStringList startupCommands() const;
public slots:
void slotChangeSize(QAction *action);
void slotChangeRotation(QAction *action);
void slotChangeRefreshRate(QAction *action);
void slotDisable();
void slotEnable();
void slotSetAsPrimary(bool primary);
private slots:
void slotCrtcChanged(RRCrtc c, int changes);

View file

@ -79,10 +79,13 @@ Window RandRScreen::rootWindow() const
void RandRScreen::loadSettings(bool notify)
{
bool changed = false;
int minW, minH, maxW, maxH;
int minW = 0;
int minH = 0;
int maxW = 0;
int maxH = 0;
Status status = XRRGetScreenSizeRange(QX11Info::display(), rootWindow(), &minW, &minH, &maxW, &maxH);
//FIXME: we should check the status here
// FIXME: should check the status here
Q_UNUSED(status);
QSize minSize = QSize(minW, minH);
QSize maxSize = QSize(maxW, maxH);
@ -217,7 +220,7 @@ RandRCrtc* RandRScreen::crtc(RRCrtc id) const
if (m_crtcs.contains(id)) {
return m_crtcs[id];
}
return 0;
return nullptr;
}
OutputMap RandRScreen::outputs() const
@ -230,7 +233,7 @@ RandROutput* RandRScreen::output(RROutput id) const
if (m_outputs.contains(id)) {
return m_outputs[id];
}
return 0;
return nullptr;
}
void RandRScreen::setPrimaryOutput(RandROutput* output)
@ -263,7 +266,7 @@ RandRMode RandRScreen::mode(RRMode id) const
return m_modes[id];
}
return RandRMode(0);
return RandRMode();
}
bool RandRScreen::adjustSize(const QRect &minimumSize)
@ -343,8 +346,27 @@ void RandRScreen::setOutputsUnified(bool unified)
{
m_outputsUnified = unified;
// should this be called here?
slotUnifyOutputs(unified);
KConfig cfg("krandrrc");
if (!unified || m_connectedCount <= 1) {
foreach(RandROutput *output, m_outputs) {
if (output->isConnected()) {
output->load(cfg);
output->applyProposed();
}
}
} else {
SizeList sizes = unifiedSizes();
if (!sizes.count()) {
// FIXME: this should be better handle
return;
}
m_unifiedRect.setTopLeft(QPoint(0,0));
m_unifiedRect.setSize(sizes.first());
unifyOutputs();
}
}
int RandRScreen::unifiedRotations() const
@ -412,7 +434,7 @@ void RandRScreen::load(KConfig& config, bool skipOutputs)
: group.readEntry("UnifiedRect", QRect());
m_unifiedRotation = group.readEntry("UnifiedRotation", (int) RandR::Rotate0);
// slotUnifyOutputs(m_outputsUnified);
// setOutputsUnified(m_outputsUnified);
if (skipOutputs) {
return;
@ -592,51 +614,13 @@ void RandRScreen::unifyOutputs()
emit configChanged();
}
void RandRScreen::slotResizeUnified(QAction *action)
{
m_unifiedRect.setSize(action->data().toSize());
unifyOutputs();
}
void RandRScreen::slotUnifyOutputs(bool unified)
{
m_outputsUnified = unified;
KConfig cfg("krandrrc");
if (!unified || m_connectedCount <= 1) {
foreach(RandROutput *output, m_outputs) {
if (output->isConnected()) {
output->load(cfg);
output->applyProposed();
}
}
} else {
SizeList sizes = unifiedSizes();
if (!sizes.count()) {
// FIXME: this should be better handle
return;
}
m_unifiedRect.setTopLeft(QPoint(0,0));
m_unifiedRect.setSize(sizes.first());
unifyOutputs();
}
}
void RandRScreen::slotRotateUnified(QAction *action)
{
m_unifiedRotation = action->data().toInt();
unifyOutputs();
}
void RandRScreen::slotOutputChanged(RROutput id, int changes)
{
Q_UNUSED(id);
Q_UNUSED(changes);
int connected = 0, active = 0;
int connected = 0;
int active = 0;
foreach (RandROutput *output, m_outputs) {
if (output->isConnected()) {
connected++;

View file

@ -91,10 +91,6 @@ public:
QStringList startupCommands() const;
public slots:
void slotUnifyOutputs(bool unify);
void slotResizeUnified(QAction *action);
void slotRotateUnified(QAction *action);
void slotOutputChanged(RROutput id, int changes);
void save();
@ -103,10 +99,9 @@ public slots:
signals:
void configChanged();
protected slots:
private:
void unifyOutputs();
private:
int m_index;
QSize m_minSize;
QSize m_maxSize;