]> cloud.milkyroute.net Git - dolphin.git/blob - src/settings/viewmodes/viewmodesettings.cpp
Output of licensedigger + manual cleanup afterwards.
[dolphin.git] / src / settings / viewmodes / viewmodesettings.cpp
1 /*
2 * SPDX-FileCopyrightText: 2011 Peter Penz <peter.penz19@gmail.com>
3 *
4 * SPDX-License-Identifier: GPL-2.0-or-later
5 */
6
7 #include "viewmodesettings.h"
8
9 #include "dolphin_compactmodesettings.h"
10 #include "dolphin_detailsmodesettings.h"
11 #include "dolphin_iconsmodesettings.h"
12
13 #define VIEWMODESETTINGS_SET_VALUE(mode, setValue, value) \
14 switch (mode) { \
15 case ViewModeSettings::IconsMode: IconsModeSettings::setValue(value); break; \
16 case ViewModeSettings::CompactMode: CompactModeSettings::setValue(value); break; \
17 case ViewModeSettings::DetailsMode: DetailsModeSettings::setValue(value); break; \
18 default: Q_ASSERT(false); break; \
19 }
20
21 #define VIEWMODESETTINGS_RETURN_VALUE(mode, getValue, type) \
22 type value; \
23 switch (m_mode) { \
24 case IconsMode: value = IconsModeSettings::getValue(); break; \
25 case CompactMode: value = CompactModeSettings::getValue(); break; \
26 case DetailsMode: value = DetailsModeSettings::getValue(); break; \
27 default: value = IconsModeSettings::getValue(); \
28 Q_ASSERT(false); \
29 break; \
30 } \
31 return value
32
33 ViewModeSettings::ViewModeSettings(ViewMode mode) :
34 m_mode(mode)
35 {
36 }
37
38 ViewModeSettings::~ViewModeSettings()
39 {
40 }
41
42 void ViewModeSettings::setIconSize(int size) const
43 {
44 VIEWMODESETTINGS_SET_VALUE(m_mode, setIconSize, size);
45 }
46
47 int ViewModeSettings::iconSize() const
48 {
49 VIEWMODESETTINGS_RETURN_VALUE(m_mode, iconSize, int);
50 }
51
52 void ViewModeSettings::setPreviewSize(int size) const
53 {
54 VIEWMODESETTINGS_SET_VALUE(m_mode, setPreviewSize, size);
55 }
56
57 int ViewModeSettings::previewSize() const
58 {
59 VIEWMODESETTINGS_RETURN_VALUE(m_mode, previewSize, int);
60 }
61
62 void ViewModeSettings::setUseSystemFont(bool flag)
63 {
64 VIEWMODESETTINGS_SET_VALUE(m_mode, setUseSystemFont, flag);
65 }
66
67 bool ViewModeSettings::useSystemFont() const
68 {
69 VIEWMODESETTINGS_RETURN_VALUE(m_mode, useSystemFont, bool);
70 }
71
72 void ViewModeSettings::setFontFamily(const QString& fontFamily)
73 {
74 VIEWMODESETTINGS_SET_VALUE(m_mode, setFontFamily, fontFamily);
75 }
76
77 QString ViewModeSettings::fontFamily() const
78 {
79 VIEWMODESETTINGS_RETURN_VALUE(m_mode, fontFamily, QString);
80 }
81
82 void ViewModeSettings::setFontSize(qreal fontSize)
83 {
84 VIEWMODESETTINGS_SET_VALUE(m_mode, setFontSize, fontSize);
85 }
86
87 qreal ViewModeSettings::fontSize() const
88 {
89 VIEWMODESETTINGS_RETURN_VALUE(m_mode, fontSize, qreal);
90 }
91
92 void ViewModeSettings::setItalicFont(bool italic)
93 {
94 VIEWMODESETTINGS_SET_VALUE(m_mode, setItalicFont, italic);
95 }
96
97 bool ViewModeSettings::italicFont() const
98 {
99 VIEWMODESETTINGS_RETURN_VALUE(m_mode, italicFont, bool);
100 }
101
102 void ViewModeSettings::setFontWeight(int fontWeight)
103 {
104 VIEWMODESETTINGS_SET_VALUE(m_mode, setFontWeight, fontWeight);
105 }
106
107 int ViewModeSettings::fontWeight() const
108 {
109 VIEWMODESETTINGS_RETURN_VALUE(m_mode, fontWeight, int);
110 }
111
112 void ViewModeSettings::readConfig()
113 {
114 switch (m_mode) {
115 case ViewModeSettings::IconsMode: IconsModeSettings::self()->load(); break;
116 case ViewModeSettings::CompactMode: CompactModeSettings::self()->load(); break;
117 case ViewModeSettings::DetailsMode: DetailsModeSettings::self()->load(); break;
118 default: Q_ASSERT(false); break;
119 }
120 }
121
122 void ViewModeSettings::save()
123 {
124 switch (m_mode) {
125 case ViewModeSettings::IconsMode: IconsModeSettings::self()->save(); break;
126 case ViewModeSettings::CompactMode: CompactModeSettings::self()->save(); break;
127 case ViewModeSettings::DetailsMode: DetailsModeSettings::self()->save(); break;
128 default: Q_ASSERT(false); break;
129 }
130 }