mirror of
https://github.com/arcan1s/awesome-widgets.git
synced 2025-05-04 12:23:49 +00:00
refactor: refresh shared library
This commit is contained in:
parent
332d78eb25
commit
dbfb3562a6
@ -41,18 +41,17 @@ QString AWDebug::getAboutText(const QString &_type)
|
||||
} else if (_type == "description") {
|
||||
text = i18n("A set of minimalistic plasmoid widgets");
|
||||
} else if (_type == "links") {
|
||||
text = i18n("Links:") + "<ul>" + QString("<li><a href=\"%1\">%2</a></li>").arg(HOMEPAGE).arg(i18n("Homepage"))
|
||||
+ QString("<li><a href=\"%1\">%2</a></li>").arg(REPOSITORY).arg(i18n("Repository"))
|
||||
+ QString("<li><a href=\"%1\">%2</a></li>").arg(BUGTRACKER).arg(i18n("Bugtracker"))
|
||||
+ QString("<li><a href=\"%1\">%2</a></li>").arg(TRANSLATION).arg(i18n("Translation issue"))
|
||||
+ QString("<li><a href=\"%1\">%2</a></li>").arg(AUR_PACKAGES).arg(i18n("AUR packages"))
|
||||
+ QString("<li><a href=\"%1\">%2</a></li>").arg(OPENSUSE_PACKAGES).arg(i18n("openSUSE packages"))
|
||||
+ "</ul>";
|
||||
text = i18n("Links:") + "<ul>" + QString("<li><a href=\"%1\">%2</a></li>").arg(HOMEPAGE, i18n("Homepage"))
|
||||
+ QString("<li><a href=\"%1\">%2</a></li>").arg(REPOSITORY, i18n("Repository"))
|
||||
+ QString("<li><a href=\"%1\">%2</a></li>").arg(BUGTRACKER, i18n("Bugtracker"))
|
||||
+ QString("<li><a href=\"%1\">%2</a></li>").arg(TRANSLATION, i18n("Translation issue"))
|
||||
+ QString("<li><a href=\"%1\">%2</a></li>").arg(AUR_PACKAGES, i18n("AUR packages"))
|
||||
+ QString("<li><a href=\"%1\">%2</a></li>").arg(OPENSUSE_PACKAGES, i18n("openSUSE packages")) + "</ul>";
|
||||
} else if (_type == "copy") {
|
||||
text = QString("<small>© %1 <a href=\"mailto:%2\">%3</a><br>").arg(DATE).arg(EMAIL).arg(AUTHOR)
|
||||
+ i18nc("This software is licensed under %1", LICENSE) + "</small>";
|
||||
text = QString("<small>© %1 <a href=\"mailto:%2\">%3</a><br>").arg(DATE, EMAIL, AUTHOR)
|
||||
+ i18n("This software is licensed under %1", LICENSE) + "</small>";
|
||||
} else if (_type == "translators") {
|
||||
QStringList translatorList = QString(TRANSLATORS).split(',');
|
||||
auto translatorList = QString(TRANSLATORS).split(',');
|
||||
for (auto &translator : translatorList)
|
||||
translator = QString("<li>%1</li>").arg(translator);
|
||||
text = i18n("Translators:") + "<ul>" + translatorList.join("") + "</ul>";
|
||||
@ -60,16 +59,14 @@ QString AWDebug::getAboutText(const QString &_type)
|
||||
QStringList trdPartyList = QString(TRDPARTY_LICENSE).split(';', Qt::SkipEmptyParts);
|
||||
for (int i = 0; i < trdPartyList.count(); i++)
|
||||
trdPartyList[i] = QString("<li><a href=\"%3\">%1</a> (%2 license)</li>")
|
||||
.arg(trdPartyList.at(i).split(',')[0])
|
||||
.arg(trdPartyList.at(i).split(',')[1])
|
||||
.arg(trdPartyList.at(i).split(',')[2]);
|
||||
.arg(trdPartyList.at(i).split(',')[0], trdPartyList.at(i).split(',')[1],
|
||||
trdPartyList.at(i).split(',')[2]);
|
||||
text = i18n("This software uses:") + "<ul>" + trdPartyList.join("") + "</ul>";
|
||||
} else if (_type == "thanks") {
|
||||
QStringList thanks = QString(SPECIAL_THANKS).split(';', Qt::SkipEmptyParts);
|
||||
for (int i = 0; i < thanks.count(); i++)
|
||||
thanks[i] = QString("<li><a href=\"%2\">%1</a></li>")
|
||||
.arg(thanks.at(i).split(',')[0])
|
||||
.arg(thanks.at(i).split(',')[1]);
|
||||
thanks[i]
|
||||
= QString("<li><a href=\"%2\">%1</a></li>").arg(thanks.at(i).split(',')[0], thanks.at(i).split(',')[1]);
|
||||
text = i18n("Special thanks to:") + "<ul>" + thanks.join("") + "</ul>";
|
||||
}
|
||||
|
||||
|
@ -84,8 +84,7 @@ bool AWConfigHelper::exportConfiguration(QObject *_nativeConfig, const QString &
|
||||
|
||||
// extensions
|
||||
for (auto &item : m_dirs) {
|
||||
QStringList items
|
||||
= QDir(QString("%1/%2").arg(m_baseDir, item)).entryList({"*.desktop"}, QDir::Files);
|
||||
QStringList items = QDir(QString("%1/%2").arg(m_baseDir, item)).entryList({"*.desktop"}, QDir::Files);
|
||||
settings.beginGroup(item);
|
||||
for (auto &it : items)
|
||||
copyExtensions(it, item, settings, false);
|
||||
|
@ -161,7 +161,7 @@ void AWFormatterHelper::initFormatters()
|
||||
// check if already exists
|
||||
auto values = m_formattersClasses.values();
|
||||
if (std::any_of(values.cbegin(), values.cend(),
|
||||
[&filePath](const AWAbstractFormatter *item) { return (item->fileName() == filePath); }))
|
||||
[&filePath](const AWAbstractFormatter *item) { return (item->filePath() == filePath); }))
|
||||
continue;
|
||||
|
||||
auto metadata = readMetadata(filePath);
|
||||
|
@ -71,7 +71,7 @@ bool AWUpdateHelper::checkVersion()
|
||||
qCInfo(LOG_AW) << "Found version" << version << "actual one is" << m_foundVersion;
|
||||
|
||||
if ((version != m_foundVersion) && (!QString(CHANGELOG).isEmpty())) {
|
||||
sendNotification(i18nc("Changelog of %1", VERSION), QString(CHANGELOG).replace('@', '\n'));
|
||||
sendNotification(i18n("Changelog of %1", VERSION), QString(CHANGELOG).replace('@', '\n'));
|
||||
return true;
|
||||
} else if (version != m_foundVersion) {
|
||||
qCWarning(LOG_AW) << "No changelog information provided";
|
||||
@ -106,7 +106,7 @@ void AWUpdateHelper::showUpdates(const QVersionNumber &_version)
|
||||
qCDebug(LOG_AW) << "Version" << _version;
|
||||
|
||||
QString text;
|
||||
text += i18nc("Current version : %1", VERSION);
|
||||
text += i18n("Current version : %1", VERSION);
|
||||
text += QString(COMMIT_SHA).isEmpty() ? "\n" : QString(" (%1)\n").arg(QString(COMMIT_SHA));
|
||||
text += i18n("New version : %1", _version.toString()) + "\n\n";
|
||||
text += i18n("Click \"Ok\" to download");
|
||||
|
@ -29,13 +29,13 @@
|
||||
|
||||
AbstractExtItem::AbstractExtItem(QObject *_parent, const QString &_filePath)
|
||||
: QObject(_parent)
|
||||
, m_fileName(_filePath)
|
||||
, m_filePath(_filePath)
|
||||
{
|
||||
qCDebug(LOG_LIB) << __PRETTY_FUNCTION__;
|
||||
|
||||
qCDebug(LOG_LIB) << "Desktop name" << _filePath;
|
||||
|
||||
m_name = m_fileName;
|
||||
m_name = m_filePath;
|
||||
}
|
||||
|
||||
|
||||
@ -95,10 +95,11 @@ void AbstractExtItem::startTimer()
|
||||
}
|
||||
|
||||
|
||||
QString AbstractExtItem::writtableConfig() const
|
||||
QString AbstractExtItem::writableConfig() const
|
||||
{
|
||||
auto path = m_fileName;
|
||||
auto name = QFileInfo(path).fileName();
|
||||
auto path = m_filePath;
|
||||
auto name = fileName();
|
||||
// extract subdirectory
|
||||
path.remove(path.length() - name.length() - 1, name.length() + 1);
|
||||
auto dir = QFileInfo(path).fileName();
|
||||
|
||||
@ -127,7 +128,13 @@ QString AbstractExtItem::cron() const
|
||||
|
||||
QString AbstractExtItem::fileName() const
|
||||
{
|
||||
return m_fileName;
|
||||
return QFileInfo(filePath()).fileName();
|
||||
}
|
||||
|
||||
|
||||
QString AbstractExtItem::filePath() const
|
||||
{
|
||||
return m_filePath;
|
||||
}
|
||||
|
||||
|
||||
@ -267,7 +274,7 @@ void AbstractExtItem::deinitSocket()
|
||||
|
||||
m_socket->close();
|
||||
QLocalServer::removeServer(socket());
|
||||
disconnect(m_socket, &QLocalServer::newConnection, this, &AbstractExtItem::newConnectionReceived);
|
||||
disconnect(m_socket, &QLocalServer::newConnection, this, &AbstractExtItem::requestDataUpdate);
|
||||
delete m_socket;
|
||||
}
|
||||
|
||||
@ -280,13 +287,13 @@ void AbstractExtItem::initSocket()
|
||||
m_socket = new QLocalServer(this);
|
||||
auto listening = m_socket->listen(socket());
|
||||
qCInfo(LOG_LIB) << "Server listening on" << socket() << listening;
|
||||
connect(m_socket, &QLocalServer::newConnection, this, &AbstractExtItem::newConnectionReceived);
|
||||
connect(m_socket, &QLocalServer::newConnection, this, &AbstractExtItem::requestDataUpdate);
|
||||
}
|
||||
|
||||
|
||||
void AbstractExtItem::readConfiguration()
|
||||
{
|
||||
QSettings settings(m_fileName, QSettings::IniFormat);
|
||||
QSettings settings(m_filePath, QSettings::IniFormat);
|
||||
|
||||
settings.beginGroup("Desktop Entry");
|
||||
setName(settings.value("Name", name()).toString());
|
||||
@ -303,8 +310,8 @@ void AbstractExtItem::readConfiguration()
|
||||
|
||||
bool AbstractExtItem::tryDelete() const
|
||||
{
|
||||
auto status = QFile::remove(m_fileName);
|
||||
qCInfo(LOG_LIB) << "Remove file" << m_fileName << status;
|
||||
auto status = QFile::remove(m_filePath);
|
||||
qCInfo(LOG_LIB) << "Remove file" << m_filePath << status;
|
||||
|
||||
return status;
|
||||
}
|
||||
@ -312,7 +319,7 @@ bool AbstractExtItem::tryDelete() const
|
||||
|
||||
void AbstractExtItem::writeConfiguration() const
|
||||
{
|
||||
QSettings settings(writtableConfig(), QSettings::IniFormat);
|
||||
QSettings settings(writableConfig(), QSettings::IniFormat);
|
||||
qCInfo(LOG_LIB) << "Configuration file" << settings.fileName();
|
||||
|
||||
settings.beginGroup("Desktop Entry");
|
||||
@ -329,9 +336,3 @@ void AbstractExtItem::writeConfiguration() const
|
||||
|
||||
settings.sync();
|
||||
}
|
||||
|
||||
|
||||
void AbstractExtItem::newConnectionReceived()
|
||||
{
|
||||
emit(requestDataUpdate());
|
||||
}
|
||||
|
@ -32,6 +32,7 @@ class AbstractExtItem : public QObject
|
||||
Q_PROPERTY(QString comment READ comment WRITE setComment)
|
||||
Q_PROPERTY(QString cron READ cron WRITE setCron)
|
||||
Q_PROPERTY(QString fileName READ fileName)
|
||||
Q_PROPERTY(QString filePath READ filePath)
|
||||
Q_PROPERTY(int interval READ interval WRITE setInterval)
|
||||
Q_PROPERTY(QString name READ name WRITE setName)
|
||||
Q_PROPERTY(int number READ number WRITE setNumber)
|
||||
@ -45,12 +46,13 @@ public:
|
||||
virtual AbstractExtItem *copy(const QString &_fileName, int _number) = 0;
|
||||
virtual void copyDefaults(AbstractExtItem *_other) const;
|
||||
virtual void startTimer();
|
||||
[[nodiscard]] QString writtableConfig() const;
|
||||
[[nodiscard]] QString writableConfig() const;
|
||||
// get methods
|
||||
[[nodiscard]] int apiVersion() const;
|
||||
[[nodiscard]] QString comment() const;
|
||||
[[nodiscard]] QString cron() const;
|
||||
[[nodiscard]] QString fileName() const;
|
||||
[[nodiscard]] QString filePath() const;
|
||||
[[nodiscard]] int interval() const;
|
||||
[[nodiscard]] bool isActive() const;
|
||||
[[nodiscard]] QString name() const;
|
||||
@ -81,12 +83,9 @@ public slots:
|
||||
[[nodiscard]] virtual bool tryDelete() const;
|
||||
virtual void writeConfiguration() const;
|
||||
|
||||
private slots:
|
||||
void newConnectionReceived();
|
||||
|
||||
private:
|
||||
QCronScheduler *m_scheduler = nullptr;
|
||||
QString m_fileName = "/dev/null";
|
||||
QString m_filePath = "";
|
||||
int m_times = 0;
|
||||
// FIXME find a better way to do it
|
||||
virtual void translate(void *_ui) = 0;
|
||||
|
@ -35,8 +35,7 @@ AbstractExtItemAggregator::AbstractExtItemAggregator(QObject *_parent, QString _
|
||||
// create directory at $HOME
|
||||
auto localDir = QString("%1/awesomewidgets/%2")
|
||||
.arg(QStandardPaths::writableLocation(QStandardPaths::GenericDataLocation), type());
|
||||
QDir localDirectory;
|
||||
if (localDirectory.mkpath(localDir))
|
||||
if (QDir().mkpath(localDir))
|
||||
qCInfo(LOG_LIB) << "Created directory" << localDir;
|
||||
}
|
||||
|
||||
@ -102,18 +101,13 @@ int AbstractExtItemAggregator::exec()
|
||||
auto createButton = ui->buttonBox->addButton(i18n("Create"), QDialogButtonBox::ActionRole);
|
||||
auto deleteButton = ui->buttonBox->addButton(i18n("Remove"), QDialogButtonBox::ActionRole);
|
||||
|
||||
connect(ui->buttonBox, &QDialogButtonBox::clicked, [&](QAbstractButton *_button) {
|
||||
if (dynamic_cast<QPushButton *>(_button) == copyButton)
|
||||
copyItem(ui->listWidget);
|
||||
else if (dynamic_cast<QPushButton *>(_button) == createButton)
|
||||
doCreateItem(ui->listWidget);
|
||||
else if (dynamic_cast<QPushButton *>(_button) == deleteButton)
|
||||
deleteItem(ui->listWidget);
|
||||
else if (ui->buttonBox->buttonRole(_button) == QDialogButtonBox::AcceptRole)
|
||||
editItem(ui->listWidget);
|
||||
});
|
||||
connect(copyButton, &QPushButton::clicked, [this, ui]() { copyItem(ui->listWidget); });
|
||||
connect(createButton, &QPushButton::clicked, [this, ui]() { doCreateItem(ui->listWidget); });
|
||||
connect(deleteButton, &QPushButton::clicked, [this, ui]() { deleteItem(ui->listWidget); });
|
||||
connect(ui->buttonBox, &QDialogButtonBox::accepted, [this, ui]() { editItem(ui->listWidget); });
|
||||
|
||||
connect(ui->buttonBox, &QDialogButtonBox::rejected, [dialog]() { dialog->reject(); });
|
||||
connect(ui->listWidget, &QListWidget::itemActivated, [&](QListWidgetItem *) { editItem(ui->listWidget); });
|
||||
connect(ui->listWidget, &QListWidget::itemActivated, [this, ui](QListWidgetItem *) { editItem(ui->listWidget); });
|
||||
|
||||
repaintList(ui->listWidget);
|
||||
auto ret = dialog->exec();
|
||||
@ -145,8 +139,8 @@ AbstractExtItem *AbstractExtItemAggregator::itemFromWidget(QListWidget *_widget)
|
||||
return nullptr;
|
||||
|
||||
AbstractExtItem *found = nullptr;
|
||||
for (auto &item : items()) {
|
||||
auto fileName = QFileInfo(item->fileName()).fileName();
|
||||
for (auto item : items()) {
|
||||
auto fileName = item->fileName();
|
||||
if (fileName != widgetItem->text())
|
||||
continue;
|
||||
found = item;
|
||||
@ -162,8 +156,8 @@ AbstractExtItem *AbstractExtItemAggregator::itemFromWidget(QListWidget *_widget)
|
||||
void AbstractExtItemAggregator::repaintList(QListWidget *_widget) const
|
||||
{
|
||||
_widget->clear();
|
||||
for (auto &_item : items()) {
|
||||
QString fileName = QFileInfo(_item->fileName()).fileName();
|
||||
for (auto _item : items()) {
|
||||
QString fileName = _item->fileName();
|
||||
auto item = new QListWidgetItem(fileName, _widget);
|
||||
QStringList tooltip;
|
||||
tooltip.append(i18n("Name: %1", _item->name()));
|
||||
@ -178,9 +172,10 @@ void AbstractExtItemAggregator::repaintList(QListWidget *_widget) const
|
||||
int AbstractExtItemAggregator::uniqNumber() const
|
||||
{
|
||||
QList<int> tagList;
|
||||
for (auto &item : items())
|
||||
for (auto item : items())
|
||||
tagList.append(item->number());
|
||||
int number = 0;
|
||||
|
||||
auto number = 0;
|
||||
while (tagList.contains(number))
|
||||
number++;
|
||||
|
||||
@ -196,10 +191,8 @@ QVariant AbstractExtItemAggregator::configArgs() const
|
||||
|
||||
QStringList AbstractExtItemAggregator::directories() const
|
||||
{
|
||||
auto dirs = QStandardPaths::locateAll(QStandardPaths::GenericDataLocation, QString("awesomewidgets/%1").arg(type()),
|
||||
return QStandardPaths::locateAll(QStandardPaths::GenericDataLocation, QString("awesomewidgets/%1").arg(type()),
|
||||
QStandardPaths::LocateDirectory);
|
||||
|
||||
return dirs;
|
||||
}
|
||||
|
||||
|
||||
|
@ -23,7 +23,6 @@
|
||||
#include "awdebug.h"
|
||||
|
||||
|
||||
class QAbstractButton;
|
||||
class QListWidget;
|
||||
class QListWidgetItem;
|
||||
|
||||
@ -59,7 +58,7 @@ public:
|
||||
void deleteItem(QListWidget *_widget);
|
||||
void editItem(QListWidget *_widget);
|
||||
[[nodiscard]] int exec();
|
||||
QString getName();
|
||||
[[nodiscard]] static QString getName();
|
||||
virtual void initItems() = 0;
|
||||
[[nodiscard]] AbstractExtItem *itemFromWidget(QListWidget *_widget) const;
|
||||
void repaintList(QListWidget *_widget) const;
|
||||
|
@ -113,7 +113,7 @@ void AWAbstractFormatter::readConfiguration()
|
||||
{
|
||||
AbstractExtItem::readConfiguration();
|
||||
|
||||
QSettings settings(fileName(), QSettings::IniFormat);
|
||||
QSettings settings(filePath(), QSettings::IniFormat);
|
||||
|
||||
settings.beginGroup("Desktop Entry");
|
||||
setStrType(settings.value("X-AW-Type", strType()).toString());
|
||||
@ -125,7 +125,7 @@ void AWAbstractFormatter::writeConfiguration() const
|
||||
{
|
||||
AbstractExtItem::writeConfiguration();
|
||||
|
||||
QSettings settings(writtableConfig(), QSettings::IniFormat);
|
||||
QSettings settings(writableConfig(), QSettings::IniFormat);
|
||||
qCInfo(LOG_LIB) << "Configuration file" << settings.fileName();
|
||||
|
||||
settings.beginGroup("Desktop Entry");
|
||||
|
@ -50,6 +50,7 @@ AWDateTimeFormatter *AWDateTimeFormatter::copy(const QString &_fileName, const i
|
||||
|
||||
auto item = new AWDateTimeFormatter(parent(), _fileName);
|
||||
AWAbstractFormatter::copyDefaults(item);
|
||||
|
||||
item->setFormat(format());
|
||||
item->setTranslateString(translateString());
|
||||
item->setNumber(_number);
|
||||
@ -91,7 +92,7 @@ void AWDateTimeFormatter::readConfiguration()
|
||||
{
|
||||
AWAbstractFormatter::readConfiguration();
|
||||
|
||||
QSettings settings(fileName(), QSettings::IniFormat);
|
||||
QSettings settings(filePath(), QSettings::IniFormat);
|
||||
|
||||
settings.beginGroup("Desktop Entry");
|
||||
setFormat(settings.value("X-AW-Format", format()).toString());
|
||||
@ -140,7 +141,7 @@ void AWDateTimeFormatter::writeConfiguration() const
|
||||
{
|
||||
AWAbstractFormatter::writeConfiguration();
|
||||
|
||||
QSettings settings(writtableConfig(), QSettings::IniFormat);
|
||||
QSettings settings(writableConfig(), QSettings::IniFormat);
|
||||
qCInfo(LOG_LIB) << "Configuration file" << settings.fileName();
|
||||
|
||||
settings.beginGroup("Desktop Entry");
|
||||
|
@ -54,6 +54,7 @@ AWFloatFormatter *AWFloatFormatter::copy(const QString &_fileName, const int _nu
|
||||
|
||||
auto item = new AWFloatFormatter(parent(), _fileName);
|
||||
AWAbstractFormatter::copyDefaults(item);
|
||||
|
||||
item->setCount(count());
|
||||
item->setFormat(format());
|
||||
item->setFillChar(fillChar());
|
||||
@ -174,7 +175,7 @@ void AWFloatFormatter::readConfiguration()
|
||||
{
|
||||
AWAbstractFormatter::readConfiguration();
|
||||
|
||||
QSettings settings(fileName(), QSettings::IniFormat);
|
||||
QSettings settings(filePath(), QSettings::IniFormat);
|
||||
|
||||
settings.beginGroup("Desktop Entry");
|
||||
setCount(settings.value("X-AW-Width", count()).toInt());
|
||||
@ -238,7 +239,7 @@ void AWFloatFormatter::writeConfiguration() const
|
||||
{
|
||||
AWAbstractFormatter::writeConfiguration();
|
||||
|
||||
QSettings settings(writtableConfig(), QSettings::IniFormat);
|
||||
QSettings settings(writableConfig(), QSettings::IniFormat);
|
||||
qCInfo(LOG_LIB) << "Configuration file" << settings.fileName();
|
||||
|
||||
settings.beginGroup("Desktop Entry");
|
||||
|
@ -41,10 +41,10 @@ QString AWJsonFormatter::convert(const QVariant &_value) const
|
||||
qCDebug(LOG_LIB) << "Convert value" << _value;
|
||||
|
||||
// check if _value is string and parse first if required
|
||||
QJsonDocument json = _value.userType() == QMetaType::QString ? QJsonDocument::fromJson(_value.toString().toUtf8())
|
||||
auto json = _value.userType() == QMetaType::QString ? QJsonDocument::fromJson(_value.toString().toUtf8())
|
||||
: QJsonDocument::fromVariant(_value);
|
||||
QVariant converted = json.toVariant();
|
||||
for (auto &element : m_splittedPath)
|
||||
auto converted = json.toVariant();
|
||||
for (auto &element : m_path)
|
||||
converted = getFromJson(converted, element);
|
||||
|
||||
return converted.toString();
|
||||
@ -57,6 +57,7 @@ AWJsonFormatter *AWJsonFormatter::copy(const QString &_fileName, const int _numb
|
||||
|
||||
auto item = new AWJsonFormatter(parent(), _fileName);
|
||||
AWAbstractFormatter::copyDefaults(item);
|
||||
|
||||
item->setNumber(_number);
|
||||
item->setPath(path());
|
||||
|
||||
@ -66,7 +67,8 @@ AWJsonFormatter *AWJsonFormatter::copy(const QString &_fileName, const int _numb
|
||||
|
||||
QString AWJsonFormatter::path() const
|
||||
{
|
||||
return m_path;
|
||||
return std::accumulate(m_path.cbegin(), m_path.cend(), QString(""),
|
||||
[](auto acc, auto &value) { return QString("%1.%2").arg(acc, value.toString()); });
|
||||
}
|
||||
|
||||
|
||||
@ -74,8 +76,14 @@ void AWJsonFormatter::setPath(const QString &_path)
|
||||
{
|
||||
qCDebug(LOG_LIB) << "Path" << _path;
|
||||
|
||||
m_path = _path;
|
||||
initPath();
|
||||
m_path.clear();
|
||||
auto elements = _path.split('.', Qt::SkipEmptyParts);
|
||||
|
||||
for (auto &element : elements) {
|
||||
bool ok;
|
||||
auto number = element.toInt(&ok);
|
||||
m_path.append(ok ? QVariant(number) : QVariant(element));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -83,7 +91,7 @@ void AWJsonFormatter::readConfiguration()
|
||||
{
|
||||
AWAbstractFormatter::readConfiguration();
|
||||
|
||||
QSettings settings(fileName(), QSettings::IniFormat);
|
||||
QSettings settings(filePath(), QSettings::IniFormat);
|
||||
|
||||
settings.beginGroup("Desktop Entry");
|
||||
setPath(settings.value("X-AW-Path", path()).toString());
|
||||
@ -129,7 +137,7 @@ void AWJsonFormatter::writeConfiguration() const
|
||||
{
|
||||
AWAbstractFormatter::writeConfiguration();
|
||||
|
||||
QSettings settings(writtableConfig(), QSettings::IniFormat);
|
||||
QSettings settings(writableConfig(), QSettings::IniFormat);
|
||||
qCInfo(LOG_LIB) << "Configuration file" << settings.fileName();
|
||||
|
||||
settings.beginGroup("Desktop Entry");
|
||||
@ -171,19 +179,6 @@ QVariant AWJsonFormatter::getFromMap(const QVariant &_value, const QString &_key
|
||||
}
|
||||
|
||||
|
||||
void AWJsonFormatter::initPath()
|
||||
{
|
||||
m_splittedPath.clear();
|
||||
QStringList splittedByDot = m_path.split('.', Qt::SkipEmptyParts);
|
||||
|
||||
for (auto &element : splittedByDot) {
|
||||
bool ok;
|
||||
int number = element.toInt(&ok);
|
||||
m_splittedPath.append(ok ? QVariant(number) : QVariant(element));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void AWJsonFormatter::translate(void *_ui)
|
||||
{
|
||||
auto ui = reinterpret_cast<Ui::AWJsonFormatter *>(_ui);
|
||||
|
@ -42,9 +42,7 @@ private:
|
||||
static QVariant getFromJson(const QVariant &_value, const QVariant &_element);
|
||||
static QVariant getFromList(const QVariant &_value, int _index);
|
||||
static QVariant getFromMap(const QVariant &_value, const QString &_key);
|
||||
void initPath();
|
||||
void translate(void *_ui) override;
|
||||
// properties
|
||||
QString m_path;
|
||||
QVariantList m_splittedPath;
|
||||
QVariantList m_path;
|
||||
};
|
||||
|
@ -53,6 +53,7 @@ AWListFormatter *AWListFormatter::copy(const QString &_fileName, const int _numb
|
||||
|
||||
auto item = new AWListFormatter(parent(), _fileName);
|
||||
AWAbstractFormatter::copyDefaults(item);
|
||||
|
||||
item->setFilter(filter());
|
||||
item->setSeparator(separator());
|
||||
item->setSorted(isSorted());
|
||||
@ -91,7 +92,7 @@ void AWListFormatter::setFilter(const QString &_filter)
|
||||
|
||||
void AWListFormatter::setSeparator(const QString &_separator)
|
||||
{
|
||||
qCDebug(LOG_LIB) << "Separtor" << _separator;
|
||||
qCDebug(LOG_LIB) << "Separator" << _separator;
|
||||
|
||||
m_separator = _separator;
|
||||
}
|
||||
@ -109,7 +110,7 @@ void AWListFormatter::readConfiguration()
|
||||
{
|
||||
AWAbstractFormatter::readConfiguration();
|
||||
|
||||
QSettings settings(fileName(), QSettings::IniFormat);
|
||||
QSettings settings(filePath(), QSettings::IniFormat);
|
||||
|
||||
settings.beginGroup("Desktop Entry");
|
||||
setFilter(settings.value("X-AW-Filter", filter()).toString());
|
||||
@ -161,7 +162,7 @@ void AWListFormatter::writeConfiguration() const
|
||||
{
|
||||
AWAbstractFormatter::writeConfiguration();
|
||||
|
||||
QSettings settings(writtableConfig(), QSettings::IniFormat);
|
||||
QSettings settings(writableConfig(), QSettings::IniFormat);
|
||||
qCInfo(LOG_LIB) << "Configuration file" << settings.fileName();
|
||||
|
||||
settings.beginGroup("Desktop Entry");
|
||||
|
@ -47,6 +47,7 @@ AWNoFormatter *AWNoFormatter::copy(const QString &_fileName, const int _number)
|
||||
|
||||
auto item = new AWNoFormatter(parent(), _fileName);
|
||||
AWAbstractFormatter::copyDefaults(item);
|
||||
|
||||
item->setNumber(_number);
|
||||
|
||||
return item;
|
||||
|
@ -34,5 +34,4 @@ public slots:
|
||||
|
||||
private:
|
||||
void translate(void *_ui) override;
|
||||
// properties
|
||||
};
|
||||
|
@ -61,6 +61,7 @@ AWScriptFormatter *AWScriptFormatter::copy(const QString &_fileName, const int _
|
||||
|
||||
auto item = new AWScriptFormatter(parent(), _fileName);
|
||||
AWAbstractFormatter::copyDefaults(item);
|
||||
|
||||
item->setAppendCode(appendCode());
|
||||
item->setCode(code());
|
||||
item->setHasReturn(hasReturn());
|
||||
@ -125,7 +126,7 @@ void AWScriptFormatter::readConfiguration()
|
||||
{
|
||||
AWAbstractFormatter::readConfiguration();
|
||||
|
||||
QSettings settings(fileName(), QSettings::IniFormat);
|
||||
QSettings settings(filePath(), QSettings::IniFormat);
|
||||
|
||||
settings.beginGroup("Desktop Entry");
|
||||
setAppendCode(settings.value("X-AW-AppendCode", appendCode()).toBool());
|
||||
@ -178,7 +179,7 @@ void AWScriptFormatter::writeConfiguration() const
|
||||
{
|
||||
AWAbstractFormatter::writeConfiguration();
|
||||
|
||||
QSettings settings(writtableConfig(), QSettings::IniFormat);
|
||||
QSettings settings(writableConfig(), QSettings::IniFormat);
|
||||
qCInfo(LOG_LIB) << "Configuration file" << settings.fileName();
|
||||
|
||||
settings.beginGroup("Desktop Entry");
|
||||
|
@ -53,6 +53,7 @@ AWStringFormatter *AWStringFormatter::copy(const QString &_fileName, const int _
|
||||
|
||||
auto item = new AWStringFormatter(parent(), _fileName);
|
||||
AWAbstractFormatter::copyDefaults(item);
|
||||
|
||||
item->setCount(count());
|
||||
item->setFillChar(fillChar());
|
||||
item->setForceWidth(forceWidth());
|
||||
@ -108,7 +109,7 @@ void AWStringFormatter::readConfiguration()
|
||||
{
|
||||
AWAbstractFormatter::readConfiguration();
|
||||
|
||||
QSettings settings(fileName(), QSettings::IniFormat);
|
||||
QSettings settings(filePath(), QSettings::IniFormat);
|
||||
|
||||
settings.beginGroup("Desktop Entry");
|
||||
setCount(settings.value("X-AW-Width", count()).toInt());
|
||||
@ -160,7 +161,7 @@ void AWStringFormatter::writeConfiguration() const
|
||||
{
|
||||
AWAbstractFormatter::writeConfiguration();
|
||||
|
||||
QSettings settings(writtableConfig(), QSettings::IniFormat);
|
||||
QSettings settings(writableConfig(), QSettings::IniFormat);
|
||||
qCInfo(LOG_LIB) << "Configuration file" << settings.fileName();
|
||||
|
||||
settings.beginGroup("Desktop Entry");
|
||||
|
@ -127,8 +127,7 @@ private:
|
||||
{
|
||||
QList<AbstractExtItem *> items;
|
||||
|
||||
auto dirs = directories();
|
||||
for (auto &dir : dirs) {
|
||||
for (auto &dir : directories()) {
|
||||
auto files = QDir(dir).entryList(QDir::Files, QDir::Name);
|
||||
for (auto &file : files) {
|
||||
// check filename
|
||||
@ -138,7 +137,7 @@ private:
|
||||
auto filePath = QString("%1/%2").arg(dir, file);
|
||||
// check if already exists
|
||||
if (std::any_of(items.cbegin(), items.cend(),
|
||||
[&filePath](AbstractExtItem *item) { return (item->fileName() == filePath); }))
|
||||
[&file](AbstractExtItem *item) { return item->fileName() == file; }))
|
||||
continue;
|
||||
items.append(new T(this, filePath));
|
||||
}
|
||||
|
@ -62,6 +62,7 @@ ExtNetworkRequest *ExtNetworkRequest::copy(const QString &_fileName, const int _
|
||||
|
||||
auto item = new ExtNetworkRequest(parent(), _fileName);
|
||||
copyDefaults(item);
|
||||
|
||||
item->setNumber(_number);
|
||||
item->setStringUrl(stringUrl());
|
||||
|
||||
@ -94,7 +95,7 @@ void ExtNetworkRequest::readConfiguration()
|
||||
{
|
||||
AbstractExtItem::readConfiguration();
|
||||
|
||||
QSettings settings(fileName(), QSettings::IniFormat);
|
||||
QSettings settings(filePath(), QSettings::IniFormat);
|
||||
|
||||
settings.beginGroup("Desktop Entry");
|
||||
setStringUrl(settings.value("X-AW-Url", stringUrl()).toString());
|
||||
@ -158,7 +159,7 @@ void ExtNetworkRequest::writeConfiguration() const
|
||||
{
|
||||
AbstractExtItem::writeConfiguration();
|
||||
|
||||
QSettings settings(writtableConfig(), QSettings::IniFormat);
|
||||
QSettings settings(writableConfig(), QSettings::IniFormat);
|
||||
qCInfo(LOG_LIB) << "Configuration file" << settings.fileName();
|
||||
|
||||
settings.beginGroup("Desktop Entry");
|
||||
|
@ -100,7 +100,7 @@ void ExtQuotes::readConfiguration()
|
||||
{
|
||||
AbstractExtItem::readConfiguration();
|
||||
|
||||
QSettings settings(fileName(), QSettings::IniFormat);
|
||||
QSettings settings(filePath(), QSettings::IniFormat);
|
||||
|
||||
settings.beginGroup("Desktop Entry");
|
||||
setTicker(settings.value("X-AW-Ticker", ticker()).toString());
|
||||
@ -164,7 +164,7 @@ void ExtQuotes::writeConfiguration() const
|
||||
{
|
||||
AbstractExtItem::writeConfiguration();
|
||||
|
||||
QSettings settings(writtableConfig(), QSettings::IniFormat);
|
||||
QSettings settings(writableConfig(), QSettings::IniFormat);
|
||||
qCInfo(LOG_LIB) << "Configuration file" << settings.fileName();
|
||||
|
||||
settings.beginGroup("Desktop Entry");
|
||||
|
@ -205,7 +205,7 @@ void ExtScript::readConfiguration()
|
||||
{
|
||||
AbstractExtItem::readConfiguration();
|
||||
|
||||
QSettings settings(fileName(), QSettings::IniFormat);
|
||||
QSettings settings(filePath(), QSettings::IniFormat);
|
||||
|
||||
settings.beginGroup("Desktop Entry");
|
||||
setExecutable(settings.value("Exec", executable()).toString());
|
||||
@ -305,7 +305,7 @@ void ExtScript::writeConfiguration() const
|
||||
{
|
||||
AbstractExtItem::writeConfiguration();
|
||||
|
||||
QSettings settings(writtableConfig(), QSettings::IniFormat);
|
||||
QSettings settings(writableConfig(), QSettings::IniFormat);
|
||||
qCInfo(LOG_LIB) << "Configuration file" << settings.fileName();
|
||||
|
||||
settings.beginGroup("Desktop Entry");
|
||||
|
@ -122,7 +122,7 @@ void ExtUpgrade::readConfiguration()
|
||||
{
|
||||
AbstractExtItem::readConfiguration();
|
||||
|
||||
QSettings settings(fileName(), QSettings::IniFormat);
|
||||
QSettings settings(filePath(), QSettings::IniFormat);
|
||||
|
||||
settings.beginGroup("Desktop Entry");
|
||||
setExecutable(settings.value("Exec", executable()).toString());
|
||||
@ -193,7 +193,7 @@ void ExtUpgrade::writeConfiguration() const
|
||||
{
|
||||
AbstractExtItem::writeConfiguration();
|
||||
|
||||
QSettings settings(writtableConfig(), QSettings::IniFormat);
|
||||
QSettings settings(writableConfig(), QSettings::IniFormat);
|
||||
qCInfo(LOG_LIB) << "Configuration file" << settings.fileName();
|
||||
|
||||
settings.beginGroup("Desktop Entry");
|
||||
|
@ -212,7 +212,7 @@ void ExtWeather::readConfiguration()
|
||||
{
|
||||
AbstractExtItem::readConfiguration();
|
||||
|
||||
QSettings settings(fileName(), QSettings::IniFormat);
|
||||
QSettings settings(filePath(), QSettings::IniFormat);
|
||||
|
||||
settings.beginGroup("Desktop Entry");
|
||||
setCity(settings.value("X-AW-City", city()).toString());
|
||||
@ -313,7 +313,7 @@ void ExtWeather::writeConfiguration() const
|
||||
{
|
||||
AbstractExtItem::writeConfiguration();
|
||||
|
||||
QSettings settings(writtableConfig(), QSettings::IniFormat);
|
||||
QSettings settings(writableConfig(), QSettings::IniFormat);
|
||||
qCInfo(LOG_LIB) << "Configuration file" << settings.fileName();
|
||||
|
||||
settings.beginGroup("Desktop Entry");
|
||||
|
@ -393,7 +393,7 @@ void GraphicalItem::readConfiguration()
|
||||
{
|
||||
AbstractExtItem::readConfiguration();
|
||||
|
||||
QSettings settings(fileName(), QSettings::IniFormat);
|
||||
QSettings settings(filePath(), QSettings::IniFormat);
|
||||
|
||||
settings.beginGroup("Desktop Entry");
|
||||
setCount(settings.value("X-AW-Count", count()).toInt());
|
||||
@ -502,7 +502,7 @@ void GraphicalItem::writeConfiguration() const
|
||||
{
|
||||
AbstractExtItem::writeConfiguration();
|
||||
|
||||
QSettings settings(writtableConfig(), QSettings::IniFormat);
|
||||
QSettings settings(writableConfig(), QSettings::IniFormat);
|
||||
qCInfo(LOG_LIB) << "Configuration file" << settings.fileName();
|
||||
|
||||
settings.beginGroup("Desktop Entry");
|
||||
|
@ -55,18 +55,18 @@ public:
|
||||
return item ? item->run() : QVariantHash();
|
||||
}
|
||||
|
||||
static KSysGuard::SensorInfo *makeSensorInfo(const QString &_name, const QVariant::Type type,
|
||||
const KSysGuard::Unit unit = KSysGuard::UnitNone, const double min = 0,
|
||||
const double max = 0)
|
||||
static KSysGuard::SensorInfo *makeSensorInfo(const QString &_name, const QVariant::Type _type,
|
||||
const KSysGuard::Unit _unit = KSysGuard::UnitNone,
|
||||
const double _min = 0, const double _max = 0)
|
||||
{
|
||||
auto info = new KSysGuard::SensorInfo();
|
||||
info->name = _name;
|
||||
info->variantType = type;
|
||||
info->variantType = _type;
|
||||
|
||||
info->unit = unit;
|
||||
info->unit = _unit;
|
||||
|
||||
info->min = min;
|
||||
info->max = max;
|
||||
info->min = _min;
|
||||
info->max = _max;
|
||||
|
||||
return info;
|
||||
}
|
||||
|
@ -27,14 +27,14 @@ void TestAbstractExtItem::initTestCase()
|
||||
{
|
||||
AWTestLibrary::init();
|
||||
auto names = AWTestLibrary::randomFilenames();
|
||||
fileName = names.first;
|
||||
writeFileName = names.second;
|
||||
filePath = names.first;
|
||||
writeFilePath = names.second;
|
||||
|
||||
name = AWTestLibrary::randomString();
|
||||
comment = AWTestLibrary::randomString();
|
||||
socket = AWTestLibrary::randomString();
|
||||
|
||||
extItem = new ExtUpgrade(nullptr, fileName);
|
||||
extItem = new ExtUpgrade(nullptr, filePath);
|
||||
extItem->setActive(false);
|
||||
extItem->setApiVersion(1);
|
||||
extItem->setComment(comment);
|
||||
@ -47,7 +47,7 @@ void TestAbstractExtItem::initTestCase()
|
||||
|
||||
void TestAbstractExtItem::cleanupTestCase()
|
||||
{
|
||||
QFile::remove(fileName);
|
||||
QFile::remove(filePath);
|
||||
delete extItem;
|
||||
}
|
||||
|
||||
@ -57,16 +57,16 @@ void TestAbstractExtItem::test_values()
|
||||
QCOMPARE(extItem->isActive(), false);
|
||||
QCOMPARE(extItem->apiVersion(), 1);
|
||||
QCOMPARE(extItem->comment(), comment);
|
||||
QCOMPARE(extItem->fileName(), fileName);
|
||||
QCOMPARE(extItem->filePath(), filePath);
|
||||
QCOMPARE(extItem->name(), name);
|
||||
QVERIFY((extItem->number() > 0) && (extItem->number() < 1000));
|
||||
QCOMPARE(extItem->socket(), socket);
|
||||
}
|
||||
|
||||
|
||||
void TestAbstractExtItem::test_writtableFile()
|
||||
void TestAbstractExtItem::test_writableFile()
|
||||
{
|
||||
QCOMPARE(extItem->writtableConfig(), writeFileName);
|
||||
QCOMPARE(extItem->writableConfig(), writeFilePath);
|
||||
}
|
||||
|
||||
|
||||
@ -74,10 +74,10 @@ void TestAbstractExtItem::test_configuration()
|
||||
{
|
||||
extItem->writeConfiguration();
|
||||
|
||||
auto newExtItem = new ExtUpgrade(nullptr, writeFileName);
|
||||
auto newExtItem = new ExtUpgrade(nullptr, writeFilePath);
|
||||
QCOMPARE(newExtItem->isActive(), extItem->isActive());
|
||||
QCOMPARE(newExtItem->comment(), extItem->comment());
|
||||
QCOMPARE(newExtItem->fileName(), writeFileName);
|
||||
QCOMPARE(newExtItem->filePath(), writeFilePath);
|
||||
QCOMPARE(newExtItem->name(), extItem->name());
|
||||
QCOMPARE(newExtItem->number(), extItem->number());
|
||||
QCOMPARE(newExtItem->socket(), extItem->socket());
|
||||
@ -97,10 +97,10 @@ void TestAbstractExtItem::test_bumpApi()
|
||||
|
||||
void TestAbstractExtItem::test_delete()
|
||||
{
|
||||
auto newExtItem = new ExtUpgrade(nullptr, writeFileName);
|
||||
auto newExtItem = new ExtUpgrade(nullptr, writeFilePath);
|
||||
|
||||
QVERIFY(newExtItem->tryDelete());
|
||||
QVERIFY(!QFile::exists(writeFileName));
|
||||
QVERIFY(!QFile::exists(writeFilePath));
|
||||
|
||||
delete newExtItem;
|
||||
}
|
||||
|
@ -32,7 +32,7 @@ private slots:
|
||||
void cleanupTestCase();
|
||||
// test
|
||||
void test_values();
|
||||
void test_writtableFile();
|
||||
void test_writableFile();
|
||||
void test_configuration();
|
||||
void test_bumpApi();
|
||||
void test_delete();
|
||||
@ -44,6 +44,6 @@ private:
|
||||
QString cron = "* * * * *";
|
||||
QString name;
|
||||
QString socket;
|
||||
QString fileName;
|
||||
QString writeFileName;
|
||||
QString filePath;
|
||||
QString writeFilePath;
|
||||
};
|
||||
|
Loading…
x
Reference in New Issue
Block a user