aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/autotest/testtreemodel.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/autotest/testtreemodel.h')
-rw-r--r--src/plugins/autotest/testtreemodel.h12
1 files changed, 9 insertions, 3 deletions
diff --git a/src/plugins/autotest/testtreemodel.h b/src/plugins/autotest/testtreemodel.h
index 895d71bbac..af3501c484 100644
--- a/src/plugins/autotest/testtreemodel.h
+++ b/src/plugins/autotest/testtreemodel.h
@@ -36,6 +36,7 @@
namespace Autotest {
namespace Internal {
+class AutotestPluginPrivate;
class TestCodeParser;
} // namespace Internal
@@ -45,6 +46,10 @@ using TestParseResultPtr = QSharedPointer<TestParseResult>;
class AUTOTESTSHARED_EXPORT TestTreeModel : public Utils::TreeModel<>
{
Q_OBJECT
+
+ friend class Internal::AutotestPluginPrivate; // For ctor.
+ explicit TestTreeModel(Internal::TestCodeParser *parser);
+
public:
static TestTreeModel* instance();
~TestTreeModel() override;
@@ -59,8 +64,9 @@ public:
QList<TestConfiguration *> getTestsForFile(const Utils::FilePath &fileName) const;
QList<TestTreeItem *> testItemsByName(const QString &testName);
void synchronizeTestFrameworks();
- void rebuild(const QList<Core::Id> &frameworkIds);
+ void rebuild(const QList<Utils::Id> &frameworkIds);
+ void updateCheckStateCache();
#ifdef WITH_TESTS
int autoTestsCount() const;
int namedQuickTestsCount() const;
@@ -89,17 +95,17 @@ private:
void onParseResultReady(const TestParseResultPtr result);
void handleParseResult(const TestParseResult *result, TestTreeItem *rootNode);
void removeAllTestItems();
- void removeTestRootNodes();
void removeFiles(const QStringList &files);
bool sweepChildren(TestTreeItem *item);
void insertItemInParent(TestTreeItem *item, TestTreeItem *root, bool groupingEnabled);
void revalidateCheckState(TestTreeItem *item);
- explicit TestTreeModel(QObject *parent = nullptr);
void setupParsingConnections();
void filterAndInsert(TestTreeItem *item, TestTreeItem *root, bool groupingEnabled);
QList<TestTreeItem *> testItemsByName(TestTreeItem *root, const QString &testName);
Internal::TestCodeParser *m_parser = nullptr;
+ QHash<QString, Qt::CheckState> m_checkStateCache;
+ QHash<QString, int> m_itemUseCache;
};
namespace Internal {