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
+20 -4
View File
@@ -15,10 +15,6 @@ QtStatusBarView::QtStatusBarView(ViewLayout* viewLayout)
mw->setStatusBar(sb);
}
QtStatusBarView::~QtStatusBarView()
{
}
void QtStatusBarView::createWidgetWrapper()
{
}
@@ -60,3 +56,23 @@ void QtStatusBarView::showIdeStatus(const std::wstring& message)
}
);
}
void QtStatusBarView::showIndexingProgress(bool unknownProgress, size_t progressPercent)
{
m_onQtThread(
[=]()
{
m_widget->showIndexingProgress(unknownProgress, progressPercent);
}
);
}
void QtStatusBarView::hideIndexingProgress()
{
m_onQtThread(
[=]()
{
m_widget->hideIndexingProgress();
}
);
}