Warning, file /sdk/kompare/src/dialogpages/viewsettings.cpp was not indexed or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).
0001 /* 0002 SPDX-FileCopyrightText: 2001-2003 Otto Bruggeman <otto.bruggeman@home.nl> 0003 SPDX-FileCopyrightText: 2001-2003 John Firebaugh <jfirebaugh@kde.org> 0004 SPDX-FileCopyrightText: 2007 Kevin Kofler <kevin.kofler@chello.at> 0005 0006 SPDX-License-Identifier: GPL-2.0-or-later 0007 */ 0008 0009 #include "viewsettings.h" 0010 0011 #include <QFont> 0012 #include <QFontDatabase> 0013 0014 #include <KConfig> 0015 #include <KConfigGroup> 0016 0017 using namespace KompareDiff2; 0018 0019 const QColor ViewSettings::default_removeColor (190, 237, 190); 0020 const QColor ViewSettings::default_changeColor (237, 190, 190); 0021 const QColor ViewSettings::default_addColor (190, 190, 237); 0022 const QColor ViewSettings::default_appliedColor(237, 237, 190); 0023 0024 ViewSettings::ViewSettings(QWidget* parent) 0025 : SettingsBase(parent), 0026 m_removeColor(0, 0, 0), 0027 m_changeColor(0, 0, 0), 0028 m_addColor(0, 0, 0), 0029 m_appliedColor(0, 0, 0), 0030 m_scrollNoOfLines(0), 0031 m_tabToNumberOfSpaces(0) 0032 { 0033 } 0034 0035 ViewSettings::~ViewSettings() 0036 { 0037 } 0038 0039 void ViewSettings::loadSettings(KConfig* config) 0040 { 0041 KConfigGroup cfg(config, QStringLiteral("View Options")); 0042 m_removeColor = cfg.readEntry("RemoveColor", default_removeColor); 0043 m_changeColor = cfg.readEntry("ChangeColor", default_changeColor); 0044 m_addColor = cfg.readEntry("AddColor", default_addColor); 0045 m_appliedColor = cfg.readEntry("AppliedColor", default_appliedColor); 0046 m_scrollNoOfLines = cfg.readEntry("ScrollNoOfLines", 3); 0047 m_tabToNumberOfSpaces = cfg.readEntry("TabToNumberOfSpaces", 4); 0048 0049 QFont stdFixed = QFontDatabase::systemFont(QFontDatabase::FixedFont); 0050 stdFixed.setPointSize(10); 0051 m_font = cfg.readEntry("TextFont", stdFixed); 0052 } 0053 0054 void ViewSettings::saveSettings(KConfig* config) 0055 { 0056 KConfigGroup cfg(config, QStringLiteral("View Options")); 0057 cfg.writeEntry("RemoveColor", m_removeColor); 0058 cfg.writeEntry("ChangeColor", m_changeColor); 0059 cfg.writeEntry("AddColor", m_addColor); 0060 cfg.writeEntry("AppliedColor", m_appliedColor); 0061 cfg.writeEntry("ScrollNoOfLines", m_scrollNoOfLines); 0062 cfg.writeEntry("TabToNumberOfSpaces", m_tabToNumberOfSpaces); 0063 0064 cfg.writeEntry("TextFont", m_font); 0065 } 0066 0067 QColor ViewSettings::colorForDifferenceType(int type, bool selected, bool applied) 0068 { 0069 // FIXME: does not belong here 0070 QColor color; 0071 if (applied) 0072 color = m_appliedColor; 0073 else 0074 { 0075 type = type & 0xFFFFFFEF; // remove the AppliedByBlend 0076 switch (type) { 0077 case Difference::Unchanged: color = Qt::white; break; 0078 case Difference::Change: color = m_changeColor; break; 0079 case Difference::Insert: color = m_addColor; break; 0080 case Difference::Delete: color = m_removeColor; break; 0081 default: break; 0082 } 0083 } 0084 0085 if (selected) 0086 color = color.lighter(110); 0087 0088 return color; 0089 } 0090 0091 #include "moc_viewsettings.cpp"