From f1e7fcf64a43b32d25899f7df7e957709db67385 Mon Sep 17 00:00:00 2001
From: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Date: Wed, 25 Jul 2012 09:48:48 +0200
Subject: [PATCH] Clean up includes in autotools-plugin.

Fixing an lupdate warning about cyclic dependencies of
autotoolsbuildsettingswidget.h.

Change-Id: I0e1c721df2c5f70ae9de38dd9bc5a34b63622ba7
Reviewed-by: Eike Ziller <eike.ziller@nokia.com>
---
 .../autotoolsbuildconfiguration.cpp              |  1 +
 .../autotoolsbuildconfiguration.h                |  2 --
 .../autotoolsbuildsettingswidget.cpp             |  2 ++
 .../autotoolsbuildsettingswidget.h               |  9 ++++-----
 .../autotoolsopenprojectwizard.cpp               |  2 ++
 .../autotoolsopenprojectwizard.h                 |  5 ++++-
 .../autotoolsprojectmanager/autotoolsproject.cpp |  1 +
 .../autotoolsprojectmanager/autotoolsproject.h   | 16 ++++++++++------
 .../autotoolsprojectnode.cpp                     |  2 ++
 .../autotoolsprojectnode.h                       |  5 ++++-
 .../autotoolsprojectmanager/makefileparser.cpp   |  1 +
 .../autotoolsprojectmanager/makefileparser.h     |  5 ++---
 .../makefileparserthread.h                       |  2 +-
 13 files changed, 34 insertions(+), 19 deletions(-)

diff --git a/src/plugins/autotoolsprojectmanager/autotoolsbuildconfiguration.cpp b/src/plugins/autotoolsprojectmanager/autotoolsbuildconfiguration.cpp
index 1a003558f8..5f93f43d33 100644
--- a/src/plugins/autotoolsprojectmanager/autotoolsbuildconfiguration.cpp
+++ b/src/plugins/autotoolsprojectmanager/autotoolsbuildconfiguration.cpp
@@ -33,6 +33,7 @@
 **************************************************************************/
 
 #include "autotoolsbuildconfiguration.h"
+#include "autotoolsbuildsettingswidget.h"
 #include "makestep.h"
 #include "autotoolsproject.h"
 #include "autotoolsprojectconstants.h"
diff --git a/src/plugins/autotoolsprojectmanager/autotoolsbuildconfiguration.h b/src/plugins/autotoolsprojectmanager/autotoolsbuildconfiguration.h
index d6f712b044..5177e24621 100644
--- a/src/plugins/autotoolsprojectmanager/autotoolsbuildconfiguration.h
+++ b/src/plugins/autotoolsprojectmanager/autotoolsbuildconfiguration.h
@@ -35,8 +35,6 @@
 #ifndef AUTOTOOLSBUILDCONFIGURATION_H
 #define AUTOTOOLSBUILDCONFIGURATION_H
 
