Simplify interface of classes in ClassViewPlugin

Allow for direct connections where signal emitter and
receiver live in the same thread.
Remove unneeded mutexState, as changes to state and
all queries of state are done in the same thread.
Remove some indirections by removing some signals
and by calling respective slots through
QMetaObject::invokeMethod() or directly.
Remove some unused methods.
Remove a code path of setState(false), as this was never called.
Remove an initial call to onProjectListChanged(), as initially
the state is false and a call is no-op.

This change doesn't influence the existing behavior.

Task-number: QTCREATORBUG-25317
Change-Id: I683525b49afaf04e155d1859bb85ee5dd8e26dd2
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
This commit is contained in:
Jarek Kobus
2021-02-08 12:22:21 +01:00
parent 33d2d736ea
commit a673fca144
6 changed files with 70 additions and 358 deletions

View File

@@ -58,12 +58,8 @@ public:
signals:
void visibilityChanged(bool visibility);
void requestGotoLocation(const QString &name, int line, int column);
void requestGotoLocations(const QList<QVariant> &locations);
void requestTreeDataUpdate();
public:
void onItemActivated(const QModelIndex &index);
void onItemDoubleClicked(const QModelIndex &index);