logic: background indexing (issue #175)

* allow hiding of indexing dialogs to browse loaded project while indexing
* show indexing status in status bar while indexing
* use different dialog views for different use cases to avoid state collisions
* fixed error label in status bar jittering while indexing
* show hand cursors for clickable elements in status bar
* indexing is not interrupted on pressing ESC while in hidden
* disable error table and error label while indexing
* refactored indexing messages
* forbid indexing and changing project while indexing
* don't show indexing status messages in status bar when indexing in the background
* allow tasks to run in the background

fortune cookie message = A journey is waiting for you.
This commit is contained in:
Eberhard Graether
2018-07-10 11:42:58 +02:00
parent 6bbb44309d
commit ad325ac974
76 changed files with 875 additions and 448 deletions
+3 -6
View File
@@ -22,10 +22,6 @@ QtViewFactory::QtViewFactory()
{
}
QtViewFactory::~QtViewFactory()
{
}
std::shared_ptr<MainView> QtViewFactory::createMainView() const
{
return std::make_shared<QtMainView>();
@@ -104,7 +100,8 @@ std::shared_ptr<UndoRedoView> QtViewFactory::createUndoRedoView(ViewLayout* view
return View::createInitAndAddToLayout<QtUndoRedoView>(viewLayout);
}
std::shared_ptr<DialogView> QtViewFactory::createDialogView(ViewLayout* viewLayout, StorageAccess* storageAccess) const
std::shared_ptr<DialogView> QtViewFactory::createDialogView(
ViewLayout* viewLayout, DialogView::UseCase useCase, StorageAccess* storageAccess) const
{
return std::make_shared<QtDialogView>(dynamic_cast<QtMainView*>(viewLayout)->getMainWindow(), storageAccess);
return std::make_shared<QtDialogView>(dynamic_cast<QtMainView*>(viewLayout)->getMainWindow(), useCase, storageAccess);
}