6#include "ui_previewconfigurationwidget.h"
10#include <iconloader_p.h>
11#include <stylesheeteditor_p.h>
13#include <deviceskin_p.h>
15#include <QtDesigner/abstractsettings.h>
17#include <QtWidgets/qfiledialog.h>
18#include <QtWidgets/qstylefactory.h>
19#include <QtWidgets/qfiledialog.h>
20#include <QtWidgets/qmessagebox.h>
22#include <QtCore/qlist.h>
23#include <QtCore/qdebug.h>
24#include <QtCore/qfileinfo.h>
25#include <QtCore/qshareddata.h>
31using namespace Qt::StringLiterals;
38using Skins = QList<SkinNamePath>;
45 const QDir dir(skinResourcePathC,
"*."_L1 + skinExtensionC);
46 const QFileInfoList list = dir.entryInfoList(QDir::Dirs|QDir::NoDotAndDotDot, QDir::Name);
49 for (
const auto &fi : list)
50 rc.append(SkinNamePath(fi.baseName(), fi.filePath()));
73 QDesignerFormEditorInterface *
m_core;
76 PreviewConfiguration previewConfiguration()
const;
77 void setPreviewConfiguration(
const PreviewConfiguration &pc);
79 QStringList userSkins()
const;
80 void addUserSkins(
const QStringList &files);
81 bool canRemoveSkin(
int index)
const;
84 const QString m_defaultStyle;
88 int m_firstUserSkinIndex;
89 int m_browseSkinIndex;
116 "editdelete.png"_L1));
150 for (
const auto &
f :
files) {
155 qWarning() <<
"Unable to access the skin directory '" <<
f <<
"'.";
276 const QString msg =
tr(
"%1 is not a valid skin directory:\n%2")
287 m_impl(
new PreviewConfigurationWidgetPrivate(core,
this))
289 connect(m_impl->appStyleSheetChangeButton(), &QAbstractButton::clicked,
291 connect(m_impl->skinRemoveButton(), &QAbstractButton::clicked,
293 connect(m_impl->skinCombo(), &QComboBox::currentIndexChanged,
296 m_impl->retrieveSettings();
306 m_impl->storeSettings();
311 m_impl->slotEditAppStyleSheet();
316 m_impl->slotDeleteSkinEntry();
321 m_impl->slotSkinChanged(index);
Auxiliary methods to store/retrieve settings.