File indexing completed on 2024-05-12 09:54:32

0001 /* This file is part of the KDE project
0002    SPDX-FileCopyrightText: 2010 Thomas Fjellstrom <thomas@fjellstrom.ca>
0003 
0004    SPDX-License-Identifier: LGPL-2.0-or-later
0005 */
0006 
0007 #include "katefiletreepluginsettings.h"
0008 #include "katefiletreedebug.h"
0009 #include <KColorScheme>
0010 #include <KColorUtils>
0011 
0012 KateFileTreePluginSettings::KateFileTreePluginSettings()
0013     : m_group(KSharedConfig::openConfig(), QStringLiteral("filetree"))
0014 {
0015     KColorScheme colors(QPalette::Active);
0016     QColor bg = colors.background().color();
0017     QColor viewShade = KColorUtils::tint(bg, colors.foreground(KColorScheme::VisitedText).color(), 0.5);
0018     QColor editShade = KColorUtils::tint(bg, colors.foreground(KColorScheme::ActiveText).color(), 0.5);
0019 
0020     m_shadingEnabled = m_group.readEntry("shadingEnabled", true);
0021     m_viewShade = m_group.readEntry("viewShade", viewShade);
0022     m_editShade = m_group.readEntry("editShade", editShade);
0023 
0024     m_listMode = m_group.readEntry("listMode", false);
0025     m_sortRole = m_group.readEntry("sortRole", int(Qt::DisplayRole));
0026 
0027     m_showFullPathOnRoots = m_group.readEntry("showFullPathOnRoots", false);
0028 
0029     m_showToolbar = m_group.readEntry("showToolbar", true);
0030 
0031     m_showCloseButton = m_group.readEntry("showCloseButton", false);
0032 }
0033 
0034 void KateFileTreePluginSettings::save()
0035 {
0036     m_group.writeEntry("shadingEnabled", m_shadingEnabled);
0037     m_group.writeEntry("viewShade", m_viewShade);
0038     m_group.writeEntry("editShade", m_editShade);
0039     m_group.writeEntry("listMode", m_listMode);
0040     m_group.writeEntry("sortRole", m_sortRole);
0041     m_group.writeEntry("showFullPathOnRoots", m_showFullPathOnRoots);
0042     m_group.writeEntry("showToolbar", m_showToolbar);
0043     m_group.writeEntry("showCloseButton", m_showCloseButton);
0044 
0045     m_group.sync();
0046 }
0047 
0048 bool KateFileTreePluginSettings::shadingEnabled() const
0049 {
0050     return m_shadingEnabled;
0051 }
0052 
0053 void KateFileTreePluginSettings::setShadingEnabled(bool shadingEnabled)
0054 {
0055     m_shadingEnabled = shadingEnabled;
0056 }
0057 
0058 const QColor &KateFileTreePluginSettings::viewShade() const
0059 {
0060     return m_viewShade;
0061 }
0062 
0063 void KateFileTreePluginSettings::setViewShade(const QColor &viewShade)
0064 {
0065     m_viewShade = viewShade;
0066 }
0067 
0068 const QColor &KateFileTreePluginSettings::editShade() const
0069 {
0070     return m_editShade;
0071 }
0072 
0073 void KateFileTreePluginSettings::setEditShade(const QColor &editShade)
0074 {
0075     m_editShade = editShade;
0076 }
0077 
0078 bool KateFileTreePluginSettings::listMode() const
0079 {
0080     return m_listMode;
0081 }
0082 
0083 void KateFileTreePluginSettings::setListMode(bool listMode)
0084 {
0085     m_listMode = listMode;
0086 }
0087 
0088 int KateFileTreePluginSettings::sortRole() const
0089 {
0090     return m_sortRole;
0091 }
0092 
0093 void KateFileTreePluginSettings::setSortRole(int sortRole)
0094 {
0095     m_sortRole = sortRole;
0096 }
0097 
0098 bool KateFileTreePluginSettings::showFullPathOnRoots() const
0099 {
0100     return m_showFullPathOnRoots;
0101 }
0102 
0103 void KateFileTreePluginSettings::setShowFullPathOnRoots(bool s)
0104 {
0105     m_showFullPathOnRoots = s;
0106 }
0107 
0108 bool KateFileTreePluginSettings::showToolbar() const
0109 {
0110     return m_showToolbar;
0111 }
0112 
0113 void KateFileTreePluginSettings::setShowToolbar(bool s)
0114 {
0115     m_showToolbar = s;
0116 }
0117 
0118 bool KateFileTreePluginSettings::showCloseButton() const
0119 {
0120     return m_showCloseButton;
0121 }
0122 
0123 void KateFileTreePluginSettings::setShowCloseButton(bool s)
0124 {
0125     m_showCloseButton = s;
0126 }