bit of refactoring!
This commit is contained in:
parent
9d2d7dc022
commit
8c410a831f
5 changed files with 47 additions and 40 deletions
|
@ -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>
|
||||||
|
|
|
@ -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;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -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
|
||||||
|
|
|
@ -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,19 +91,15 @@ 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::Filter::NoSymLinks,
|
|
||||||
QDir::SortFlag::Name);
|
QDir::SortFlag::Name);
|
||||||
const QFileInfoList available_settings = selected_folder.entryInfoList(QStringList() << QSL("*") + BACKUP_SUFFIX_SETTINGS,
|
const QFileInfoList available_settings =
|
||||||
QDir::Filter::Files |
|
selected_folder.entryInfoList(QStringList() << QSL("*") + BACKUP_SUFFIX_SETTINGS,
|
||||||
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::Filter::NoSymLinks,
|
|
||||||
QDir::SortFlag::Name);
|
QDir::SortFlag::Name);
|
||||||
|
|
||||||
m_ui.m_listDatabase->clear();
|
m_ui.m_listDatabase->clear();
|
||||||
|
|
|
@ -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;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue