The example uses QTreeWidget when it should use a QTreeView with a dedicated item model, primarily shows how to use item views (and very little about QSettings), and is generally not useful to show how an application could or should use QSettings to store settings. Turn it into a manual test instead; it's useful for that as it supports ini and plist files, and settings in different scopes. Fixes: QTBUG-119978 Change-Id: I7ce039f6391c41c679d126d90a251eee60327c39 Reviewed-by: Ed Cooke <ed.cooke@qt.io> Reviewed-by: Axel Spoerl <axel.spoerl@qt.io> (cherry picked from commit bddf27cd5a5412c8282fab43111e7319874ca44e) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
45 lines
918 B
C++
45 lines
918 B
C++
// Copyright (C) 2016 The Qt Company Ltd.
|
|
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
|
|
|
|
#ifndef MAINWINDOW_H
|
|
#define MAINWINDOW_H
|
|
|
|
#include <QMainWindow>
|
|
#include <QSharedPointer>
|
|
|
|
QT_BEGIN_NAMESPACE
|
|
class QAction;
|
|
class QSettings;
|
|
QT_END_NAMESPACE
|
|
class LocationDialog;
|
|
class SettingsTree;
|
|
|
|
class MainWindow : public QMainWindow
|
|
{
|
|
Q_OBJECT
|
|
|
|
public:
|
|
typedef QSharedPointer<QSettings> SettingsPtr;
|
|
|
|
MainWindow(QWidget *parent = nullptr);
|
|
|
|
private slots:
|
|
void openSettings();
|
|
void openIniFile();
|
|
void openPropertyList();
|
|
void openRegistryPath();
|
|
void about();
|
|
|
|
private:
|
|
void createActions();
|
|
void setSettingsObject(const SettingsPtr &settings);
|
|
|
|
SettingsTree *settingsTree = nullptr;
|
|
LocationDialog *locationDialog = nullptr;
|
|
QAction *refreshAct = nullptr;
|
|
QAction *autoRefreshAct = nullptr;
|
|
QAction *fallbacksAct = nullptr;
|
|
};
|
|
|
|
#endif
|