File indexing completed on 2024-06-23 04:27:04
0001 /* This file is part of the KDE project 0002 * SPDX-FileCopyrightText: 2007 Rob Buis <buis@kde.org> 0003 * 0004 * SPDX-License-Identifier: LGPL-2.0-or-later 0005 */ 0006 0007 #include "SpiralShapeConfigCommand.h" 0008 #include <klocalizedstring.h> 0009 0010 SpiralShapeConfigCommand::SpiralShapeConfigCommand(SpiralShape *spiral, SpiralShape::SpiralType type, bool clockWise, qreal fade, KUndo2Command *parent) 0011 : KUndo2Command(parent) 0012 , m_spiral(spiral) 0013 , m_newType(type) 0014 , m_newClockWise(clockWise) 0015 , m_newFade(fade) 0016 { 0017 Q_ASSERT(m_spiral); 0018 0019 setText(kundo2_i18n("Change spiral")); 0020 0021 m_oldType = m_spiral->type(); 0022 m_oldClockWise = m_spiral->clockWise(); 0023 m_oldFade = m_spiral->fade(); 0024 } 0025 0026 void SpiralShapeConfigCommand::redo() 0027 { 0028 KUndo2Command::redo(); 0029 0030 m_spiral->update(); 0031 0032 if (m_oldType != m_newType) { 0033 m_spiral->setType(m_newType); 0034 } 0035 if (m_oldClockWise != m_newClockWise) { 0036 m_spiral->setClockWise(m_newClockWise); 0037 } 0038 if (m_oldFade != m_newFade) { 0039 m_spiral->setFade(m_newFade); 0040 } 0041 0042 m_spiral->update(); 0043 } 0044 0045 void SpiralShapeConfigCommand::undo() 0046 { 0047 KUndo2Command::undo(); 0048 0049 m_spiral->update(); 0050 0051 if (m_oldType != m_newType) { 0052 m_spiral->setType(m_oldType); 0053 } 0054 if (m_oldClockWise != m_newClockWise) { 0055 m_spiral->setClockWise(m_oldClockWise); 0056 } 0057 if (m_oldFade != m_newFade) { 0058 m_spiral->setFade(m_oldFade); 0059 } 0060 0061 m_spiral->update(); 0062 }