logic: Added indexing mode to reindex incomplete files (issue #493, #496)

* added radio buttons to start indexing dialog
* don't block task scheduler thread while start indexing dialog is visible
* don't force whole project refresh on settings change
* added help button to start indexing dialog explaining indexing modes
* disable unavailable modes when project needs full refresh
* improved label texts on indexing dialogs
* added --incomplete flag to index command of commandline API
* fixed deletion of window stack elements
This commit is contained in:
Eberhard Graether
2017-12-03 22:30:09 +01:00
parent faf9e7655f
commit f9e4afda77
33 changed files with 748 additions and 529 deletions
@@ -1,6 +1,8 @@
#ifndef MESSAGE_LOAD_PROJECT_H
#define MESSAGE_LOAD_PROJECT_H
#include "project/RefreshInfo.h"
#include "utility/file/FilePath.h"
#include "utility/messaging/Message.h"
@@ -8,9 +10,10 @@ class MessageLoadProject
: public Message<MessageLoadProject>
{
public:
MessageLoadProject(const FilePath& filePath, bool forceRefresh)
MessageLoadProject(const FilePath& filePath, bool settingsChanged = false, RefreshMode refreshMode = REFRESH_NONE)
: projectSettingsFilePath(filePath)
, forceRefresh(forceRefresh)
, settingsChanged(settingsChanged)
, refreshMode(refreshMode)
{
}
@@ -21,11 +24,14 @@ public:
virtual void print(std::ostream& os) const
{
os << projectSettingsFilePath.str() << ", forceRefresh: " << std::boolalpha << forceRefresh;
os << projectSettingsFilePath.str();
os << ", settingsChanged: " << std::boolalpha << settingsChanged;
os << ", refreshMode: " << refreshMode;
}
const FilePath projectSettingsFilePath;
const bool forceRefresh;
const bool settingsChanged;
const RefreshMode refreshMode;
};
#endif // MESSAGE_LOAD_PROJECT_H