File indexing completed on 2024-05-12 04:20:36
0001 /* 0002 * SPDX-FileCopyrightText: 2001-2015 Klaralvdalens Datakonsult AB. All rights reserved. 0003 * 0004 * This file is part of the KD Chart library. 0005 * 0006 * SPDX-License-Identifier: GPL-2.0-or-later 0007 */ 0008 0009 #include "KChartPrintingParameters.h" 0010 0011 using namespace KChart; 0012 0013 PrintingParameters::PrintingParameters() 0014 : m_scaleFactor( 1.0 ) 0015 { 0016 } 0017 0018 PrintingParameters* PrintingParameters::instance() 0019 { 0020 static PrintingParameters instance; 0021 return &instance; 0022 } 0023 0024 qreal PrintingParameters::scaleFactor() 0025 { 0026 return instance()->m_scaleFactor; 0027 } 0028 0029 void PrintingParameters::setScaleFactor( const qreal scaleFactor ) 0030 { 0031 instance()->m_scaleFactor = scaleFactor; 0032 } 0033 0034 void PrintingParameters::resetScaleFactor() 0035 { 0036 instance()->m_scaleFactor = 1.0; 0037 } 0038 0039 QPen PrintingParameters::scalePen( const QPen& pen ) 0040 { 0041 if ( instance()->m_scaleFactor == 1.0 ) 0042 return pen; 0043 0044 QPen resultPen = pen; 0045 resultPen.setWidthF( resultPen.widthF() * instance()->m_scaleFactor ); 0046 if ( resultPen.widthF() == 0.0 ) 0047 resultPen.setWidthF( instance()->m_scaleFactor ); 0048 0049 return resultPen; 0050 }