bit of refactoring!

This commit is contained in:
Martin Rotter 2022-10-26 13:04:05 +02:00
parent 9d2d7dc022
commit 8c410a831f
5 changed files with 47 additions and 40 deletions

View file

@ -24,7 +24,7 @@
<url type="donation">https://github.com/sponsors/martinrotter</url> <url type="donation">https://github.com/sponsors/martinrotter</url>
<content_rating type="oars-1.1" /> <content_rating type="oars-1.1" />
<releases> <releases>
<release version="4.2.5" date="2022-10-24"/> <release version="4.2.5" date="2022-10-26"/>
</releases> </releases>
<content_rating type="oars-1.0"> <content_rating type="oars-1.0">
<content_attribute id="violence-cartoon">none</content_attribute> <content_attribute id="violence-cartoon">none</content_attribute>

View file

@ -542,7 +542,7 @@ bool MessagesModel::setMessageRead(int row_index, RootItem::ReadStatus read) {
if (!working_change) { if (!working_change) {
// If rewriting in the model failed, then cancel all actions. // If rewriting in the model failed, then cancel all actions.
qDebug("Setting of new data to the model failed for message read change."); qDebugNN << "Setting of new data to the model failed for message read change.";
return false; return false;
} }

View file

@ -337,8 +337,8 @@
#define APP_LANG_PATH QSL(":/localization") #define APP_LANG_PATH QSL(":/localization")
#if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS) #if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS)
#define APP_DESKTOP_SOURCE_ENTRY_FILE "io.github.martinrotter.rssguard.autostart" #define APP_DESKTOP_SOURCE_ENTRY_FILE APP_REVERSE_NAME ".autostart"
#define APP_DESKTOP_ENTRY_FILE "io.github.martinrotter.rssguard.desktop" #define APP_DESKTOP_ENTRY_FILE APP_REVERSE_NAME ".desktop"
#define APP_DESKTOP_ENTRY_PATH QSL(":/desktop") #define APP_DESKTOP_ENTRY_PATH QSL(":/desktop")
#endif #endif

View file

@ -10,11 +10,12 @@
#include "QFileDialog" #include "QFileDialog"
FormRestoreDatabaseSettings::FormRestoreDatabaseSettings(QWidget& parent) : QDialog(&parent), FormRestoreDatabaseSettings::FormRestoreDatabaseSettings(QWidget& parent) : QDialog(&parent), m_shouldRestart(false) {
m_shouldRestart(false) {
m_ui.setupUi(this); m_ui.setupUi(this);
m_btnRestart = m_ui.m_buttonBox->addButton(tr("Restart"), QDialogButtonBox::ButtonRole::ActionRole); m_btnRestart = m_ui.m_buttonBox->addButton(tr("Restart"), QDialogButtonBox::ButtonRole::ActionRole);
m_ui.m_lblResult->setStatus(WidgetWithStatus::StatusType::Warning, tr("No operation executed yet."), tr("No operation executed yet.")); m_ui.m_lblResult->setStatus(WidgetWithStatus::StatusType::Warning,
tr("No operation executed yet."),
tr("No operation executed yet."));
GuiUtilities::applyDialogProperties(*this, qApp->icons()->fromTheme(QSL("document-import"))); GuiUtilities::applyDialogProperties(*this, qApp->icons()->fromTheme(QSL("document-import")));
@ -27,13 +28,15 @@ FormRestoreDatabaseSettings::FormRestoreDatabaseSettings(QWidget& parent) : QDia
}); });
connect(m_ui.m_groupDatabase, &QGroupBox::toggled, this, &FormRestoreDatabaseSettings::checkOkButton); connect(m_ui.m_groupDatabase, &QGroupBox::toggled, this, &FormRestoreDatabaseSettings::checkOkButton);
connect(m_ui.m_groupSettings, &QGroupBox::toggled, this, &FormRestoreDatabaseSettings::checkOkButton); connect(m_ui.m_groupSettings, &QGroupBox::toggled, this, &FormRestoreDatabaseSettings::checkOkButton);
connect(m_ui.m_buttonBox->button(QDialogButtonBox::StandardButton::Ok), &QPushButton::clicked, connect(m_ui.m_buttonBox->button(QDialogButtonBox::StandardButton::Ok),
this, &FormRestoreDatabaseSettings::performRestoration); &QPushButton::clicked,
this,
&FormRestoreDatabaseSettings::performRestoration);
selectFolder(qApp->documentsFolder()); selectFolder(qApp->documentsFolder());
} }
FormRestoreDatabaseSettings::~FormRestoreDatabaseSettings() { FormRestoreDatabaseSettings::~FormRestoreDatabaseSettings() {
qDebug("Destroying FormRestoreDatabaseSettings instance."); qDebugNN << "Destroying FormRestoreDatabaseSettings instance.";
} }
void FormRestoreDatabaseSettings::performRestoration() { void FormRestoreDatabaseSettings::performRestoration() {
@ -42,27 +45,30 @@ void FormRestoreDatabaseSettings::performRestoration() {
try { try {
qApp->restoreDatabaseSettings(m_ui.m_groupDatabase->isChecked(), qApp->restoreDatabaseSettings(m_ui.m_groupDatabase->isChecked(),
m_ui.m_groupSettings->isChecked(), m_ui.m_groupSettings->isChecked(),
m_ui.m_listDatabase->currentRow() >= 0 ? m_ui.m_listDatabase->currentItem()->data( m_ui.m_listDatabase->currentRow() >= 0
Qt::UserRole).toString() : QString(), ? m_ui.m_listDatabase->currentItem()->data(Qt::UserRole).toString()
m_ui.m_listSettings->currentRow() >= 0 ? m_ui.m_listSettings->currentItem()->data( : QString(),
Qt::UserRole).toString() : QString()); m_ui.m_listSettings->currentRow() >= 0
? m_ui.m_listSettings->currentItem()->data(Qt::UserRole).toString()
: QString());
m_btnRestart->setEnabled(true); m_btnRestart->setEnabled(true);
m_ui.m_lblResult->setStatus(WidgetWithStatus::StatusType::Ok, tr("Restoration was initiated. Restart to proceed."), m_ui.m_lblResult->setStatus(WidgetWithStatus::StatusType::Ok,
tr("Restoration was initiated. Restart to proceed."),
tr("You need to restart application for restoration process to finish.")); tr("You need to restart application for restoration process to finish."));
} }
catch (const ApplicationException& ex) { catch (const ApplicationException& ex) {
m_ui.m_lblResult->setStatus(WidgetWithStatus::StatusType::Error, ex.message(), m_ui.m_lblResult->setStatus(WidgetWithStatus::StatusType::Error,
ex.message(),
tr("Database and/or settings were not copied to restoration directory successully.")); tr("Database and/or settings were not copied to restoration directory successully."));
} }
} }
void FormRestoreDatabaseSettings::checkOkButton() { void FormRestoreDatabaseSettings::checkOkButton() {
m_btnRestart->setEnabled(false); m_btnRestart->setEnabled(false);
m_ui.m_buttonBox->button(QDialogButtonBox::StandardButton::Ok)->setEnabled(!m_ui.m_lblSelectFolder->label()->text().isEmpty() && m_ui.m_buttonBox->button(QDialogButtonBox::StandardButton::Ok)
((m_ui.m_groupDatabase->isChecked() && ->setEnabled(!m_ui.m_lblSelectFolder->label()->text().isEmpty() &&
m_ui.m_listDatabase->currentRow() >= 0) || ((m_ui.m_groupDatabase->isChecked() && m_ui.m_listDatabase->currentRow() >= 0) ||
(m_ui.m_groupSettings->isChecked() && (m_ui.m_groupSettings->isChecked() && m_ui.m_listSettings->currentRow() >= 0)));
m_ui.m_listSettings->currentRow() >= 0)));
} }
void FormRestoreDatabaseSettings::selectFolderWithGui() { void FormRestoreDatabaseSettings::selectFolderWithGui() {
@ -71,11 +77,13 @@ void FormRestoreDatabaseSettings::selectFolderWithGui() {
void FormRestoreDatabaseSettings::selectFolder(QString folder) { void FormRestoreDatabaseSettings::selectFolder(QString folder) {
if (folder.isEmpty()) { if (folder.isEmpty()) {
folder = QFileDialog::getExistingDirectory(this, tr("Select source directory"), m_ui.m_lblSelectFolder->label()->text()); folder =
QFileDialog::getExistingDirectory(this, tr("Select source directory"), m_ui.m_lblSelectFolder->label()->text());
} }
if (!folder.isEmpty()) { if (!folder.isEmpty()) {
m_ui.m_lblSelectFolder->setStatus(WidgetWithStatus::StatusType::Ok, QDir::toNativeSeparators(folder), m_ui.m_lblSelectFolder->setStatus(WidgetWithStatus::StatusType::Ok,
QDir::toNativeSeparators(folder),
tr("Good source directory is specified.")); tr("Good source directory is specified."));
} }
else { else {
@ -83,20 +91,16 @@ void FormRestoreDatabaseSettings::selectFolder(QString folder) {
} }
const QDir selected_folder(folder); const QDir selected_folder(folder);
const QFileInfoList available_databases = selected_folder.entryInfoList(QStringList() << QSL("*") + BACKUP_SUFFIX_DATABASE, const QFileInfoList available_databases =
QDir::Filter::Files | selected_folder.entryInfoList(QStringList() << QSL("*") + BACKUP_SUFFIX_DATABASE,
QDir::Filter::NoDotAndDotDot | QDir::Filter::Files | QDir::Filter::NoDotAndDotDot | QDir::Filter::Readable |
QDir::Filter::Readable | QDir::Filter::CaseSensitive | QDir::Filter::NoSymLinks,
QDir::Filter::CaseSensitive | QDir::SortFlag::Name);
QDir::Filter::NoSymLinks, const QFileInfoList available_settings =
QDir::SortFlag::Name); selected_folder.entryInfoList(QStringList() << QSL("*") + BACKUP_SUFFIX_SETTINGS,
const QFileInfoList available_settings = selected_folder.entryInfoList(QStringList() << QSL("*") + BACKUP_SUFFIX_SETTINGS, QDir::Filter::Files | QDir::Filter::NoDotAndDotDot | QDir::Filter::Readable |
QDir::Filter::Files | QDir::Filter::CaseSensitive | QDir::Filter::NoSymLinks,
QDir::Filter::NoDotAndDotDot | QDir::SortFlag::Name);
QDir::Filter::Readable |
QDir::Filter::CaseSensitive |
QDir::Filter::NoSymLinks,
QDir::SortFlag::Name);
m_ui.m_listDatabase->clear(); m_ui.m_listDatabase->clear();
m_ui.m_listSettings->clear(); m_ui.m_listSettings->clear();

View file

@ -127,12 +127,15 @@ void FormUpdate::saveUpdateFile(const QByteArray& file_contents) {
QFile output_file(temp_directory + QDir::separator() + output_file_name); QFile output_file(temp_directory + QDir::separator() + output_file_name);
if (output_file.open(QIODevice::WriteOnly | QIODevice::Truncate)) { if (output_file.open(QIODevice::WriteOnly | QIODevice::Truncate)) {
qDebug("Storing update file to temporary location '%s'.", qDebugNN << "Storing update file to temporary location"
qPrintable(QDir::toNativeSeparators(output_file.fileName()))); << QUOTE_W_SPACE_DOT(QDir::toNativeSeparators(output_file.fileName()));
output_file.write(file_contents); output_file.write(file_contents);
output_file.flush(); output_file.flush();
output_file.close(); output_file.close();
qDebug("Update file contents was successfuly saved.");
qDebugNN << "Update file contents was successfuly saved.";
m_updateFilePath = output_file.fileName(); m_updateFilePath = output_file.fileName();
m_readyToInstall = true; m_readyToInstall = true;
} }