2 * SPDX-FileCopyrightText: 2011 Peter Penz <peter.penz19@gmail.com>
3 * SPDX-FileCopyrightText: 2021 Felix Ernst <fe.a.ernst@gmail.com>
5 * SPDX-License-Identifier: GPL-2.0-or-later
8 #include "viewmodesettings.h"
10 #include "dolphin_compactmodesettings.h"
11 #include "dolphin_detailsmodesettings.h"
12 #include "dolphin_iconsmodesettings.h"
14 ViewModeSettings::ViewModeSettings(DolphinView::Mode mode
)
17 case DolphinView::IconsView
: m_viewModeSettingsVariant
= IconsModeSettings::self(); return;
18 case DolphinView::CompactView
: m_viewModeSettingsVariant
= CompactModeSettings::self(); return;
19 case DolphinView::DetailsView
: m_viewModeSettingsVariant
= DetailsModeSettings::self(); return;
25 ViewModeSettings::ViewModeSettings(ViewSettingsTab::Mode mode
)
28 case ViewSettingsTab::IconsMode
: m_viewModeSettingsVariant
= IconsModeSettings::self(); return;
29 case ViewSettingsTab::CompactMode
: m_viewModeSettingsVariant
= CompactModeSettings::self(); return;
30 case ViewSettingsTab::DetailsMode
: m_viewModeSettingsVariant
= DetailsModeSettings::self(); return;
36 ViewModeSettings::ViewModeSettings(KStandardItemListView::ItemLayout itemLayout
)
39 case KStandardItemListView::IconsLayout
: m_viewModeSettingsVariant
= IconsModeSettings::self(); return;
40 case KStandardItemListView::CompactLayout
: m_viewModeSettingsVariant
= CompactModeSettings::self(); return;
41 case KStandardItemListView::DetailsLayout
: m_viewModeSettingsVariant
= DetailsModeSettings::self(); return;
47 void ViewModeSettings::setIconSize(int iconSize
)
49 std::visit([iconSize
](auto &&v
) {
50 v
->setIconSize(iconSize
);
51 }, m_viewModeSettingsVariant
);
54 int ViewModeSettings::iconSize() const
56 return std::visit([](auto &&v
) {
58 }, m_viewModeSettingsVariant
);
61 void ViewModeSettings::setPreviewSize(int previewSize
)
63 std::visit([previewSize
](auto &&v
) {
64 v
->setPreviewSize(previewSize
);
65 }, m_viewModeSettingsVariant
);
68 int ViewModeSettings::previewSize() const
70 return std::visit([](auto &&v
) {
71 return v
->previewSize();
72 }, m_viewModeSettingsVariant
);
75 void ViewModeSettings::setUseSystemFont(bool useSystemFont
)
77 std::visit([useSystemFont
](auto &&v
) {
78 v
->setUseSystemFont(useSystemFont
);
79 }, m_viewModeSettingsVariant
);
82 bool ViewModeSettings::useSystemFont() const
84 return std::visit([](auto &&v
) {
85 return v
->useSystemFont();
86 }, m_viewModeSettingsVariant
);
89 void ViewModeSettings::setViewFont(const QFont
&font
)
91 std::visit([&font
](auto &&v
) {
93 }, m_viewModeSettingsVariant
);
96 QFont
ViewModeSettings::viewFont() const
98 return std::visit([](auto &&v
) {
100 }, m_viewModeSettingsVariant
);
103 void ViewModeSettings::useDefaults(bool useDefaults
)
105 std::visit([useDefaults
](auto &&v
) {
106 v
->useDefaults(useDefaults
);
107 }, m_viewModeSettingsVariant
);
110 void ViewModeSettings::readConfig()
112 std::visit([](auto &&v
) {
114 }, m_viewModeSettingsVariant
);
117 void ViewModeSettings::save()
119 std::visit([](auto &&v
) {
121 }, m_viewModeSettingsVariant
);