mirror of
https://gitee.com/vnotex/vnote.git
synced 2025-07-05 13:59:52 +08:00
add config confirm_reload_folder to check whether prompt for uer when reloading folder
This commit is contained in:
parent
d20dc4a0b0
commit
da64b8c12f
@ -13,6 +13,7 @@
|
||||
#include "vconfigmanager.h"
|
||||
|
||||
VConfigManager *g_config;
|
||||
VMainWindow *g_mainWin;
|
||||
|
||||
#if defined(QT_NO_DEBUG)
|
||||
QFile g_logFile;
|
||||
@ -168,6 +169,7 @@ int main(int argc, char *argv[])
|
||||
}
|
||||
|
||||
VMainWindow w(&guard);
|
||||
g_mainWin = &w;
|
||||
QString style = VUtils::readFileFromDisk(":/resources/vnote.qss");
|
||||
if (!style.isEmpty()) {
|
||||
VUtils::processStyle(style, w.getPalette());
|
||||
|
@ -116,6 +116,9 @@ recycle_bin_folder=_v_recycle_bin
|
||||
; Confirm before deleting unused images
|
||||
confirm_images_clean_up=true
|
||||
|
||||
; Confirm before reloading folder from disk
|
||||
confirm_reload_folder=true
|
||||
|
||||
[session]
|
||||
tools_dock_checked=true
|
||||
|
||||
|
@ -210,6 +210,9 @@ void VConfigManager::initialize()
|
||||
|
||||
m_confirmImagesCleanUp = getConfigFromSettings("global",
|
||||
"confirm_images_clean_up").toBool();
|
||||
|
||||
m_confirmReloadFolder = getConfigFromSettings("global",
|
||||
"confirm_reload_folder").toBool();
|
||||
}
|
||||
|
||||
void VConfigManager::readPredefinedColorsFromSettings()
|
||||
|
@ -274,6 +274,9 @@ public:
|
||||
bool getConfirmImagesCleanUp() const;
|
||||
void setConfirmImagesCleanUp(bool p_enabled);
|
||||
|
||||
bool getConfirmReloadFolder() const;
|
||||
void setConfirmReloadFolder(bool p_enabled);
|
||||
|
||||
// Return the configured key sequence of @p_operation.
|
||||
// Return empty if there is no corresponding config.
|
||||
QString getShortcutKeySequence(const QString &p_operation) const;
|
||||
@ -551,6 +554,9 @@ private:
|
||||
// Confirm before deleting unused images.
|
||||
bool m_confirmImagesCleanUp;
|
||||
|
||||
// Confirm before reloading folder from disk.
|
||||
bool m_confirmReloadFolder;
|
||||
|
||||
// The name of the config file in each directory, obsolete.
|
||||
// Use c_dirConfigFile instead.
|
||||
static const QString c_obsoleteDirConfigFile;
|
||||
@ -1444,4 +1450,22 @@ inline void VConfigManager::setConfirmImagesCleanUp(bool p_enabled)
|
||||
"confirm_images_clean_up",
|
||||
m_confirmImagesCleanUp);
|
||||
}
|
||||
|
||||
inline bool VConfigManager::getConfirmReloadFolder() const
|
||||
{
|
||||
return m_confirmReloadFolder;
|
||||
}
|
||||
|
||||
inline void VConfigManager::setConfirmReloadFolder(bool p_enabled)
|
||||
{
|
||||
if (m_confirmReloadFolder == p_enabled) {
|
||||
return;
|
||||
}
|
||||
|
||||
m_confirmReloadFolder = p_enabled;
|
||||
setConfigToSettings("global",
|
||||
"confirm_reload_folder",
|
||||
m_confirmReloadFolder);
|
||||
}
|
||||
|
||||
#endif // VCONFIGMANAGER_H
|
||||
|
@ -8,6 +8,9 @@
|
||||
#include "utils/vutils.h"
|
||||
#include "veditarea.h"
|
||||
#include "vconfigmanager.h"
|
||||
#include "vmainwindow.h"
|
||||
|
||||
extern VMainWindow *g_mainWin;
|
||||
|
||||
extern VConfigManager *g_config;
|
||||
extern VNote *g_vnote;
|
||||
@ -521,6 +524,7 @@ void VDirectoryTree::reloadFromDisk()
|
||||
return;
|
||||
}
|
||||
|
||||
QString msg;
|
||||
QString info;
|
||||
VDirectory *curDir = NULL;
|
||||
QTreeWidgetItem *curItem = currentItem();
|
||||
@ -529,20 +533,35 @@ void VDirectoryTree::reloadFromDisk()
|
||||
curDir = getVDirectory(curItem);
|
||||
info = tr("Are you sure to reload folder <span style=\"%1\">%2</span>?")
|
||||
.arg(g_config->c_dataTextStyle).arg(curDir->getName());
|
||||
msg = tr("Successfully reloaded folder %1 from disk").arg(curDir->getName());
|
||||
} else {
|
||||
// Reload notebook.
|
||||
info = tr("Are you sure to reload notebook <span style=\"%1\">%2</span>?")
|
||||
.arg(g_config->c_dataTextStyle).arg(m_notebook->getName());
|
||||
msg = tr("Successfully reloaded notebook %1 from disk").arg(m_notebook->getName());
|
||||
}
|
||||
|
||||
int ret = VUtils::showMessage(QMessageBox::Information, tr("Information"),
|
||||
info,
|
||||
tr("VNote will close all the related notes before reload."),
|
||||
QMessageBox::Ok | QMessageBox::Cancel,
|
||||
QMessageBox::Ok, this);
|
||||
if (g_config->getConfirmReloadFolder()) {
|
||||
int ret = VUtils::showMessage(QMessageBox::Information, tr("Information"),
|
||||
info,
|
||||
tr("VNote will close all the related notes before reload."),
|
||||
QMessageBox::Ok | QMessageBox::YesToAll | QMessageBox::Cancel,
|
||||
QMessageBox::Ok,
|
||||
this);
|
||||
switch (ret) {
|
||||
case QMessageBox::YesToAll:
|
||||
g_config->setConfirmReloadFolder(false);
|
||||
// Fall through.
|
||||
|
||||
if (ret != QMessageBox::Ok) {
|
||||
return;
|
||||
case QMessageBox::Ok:
|
||||
break;
|
||||
|
||||
case QMessageBox::Cancel:
|
||||
return;
|
||||
|
||||
default:
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
m_notebookCurrentDirMap.remove(m_notebook);
|
||||
@ -588,6 +607,10 @@ void VDirectoryTree::reloadFromDisk()
|
||||
|
||||
updateDirectoryTree();
|
||||
}
|
||||
|
||||
if (!msg.isEmpty()) {
|
||||
g_mainWin->showStatusMessage(msg);
|
||||
}
|
||||
}
|
||||
|
||||
void VDirectoryTree::copySelectedDirectories(bool p_cut)
|
||||
|
Loading…
x
Reference in New Issue
Block a user