1 | |
2 | #include "kconfigviewstatesaver.h" |
3 | |
4 | #include <KConfigGroup> |
5 | |
6 | static const char selectionKey[] = "Selection" ; |
7 | static const char expansionKey[] = "Expansion" ; |
8 | static const char currentKey[] = "Current" ; |
9 | static const char scrollStateHorizontalKey[] = "HorizontalScroll" ; |
10 | static const char scrollStateVerticalKey[] = "VerticalScroll" ; |
11 | |
12 | KConfigViewStateSaver::KConfigViewStateSaver(QObject *parent) |
13 | : KViewStateSerializer(parent) |
14 | { |
15 | } |
16 | |
17 | void KConfigViewStateSaver::restoreState(const KConfigGroup &configGroup) |
18 | { |
19 | restoreSelection(indexStrings: configGroup.readEntry(key: selectionKey, aDefault: QStringList())); |
20 | restoreCurrentItem(indexString: configGroup.readEntry(key: currentKey, aDefault: QString())); |
21 | restoreExpanded(indexStrings: configGroup.readEntry(key: expansionKey, aDefault: QStringList())); |
22 | restoreScrollState(verticalScoll: configGroup.readEntry(key: scrollStateVerticalKey, defaultValue: -1), horizontalScroll: configGroup.readEntry(key: scrollStateHorizontalKey, defaultValue: -1)); |
23 | |
24 | KViewStateSerializer::restoreState(); |
25 | } |
26 | |
27 | void KConfigViewStateSaver::saveState(KConfigGroup &configGroup) |
28 | { |
29 | if (selectionModel()) { |
30 | configGroup.writeEntry(key: selectionKey, value: selectionKeys()); |
31 | configGroup.writeEntry(key: currentKey, value: currentIndexKey()); |
32 | } |
33 | |
34 | if (view()) { |
35 | QStringList expansion = expansionKeys(); |
36 | |
37 | configGroup.writeEntry(key: expansionKey, value: expansion); |
38 | } |
39 | |
40 | if (view()) { |
41 | QPair<int, int> _scrollState = scrollState(); |
42 | configGroup.writeEntry(key: scrollStateVerticalKey, value: _scrollState.first); |
43 | configGroup.writeEntry(key: scrollStateHorizontalKey, value: _scrollState.second); |
44 | } |
45 | } |
46 | |
47 | #include "moc_kconfigviewstatesaver.cpp" |
48 | |