-#include "autotoolsbuildsettingswidget.h"
-
 #include <projectexplorer/buildconfiguration.h>
 
 namespace AutotoolsProjectManager {
diff --git a/src/plugins/autotoolsprojectmanager/autotoolsbuildsettingswidget.cpp b/src/plugins/autotoolsprojectmanager/autotoolsbuildsettingswidget.cpp
index 9f8315c4cd..d8620049ab 100644
--- a/src/plugins/autotoolsprojectmanager/autotoolsbuildsettingswidget.cpp
+++ b/src/plugins/autotoolsprojectmanager/autotoolsbuildsettingswidget.cpp
@@ -39,6 +39,8 @@
 #include <projectexplorer/projectexplorer.h>
 #include <projectexplorer/target.h>
 
+#include <utils/pathchooser.h>
+
 #include <QGridLayout>
 #include <QLabel>
 #include <QLineEdit>
diff --git a/src/plugins/autotoolsprojectmanager/autotoolsbuildsettingswidget.h b/src/plugins/autotoolsprojectmanager/autotoolsbuildsettingswidget.h
index 4550c4906c..eb9fc4acbf 100644
--- a/src/plugins/autotoolsprojectmanager/autotoolsbuildsettingswidget.h
+++ b/src/plugins/autotoolsprojectmanager/autotoolsbuildsettingswidget.h
@@ -35,17 +35,16 @@
 #ifndef AUTOTOOLSBUILDSETTINGSWIDGET_H
 #define AUTOTOOLSBUILDSETTINGSWIDGET_H
 
-#include "autotoolsbuildconfiguration.h"
-
-#include <projectexplorer/buildconfiguration.h>
-#include <projectexplorer/project.h>
 #include <projectexplorer/buildstep.h>
-#include <utils/pathchooser.h>
 
 QT_BEGIN_NAMESPACE
 class QComboBox;
 QT_END_NAMESPACE
 
+namespace Utils {
+class PathChooser;
+}
+
 namespace AutotoolsProjectManager {
 namespace Internal {
 
diff --git a/src/plugins/autotoolsprojectmanager/autotoolsopenprojectwizard.cpp b/src/plugins/autotoolsprojectmanager/autotoolsopenprojectwizard.cpp
index 9fd234d753..474b29ed32 100644
--- a/src/plugins/autotoolsprojectmanager/autotoolsopenprojectwizard.cpp
+++ b/src/plugins/autotoolsprojectmanager/autotoolsopenprojectwizard.cpp
@@ -34,6 +34,8 @@
 
 #include "autotoolsopenprojectwizard.h"
 
+#include <utils/pathchooser.h>
+
 #include <QVBoxLayout>
 #include <QFormLayout>
 #include <QLabel>
diff --git a/src/plugins/autotoolsprojectmanager/autotoolsopenprojectwizard.h b/src/plugins/autotoolsprojectmanager/autotoolsopenprojectwizard.h
index 043136399c..ba3d2ce6be 100644
--- a/src/plugins/autotoolsprojectmanager/autotoolsopenprojectwizard.h
+++ b/src/plugins/autotoolsprojectmanager/autotoolsopenprojectwizard.h
@@ -36,7 +36,10 @@
 #define AUTOTOOLSOPENPROJECTWIZARD_H
 
 #include <utils/wizard.h>
-#include <utils/pathchooser.h>
+
+namespace Utils {
+class PathChooser;
+}
 
 namespace AutotoolsProjectManager {
 namespace Internal {
diff --git a/src/plugins/autotoolsprojectmanager/autotoolsproject.cpp b/src/plugins/autotoolsprojectmanager/autotoolsproject.cpp
index 7f293b6141..84c39c5914 100644
--- a/src/plugins/autotoolsprojectmanager/autotoolsproject.cpp
+++ b/src/plugins/autotoolsprojectmanager/autotoolsproject.cpp
@@ -54,6 +54,7 @@
 #include <cpptools/ModelManagerInterface.h>
 #include <coreplugin/icore.h>
 #include <utils/qtcassert.h>
+#include <utils/filesystemwatcher.h>
 
 #include <QFileInfo>
 #include <QTimer>
diff --git a/src/plugins/autotoolsprojectmanager/autotoolsproject.h b/src/plugins/autotoolsprojectmanager/autotoolsproject.h
index 55612306bb..97a8ce8a72 100644
--- a/src/plugins/autotoolsprojectmanager/autotoolsproject.h
+++ b/src/plugins/autotoolsprojectmanager/autotoolsproject.h
@@ -35,14 +35,18 @@
 #ifndef AUTOTOOLSPROJECT_H
 #define AUTOTOOLSPROJECT_H
 
-#include <coreplugin/editormanager/ieditor.h>
 #include <projectexplorer/project.h>
-#include <projectexplorer/projectexplorer.h>
-#include <projectexplorer/projectnodes.h>
-#include <utils/filesystemwatcher.h>
 
-#include <QPointer>
-#include <QDir>
+QT_FORWARD_DECLARE_CLASS(QDir)
+
+namespace Utils {
+class FileSystemWatcher;
+}
+
+namespace ProjectExplorer {
+class Node;
+class FolderNode;
+}
 
 namespace AutotoolsProjectManager {
 namespace Internal {
diff --git a/src/plugins/autotoolsprojectmanager/autotoolsprojectnode.cpp b/src/plugins/autotoolsprojectmanager/autotoolsprojectnode.cpp
index 3234afbad4..a13c14657d 100644
--- a/src/plugins/autotoolsprojectmanager/autotoolsprojectnode.cpp
+++ b/src/plugins/autotoolsprojectmanager/autotoolsprojectnode.cpp
@@ -35,6 +35,8 @@
 #include "autotoolsprojectnode.h"
 #include "autotoolsproject.h"
 
+#include <coreplugin/idocument.h>
+
 using namespace AutotoolsProjectManager;
 using namespace AutotoolsProjectManager::Internal;
 using namespace ProjectExplorer;
diff --git a/src/plugins/autotoolsprojectmanager/autotoolsprojectnode.h b/src/plugins/autotoolsprojectmanager/autotoolsprojectnode.h
index 433e662eac..ea6b619558 100644
--- a/src/plugins/autotoolsprojectmanager/autotoolsprojectnode.h
+++ b/src/plugins/autotoolsprojectmanager/autotoolsprojectnode.h
@@ -36,7 +36,10 @@
 #define AUTOTOOLSPROJECTNODE_H
 
 #include <projectexplorer/projectnodes.h>
-#include <coreplugin/idocument.h>
+
+namespace Core {
+class IDocument;
+}
 
 namespace AutotoolsProjectManager {
 namespace Internal {
diff --git a/src/plugins/autotoolsprojectmanager/makefileparser.cpp b/src/plugins/autotoolsprojectmanager/makefileparser.cpp
index 972f6bce0a..a1fea7247f 100644
--- a/src/plugins/autotoolsprojectmanager/makefileparser.cpp
+++ b/src/plugins/autotoolsprojectmanager/makefileparser.cpp
@@ -37,6 +37,7 @@
 #include <utils/qtcassert.h>
 
 #include <QFile>
+#include <QDir>
 #include <QFileInfoList>
 #include <QMutexLocker>
 
diff --git a/src/plugins/autotoolsprojectmanager/makefileparser.h b/src/plugins/autotoolsprojectmanager/makefileparser.h
index 8038f8c39f..ce3e67a06e 100644
--- a/src/plugins/autotoolsprojectmanager/makefileparser.h
+++ b/src/plugins/autotoolsprojectmanager/makefileparser.h
@@ -36,12 +36,11 @@
 #define MAKEFILEPARSER_H
 
 #include <QMutex>
-#include <QString>
 #include <QStringList>
 #include <QTextStream>
 #include <QObject>
-#include <QDir>
-#include <QFileInfo>
+
+QT_FORWARD_DECLARE_CLASS(QDir)
 
 namespace AutotoolsProjectManager {
 namespace Internal {
diff --git a/src/plugins/autotoolsprojectmanager/makefileparserthread.h b/src/plugins/autotoolsprojectmanager/makefileparserthread.h
index e998c726cc..5e3da0f571 100644
--- a/src/plugins/autotoolsprojectmanager/makefileparserthread.h
+++ b/src/plugins/autotoolsprojectmanager/makefileparserthread.h
@@ -38,7 +38,7 @@
 #include "makefileparser.h"
 
 #include <QMutex>
-#include <QString>
+#include <QStringList>
 #include <QThread>
 
 namespace AutotoolsProjectManager {
-- 
GitLab