File indexing completed on 2024-05-12 16:35:12

0001 /* This file is part of the KDE project
0002    Copyright 2005-2006 Stefan Nikolaus <stefan.nikolaus@kdemail.net>
0003 
0004    This library is free software; you can redistribute it and/or
0005    modify it under the terms of the GNU Library General Public
0006    License as published by the Free Software Foundation; either
0007    version 2 of the License, or (at your option) any later version.
0008 
0009    This library is distributed in the hope that it will be useful,
0010    but WITHOUT ANY WARRANTY; without even the implied warranty of
0011    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
0012    Library General Public License for more details.
0013 
0014    You should have received a copy of the GNU Library General Public License
0015    along with this library; see the file COPYING.LIB.  If not, write to
0016    the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
0017    Boston, MA 02110-1301, USA.
0018 */
0019 
0020 // Local
0021 #include "PrecisionCommand.h"
0022 
0023 #include <KLocalizedString>
0024 
0025 #include "Cell.h"
0026 #include "CellStorage.h"
0027 #include "Sheet.h"
0028 #include "Style.h"
0029 
0030 using namespace Calligra::Sheets;
0031 
0032 PrecisionCommand::PrecisionCommand()
0033         : AbstractRegionCommand()
0034 {
0035     setText(kundo2_i18n("Increase Precision"));
0036 }
0037 
0038 bool PrecisionCommand::mainProcessing()
0039 {
0040     Style style;
0041     if (!m_reverse) {
0042         // increase the precision
0043         style.setPrecision(1);
0044     } else { // m_reverse
0045         // decrease the precision
0046         style.setPrecision(-1);
0047     }
0048     m_sheet->cellStorage()->setStyle(*this, style);
0049     return true;
0050 }
0051 
0052 bool PrecisionCommand::postProcessing()
0053 {
0054     return true;
0055 }
0056 
0057 void PrecisionCommand::setReverse(bool reverse)
0058 {
0059     AbstractRegionCommand::setReverse(reverse);
0060     if (!m_reverse)
0061         setText(kundo2_i18n("Increase Precision"));
0062     else
0063         setText(kundo2_i18n("Decrease Precision"));
0064 }