summaryrefslogtreecommitdiff
path: root/src/plugins/cpptools/cppmodelmanagerinterface.cpp
diff options
context:
space:
mode:
authorhjk <hjk121@nokiamail.com>2014-09-15 00:12:27 +0200
committerNikolai Kosjar <nikolai.kosjar@digia.com>2014-09-19 13:17:55 +0200
commitb26a17f30dea7e4ac78a31983176681a7a5d07d3 (patch)
tree95ad0b459d9055f4fd6e6623ad1ab0b075730d57 /src/plugins/cpptools/cppmodelmanagerinterface.cpp
parente5e8693148304d3262096e6622386bdff8e4e1ad (diff)
downloadqt-creator-b26a17f30dea7e4ac78a31983176681a7a5d07d3.tar.gz
CppTools: Change CppModelManager implementation pattern
Replace the CppModelManagerInterface/derived CppModelManager combo by a more common CppModelManager/CppModelManagerPrivate pimpl pattern. Change-Id: Ia4582845ed94d5ef60b8571bab9b2260c6290287 Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>
Diffstat (limited to 'src/plugins/cpptools/cppmodelmanagerinterface.cpp')
-rw-r--r--src/plugins/cpptools/cppmodelmanagerinterface.cpp114
1 files changed, 0 insertions, 114 deletions
diff --git a/src/plugins/cpptools/cppmodelmanagerinterface.cpp b/src/plugins/cpptools/cppmodelmanagerinterface.cpp
deleted file mode 100644
index a7b5011367..0000000000
--- a/src/plugins/cpptools/cppmodelmanagerinterface.cpp
+++ /dev/null
@@ -1,114 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2014 Digia Plc and/or its subsidiary(-ies).
-** Contact: http://www.qt-project.org/legal
-**
-** This file is part of Qt Creator.
-**
-** Commercial License Usage
-** Licensees holding valid commercial Qt licenses may use this file in
-** accordance with the commercial license agreement provided with the
-** Software or, alternatively, in accordance with the terms contained in
-** a written agreement between you and Digia. For licensing terms and
-** conditions see http://qt.digia.com/licensing. For further information
-** use the contact form at http://qt.digia.com/contact-us.
-**
-** GNU Lesser General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU Lesser
-** General Public License version 2.1 as published by the Free Software
-** Foundation and appearing in the file LICENSE.LGPL included in the
-** packaging of this file. Please review the following information to
-** ensure the GNU Lesser General Public License version 2.1 requirements
-** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
-**
-** In addition, as a special exception, Digia gives you certain additional
-** rights. These rights are described in the Digia Qt LGPL Exception
-** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
-**
-****************************************************************************/
-
-#include "cppmodelmanagerinterface.h"
-
-#include <cplusplus/pp-engine.h>
-
-using namespace CppTools;
-
-/*!
- \enum CppTools::CppModelManagerInterface::ProgressNotificationMode
-
- This enum type specifies whether a progress bar notification should be
- shown if more than one file is requested to update via
- CppModelManagerInterface::updateSourceFiles().
-
- \value ForcedProgressNotification
- Notify regardless of the number of files requested for update.
- \value ReservedProgressNotification
- Notify only if more than one file is requested for update.
-*/
-
-/*!
- \enum CppTools::CppModelManagerInterface::QtVersion
-
- Allows C++ parser engine to inject headers or change inner settings as
- needed to parse Qt language extensions for concrete major Qt version
-
- \value UnknownQt
- Parser may choose any policy
- \value NoQt
- Parser must not use special tricks, because it parses non-qt project
- \value Qt4
- Parser may enable tricks for Qt v4.x
- \value Qt5
- Parser may enable tricks for Qt v5.x
-*/
-
-/*!
- \fn virtual QFuture<void> updateProjectInfo(const ProjectInfo &pinfo) = 0;
- \param pinfo Updated ProjectInfo.
- \return A future that reports progress and allows to cancel the reparsing operation.
-
- This function is expected to be called by the project managers to update the
- code model with new project information.
-
- In particular, the function should be called in case:
- 1. A new project is opened/created
- 2. The project configuration changed. This includes
- 2.1 Changes of defines, includes, framework paths
- 2.2 Addition/Removal of project files
-
- \sa CppTools::CppModelManagerInterface::updateSourceFiles()
-*/
-
-/*!
- \fn virtual QFuture<void> updateSourceFiles(const QStringList &sourceFiles, ProgressNotificationMode mode = ReservedProgressNotification) = 0;
- \param sourceFiles List of source file to update. The items are absolute paths.
- \param mode The progress modification mode.
- \return A future that reports progress and allows to cancel the reparsing operation.
-
- Trigger an asynchronous reparsing of the given source files.
-
- This function is not meant to be called by the project managers.
-
- \sa CppTools::CppModelManagerInterface::ProgressNotificationMode
- \sa CppTools::CppModelManagerInterface::updateProjectInfo()
-*/
-
-const QString CppModelManagerInterface::configurationFileName()
-{ return CPlusPlus::Preprocessor::configurationFileName; }
-
-const QString CppModelManagerInterface::editorConfigurationFileName()
-{
- return QLatin1String("<per-editor-defines>");
-}
-
-CppModelManagerInterface::CppModelManagerInterface(QObject *parent)
- : CPlusPlus::CppModelManagerBase(parent)
-{ }
-
-CppModelManagerInterface::~CppModelManagerInterface()
-{ }
-
-CppModelManagerInterface *CppModelManagerInterface::instance()
-{
- return qobject_cast<CppModelManagerInterface *>(CPlusPlus::CppModelManagerBase::instance());
-}