Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
Marco Bubke
flatpak-qt-creator
Commits
bedca00d
Commit
bedca00d
authored
Dec 15, 2008
by
dt
Browse files
Merge branch 'master' of git@scm.dev.nokia.troll.no:creator/mainline
parents
99752cd1
78f1fca9
Changes
22
Expand all
Hide whitespace changes
Inline
Side-by-side
shared/proparser/profileevaluator.cpp
View file @
bedca00d
This diff is collapsed.
Click to expand it.
shared/proparser/profileevaluator.h
View file @
bedca00d
...
...
@@ -45,7 +45,9 @@
QT_BEGIN_NAMESPACE
class
ProFile
;
class
ProFileEvaluator
;
void
evaluateProFile
(
const
ProFileEvaluator
&
visitor
,
QHash
<
QByteArray
,
QStringList
>
*
varMap
);
bool
evaluateProFile
(
const
QString
&
fileName
,
bool
verbose
,
QHash
<
QByteArray
,
QStringList
>
*
varMap
);
class
ProFileEvaluator
...
...
@@ -66,7 +68,9 @@ public:
virtual
bool
contains
(
const
QString
&
variableName
)
const
;
QStringList
absFileNames
(
const
QString
&
variableName
);
QStringList
absFileName
(
const
QString
&
name
);
void
setVerbose
(
bool
on
);
void
setVerbose
(
bool
on
);
// Default is false
void
setCumulative
(
bool
on
);
// Default is true!
void
setOutputDir
(
const
QString
&
dir
);
// Default is empty
bool
queryProFile
(
ProFile
*
pro
);
bool
accept
(
ProFile
*
pro
);
...
...
shared/proparser/proitems.cpp
View file @
bedca00d
...
...
@@ -35,7 +35,6 @@
#include
"abstractproitemvisitor.h"
#include
<QtCore/QFileInfo>
#include
<QtCore/QDebug>
QT_BEGIN_NAMESPACE
...
...
shared/proparser/proitems.h
View file @
bedca00d
...
...
@@ -45,9 +45,6 @@ struct AbstractProItemVisitor;
class
ProItem
{
public:
ProItem
()
:
m_lineNumber
(
0
)
{}
enum
ProItemKind
{
ValueKind
,
FunctionKind
,
...
...
@@ -55,6 +52,8 @@ public:
OperatorKind
,
BlockKind
};
ProItem
()
:
m_lineNumber
(
0
)
{}
virtual
~
ProItem
()
{}
virtual
ProItemKind
kind
()
const
=
0
;
...
...
shared/proparser/proparserutils.h
View file @
bedca00d
...
...
@@ -85,6 +85,25 @@ struct Option
Option
::
qmakespec
=
QString
::
fromLatin1
(
qgetenv
(
"QMAKESPEC"
).
data
());
Option
::
field_sep
=
QLatin1Char
(
' '
);
}
enum
StringFixFlags
{
FixNone
=
0x00
,
FixEnvVars
=
0x01
,
FixPathCanonicalize
=
0x02
,
FixPathToLocalSeparators
=
0x04
,
FixPathToTargetSeparators
=
0x08
};
static
QString
fixString
(
QString
string
,
uchar
flags
);
inline
static
QString
fixPathToLocalOS
(
const
QString
&
in
,
bool
fix_env
=
true
,
bool
canonical
=
true
)
{
uchar
flags
=
FixPathToLocalSeparators
;
if
(
fix_env
)
flags
|=
FixEnvVars
;
if
(
canonical
)
flags
|=
FixPathCanonicalize
;
return
fixString
(
in
,
flags
);
}
};
#if defined(Q_OS_WIN32)
Option
::
TARG_MODE
Option
::
target_mode
=
Option
::
TARG_WIN_MODE
;
...
...
@@ -113,17 +132,20 @@ static void unquote(QString *string)
}
static
void
insertUnique
(
QHash
<
QString
,
QStringList
>
*
map
,
const
QString
&
key
,
const
QStringList
&
value
,
bool
unique
=
true
)
const
QString
&
key
,
const
QStringList
&
value
)
{
QStringList
&
sl
=
(
*
map
)[
key
];
if
(
!
unique
)
{
sl
+=
value
;
}
else
{
for
(
int
i
=
0
;
i
<
value
.
count
();
++
i
)
{
if
(
!
sl
.
contains
(
value
.
at
(
i
)))
sl
.
append
(
value
.
at
(
i
));
}
}
foreach
(
const
QString
&
str
,
value
)
if
(
!
sl
.
contains
(
str
))
sl
.
append
(
str
);
}
static
void
removeEach
(
QHash
<
QString
,
QStringList
>
*
map
,
const
QString
&
key
,
const
QStringList
&
value
)
{
QStringList
&
sl
=
(
*
map
)[
key
];
foreach
(
const
QString
&
str
,
value
)
sl
.
removeAll
(
str
);
}
/*
...
...
src/plugins/coreplugin/generalsettings.cpp
View file @
bedca00d
...
...
@@ -63,7 +63,7 @@ QString GeneralSettings::trCategory() const
QWidget
*
GeneralSettings
::
createPage
(
QWidget
*
parent
)
{
m_page
=
new
Ui_GeneralSettings
()
;
m_page
=
new
Ui_GeneralSettings
;
QWidget
*
w
=
new
QWidget
(
parent
);
m_page
->
setupUi
(
w
);
...
...
@@ -77,7 +77,6 @@ QWidget* GeneralSettings::createPage(QWidget *parent)
connect
(
m_page
->
helpExternalEditorButton
,
SIGNAL
(
clicked
()),
this
,
SLOT
(
showHelpForExternalEditor
()));
return
w
;
}
...
...
@@ -89,7 +88,6 @@ void GeneralSettings::finished(bool accepted)
// Apply the new base color if accepted
StyleHelper
::
setBaseColor
(
m_page
->
colorButton
->
color
());
EditorManager
::
instance
()
->
setExternalEditor
(
m_page
->
externalEditorEdit
->
text
());
}
void
GeneralSettings
::
resetInterfaceColor
()
...
...
src/plugins/cpptools/completionsettingspage.cpp
0 → 100644
View file @
bedca00d
/***************************************************************************
**
** This file is part of Qt Creator
**
** Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
**
** Contact: Qt Software Information (qt-info@nokia.com)
**
**
** Non-Open Source Usage
**
** Licensees may use this file in accordance with the Qt Beta Version
** License Agreement, Agreement version 2.2 provided with the Software or,
** alternatively, in accordance with the terms contained in a written
** agreement between you and Nokia.
**
** GNU General Public License Usage
**
** Alternatively, this file may be used under the terms of the GNU General
** Public License versions 2.0 or 3.0 as published by the Free Software
** Foundation and appearing in the file LICENSE.GPL included in the packaging
** of this file. Please review the following information to ensure GNU
** General Public Licensing requirements will be met:
**
** http://www.fsf.org/licensing/licenses/info/GPLv2.html and
** http://www.gnu.org/copyleft/gpl.html.
**
** In addition, as a special exception, Nokia gives you certain additional
** rights. These rights are described in the Nokia Qt GPL Exception
** version 1.2, included in the file GPL_EXCEPTION.txt in this package.
**
***************************************************************************/
#include
"completionsettingspage.h"
#include
"cppcodecompletion.h"
#include
"ui_completionsettingspage.h"
#include
<coreplugin/icore.h>
#include
<extensionsystem/pluginmanager.h>
using
namespace
CppTools
::
Internal
;
CompletionSettingsPage
::
CompletionSettingsPage
(
CppCodeCompletion
*
completion
)
:
m_completion
(
completion
)
,
m_page
(
0
)
{
}
QString
CompletionSettingsPage
::
name
()
const
{
return
tr
(
"Completion"
);
}
QString
CompletionSettingsPage
::
category
()
const
{
return
QLatin1String
(
"TextEditor"
);
}
QString
CompletionSettingsPage
::
trCategory
()
const
{
return
tr
(
"Text Editor"
);
}
QWidget
*
CompletionSettingsPage
::
createPage
(
QWidget
*
parent
)
{
m_page
=
new
Ui_CompletionSettingsPage
;
QWidget
*
w
=
new
QWidget
(
parent
);
m_page
->
setupUi
(
w
);
m_page
->
caseSensitive
->
setChecked
(
m_completion
->
caseSensitivity
()
==
Qt
::
CaseSensitive
);
m_page
->
autoInsertBraces
->
setChecked
(
m_completion
->
autoInsertBraces
());
return
w
;
}
void
CompletionSettingsPage
::
finished
(
bool
accepted
)
{
if
(
accepted
)
{
m_completion
->
setCaseSensitivity
(
m_page
->
caseSensitive
->
isChecked
()
?
Qt
::
CaseSensitive
:
Qt
::
CaseInsensitive
);
m_completion
->
setAutoInsertBraces
(
m_page
->
autoInsertBraces
->
isChecked
());
}
delete
m_page
;
m_page
=
0
;
}
src/plugins/cpptools/completionsettingspage.h
0 → 100644
View file @
bedca00d
/***************************************************************************
**
** This file is part of Qt Creator
**
** Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
**
** Contact: Qt Software Information (qt-info@nokia.com)
**
**
** Non-Open Source Usage
**
** Licensees may use this file in accordance with the Qt Beta Version
** License Agreement, Agreement version 2.2 provided with the Software or,
** alternatively, in accordance with the terms contained in a written
** agreement between you and Nokia.
**
** GNU General Public License Usage
**
** Alternatively, this file may be used under the terms of the GNU General
** Public License versions 2.0 or 3.0 as published by the Free Software
** Foundation and appearing in the file LICENSE.GPL included in the packaging
** of this file. Please review the following information to ensure GNU
** General Public Licensing requirements will be met:
**
** http://www.fsf.org/licensing/licenses/info/GPLv2.html and
** http://www.gnu.org/copyleft/gpl.html.
**
** In addition, as a special exception, Nokia gives you certain additional
** rights. These rights are described in the Nokia Qt GPL Exception
** version 1.2, included in the file GPL_EXCEPTION.txt in this package.
**
***************************************************************************/
#ifndef COMPLETIONSETTINGSPAGE_H
#define COMPLETIONSETTINGSPAGE_H
#include
<coreplugin/dialogs/ioptionspage.h>
QT_BEGIN_NAMESPACE
class
Ui_CompletionSettingsPage
;
QT_END_NAMESPACE
namespace
CppTools
{
namespace
Internal
{
class
CppCodeCompletion
;
class
CompletionSettingsPage
:
public
Core
::
IOptionsPage
{
public:
CompletionSettingsPage
(
CppCodeCompletion
*
completion
);
QString
name
()
const
;
QString
category
()
const
;
QString
trCategory
()
const
;
QWidget
*
createPage
(
QWidget
*
parent
);
void
finished
(
bool
accepted
);
private:
CppCodeCompletion
*
m_completion
;
Ui_CompletionSettingsPage
*
m_page
;
};
}
// namespace Internal
}
// namespace CppTools
#endif // COMPLETIONSETTINGSPAGE_H
src/plugins/cpptools/completionsettingspage.ui
0 → 100644
View file @
bedca00d
<?xml version="1.0" encoding="UTF-8"?>
<ui
version=
"4.0"
>
<class>
CompletionSettingsPage
</class>
<widget
class=
"QWidget"
name=
"CompletionSettingsPage"
>
<property
name=
"geometry"
>
<rect>
<x>
0
</x>
<y>
0
</y>
<width>
400
</width>
<height>
300
</height>
</rect>
</property>
<property
name=
"windowTitle"
>
<string>
Form
</string>
</property>
<layout
class=
"QVBoxLayout"
name=
"verticalLayout"
>
<item>
<widget
class=
"QCheckBox"
name=
"caseSensitive"
>
<property
name=
"text"
>
<string>
Match completions
&
case-sensitive
</string>
</property>
<property
name=
"checked"
>
<bool>
true
</bool>
</property>
</widget>
</item>
<item>
<widget
class=
"QCheckBox"
name=
"autoInsertBraces"
>
<property
name=
"text"
>
<string>
&
Automatically insert braces
</string>
</property>
<property
name=
"checked"
>
<bool>
true
</bool>
</property>
</widget>
</item>
<item>
<spacer
name=
"verticalSpacer"
>
<property
name=
"orientation"
>
<enum>
Qt::Vertical
</enum>
</property>
<property
name=
"sizeHint"
stdset=
"0"
>
<size>
<width>
20
</width>
<height>
40
</height>
</size>
</property>
</spacer>
</item>
</layout>
</widget>
<resources/>
<connections/>
</ui>
src/plugins/cpptools/cppcodecompletion.cpp
View file @
bedca00d
...
...
@@ -314,12 +314,37 @@ CppCodeCompletion::CppCodeCompletion(CppModelManager *manager, Core::ICore *core
:
ICompletionCollector
(
manager
),
m_core
(
core
),
m_manager
(
manager
),
m_caseSensitivity
(
Qt
::
CaseSensitive
),
m_autoInsertBraces
(
true
),
m_forcedCompletion
(
false
),
m_completionOperator
(
T_EOF_SYMBOL
)
{
}
{
}
QIcon
CppCodeCompletion
::
iconForSymbol
(
Symbol
*
symbol
)
const
{
return
m_icons
.
iconForSymbol
(
symbol
);
}
{
return
m_icons
.
iconForSymbol
(
symbol
);
}
Qt
::
CaseSensitivity
CppCodeCompletion
::
caseSensitivity
()
const
{
return
m_caseSensitivity
;
}
void
CppCodeCompletion
::
setCaseSensitivity
(
Qt
::
CaseSensitivity
caseSensitivity
)
{
m_caseSensitivity
=
caseSensitivity
;
}
bool
CppCodeCompletion
::
autoInsertBraces
()
const
{
return
m_autoInsertBraces
;
}
void
CppCodeCompletion
::
setAutoInsertBraces
(
bool
autoInsertBraces
)
{
m_autoInsertBraces
=
autoInsertBraces
;
}
/*
Searches beckward for an access operator.
...
...
@@ -705,14 +730,14 @@ void CppCodeCompletion::addMacros(const LookupContext &context)
continue
;
processed
.
insert
(
fn
);
if
(
Document
::
Ptr
doc
=
context
.
document
(
fn
))
{
foreach
(
const
Macro
macro
,
doc
->
definedMacros
())
{
foreach
(
const
Macro
&
macro
,
doc
->
definedMacros
())
{
macroNames
.
insert
(
macro
.
name
);
}
todo
+=
doc
->
includedFiles
();
}
}
foreach
(
const
QByteArray
macroName
,
macroNames
)
{
foreach
(
const
QByteArray
&
macroName
,
macroNames
)
{
TextEditor
::
CompletionItem
item
(
this
);
item
.
m_text
=
QString
::
fromLatin1
(
macroName
.
constData
(),
macroName
.
length
());
item
.
m_icon
=
m_icons
.
macroIcon
();
...
...
@@ -889,29 +914,25 @@ void CppCodeCompletion::completions(QList<TextEditor::CompletionItem> *completio
*
* Meaning it allows any sequence of lower-case characters to preceed an
* upper-case character. So for example gAC matches getActionController.
*
* The match is case-sensitive as soon as at least one upper-case character is
* present.
*/
QString
keyRegExp
;
keyRegExp
+=
QLatin1Char
(
'^'
);
bool
first
=
true
;
Qt
::
CaseSensitivity
sensitivity
=
Qt
::
CaseInsensitive
;
foreach
(
const
QChar
&
c
,
key
)
{
if
(
c
.
is
Low
er
())
{
keyRegExp
.
append
(
c
);
}
else
if
(
c
.
isUpper
())
{
s
ensitivity
=
Qt
::
Case
S
ensitive
;
if
(
!
first
)
{
keyRegExp
.
append
(
"[a-z0-9_]*"
)
;
}
keyRegExp
.
append
(
c
);
if
(
c
.
is
Upp
er
()
&&
!
first
)
{
keyRegExp
+=
QLatin1String
(
"[a-z0-9_]*"
);
keyRegExp
+=
c
;
}
else
if
(
m_caseS
ensitivity
=
=
Qt
::
Case
Ins
ensitive
&&
c
.
isLower
())
{
keyRegExp
+=
QLatin1Char
(
'['
);
keyRegExp
+=
c
;
keyRegExp
+=
c
.
toUpper
();
keyRegExp
+=
QLatin1Char
(
']'
);
}
else
{
keyRegExp
.
append
(
QRegExp
::
escape
(
c
)
)
;
keyRegExp
+=
QRegExp
::
escape
(
c
);
}
first
=
false
;
}
const
QRegExp
regExp
(
keyRegExp
,
s
ensitiv
ity
);
const
QRegExp
regExp
(
keyRegExp
,
Qt
::
CaseS
ensitiv
e
);
foreach
(
TextEditor
::
CompletionItem
item
,
m_completions
)
{
if
(
regExp
.
indexIn
(
item
.
m_text
)
==
0
)
{
...
...
@@ -962,7 +983,7 @@ void CppCodeCompletion::complete(const TextEditor::CompletionItem &item)
//qDebug() << "current symbol:" << overview.prettyName(symbol->name())
//<< overview.prettyType(symbol->type());
if
(
symbol
)
{
if
(
m_autoInsertBraces
&&
symbol
)
{
if
(
Function
*
function
=
symbol
->
type
()
->
asFunction
())
{
// If the member is a function, automatically place the opening parenthesis,
// except when it might take template parameters.
...
...
src/plugins/cpptools/cppcodecompletion.h
View file @
bedca00d
...
...
@@ -78,6 +78,12 @@ public:
QIcon
iconForSymbol
(
CPlusPlus
::
Symbol
*
symbol
)
const
;
Qt
::
CaseSensitivity
caseSensitivity
()
const
;
void
setCaseSensitivity
(
Qt
::
CaseSensitivity
caseSensitivity
);
bool
autoInsertBraces
()
const
;
void
setAutoInsertBraces
(
bool
autoInsertBraces
);
private:
void
addKeywords
();
void
addMacros
(
const
CPlusPlus
::
LookupContext
&
context
);
...
...
@@ -126,6 +132,8 @@ private:
Core
::
ICore
*
m_core
;
CppModelManager
*
m_manager
;
Qt
::
CaseSensitivity
m_caseSensitivity
;
bool
m_autoInsertBraces
;
bool
m_forcedCompletion
;
...
...
src/plugins/cpptools/cpptools.pro
View file @
bedca00d
...
...
@@ -13,19 +13,21 @@ HEADERS += cpptools_global.h \
cppquickopenfilter
.
h
\
cppclassesfilter
.
h
\
searchsymbols
.
h
\
cppfunctionsfilter
.
h
cppfunctionsfilter
.
h
\
completionsettingspage
.
h
SOURCES
+=
cppquickopenfilter
.
cpp
\
cpptoolseditorsupport
.
cpp
\
cppclassesfilter
.
cpp
\
searchsymbols
.
cpp
\
cppfunctionsfilter
.
cpp
cppfunctionsfilter
.
cpp
\
completionsettingspage
.
cpp
#
Input
SOURCES
+=
cpptools
.
cpp
\
SOURCES
+=
cpptools
plugin
.
cpp
\
cppmodelmanager
.
cpp
\
cppcodecompletion
.
cpp
\
cpphoverhandler
.
cpp
HEADERS
+=
cpptools
.
h
\
HEADERS
+=
cpptools
plugin
.
h
\
cppmodelmanager
.
h
\
cppcodecompletion
.
h
\
cpphoverhandler
.
h
\
...
...
@@ -33,3 +35,4 @@ HEADERS += cpptools.h \
cpptoolseditorsupport
.
h
\
cpptoolsconstants
.
h
RESOURCES
+=
cpptools
.
qrc
FORMS
+=
completionsettingspage
.
ui
src/plugins/cpptools/cpptools.cpp
→
src/plugins/cpptools/cpptools
plugin
.cpp
View file @
bedca00d
...
...
@@ -31,7 +31,9 @@
**
***************************************************************************/
#include
"cpptools.h"
#include
"cpptoolsplugin.h"
#include
"completionsettingspage.h"
#include
"cppclassesfilter.h"
#include
"cppcodecompletion.h"
#include
"cppfunctionsfilter.h"
...
...
@@ -52,6 +54,7 @@
#include
<QtCore/QFileInfo>
#include
<QtCore/QDir>
#include
<QtCore/QDebug>
#include
<QtCore/QSettings>
#include
<QtGui/QMenu>
#include
<QtGui/QAction>
...
...
@@ -84,13 +87,14 @@ bool CppToolsPlugin::initialize(const QStringList & /*arguments*/, QString *)
// Objects
m_modelManager
=
new
CppModelManager
(
this
);
addAutoReleasedObject
(
m_modelManager
);
CppCodeCompletion
*
cppcode
completion
=
new
CppCodeCompletion
(
m_modelManager
,
m_core
);
addAutoReleasedObject
(
cppcode
completion
);
CppCodeCompletion
*
m_
completion
=
new
CppCodeCompletion
(
m_modelManager
,
m_core
);
addAutoReleasedObject
(
m_
completion
);
CppQuickOpenFilter
*
quickOpenFilter
=
new
CppQuickOpenFilter
(
m_modelManager
,
m_core
->
editorManager
());
addAutoReleasedObject
(
quickOpenFilter
);
addAutoReleasedObject
(
new
CppClassesFilter
(
m_modelManager
,
m_core
->
editorManager
()));
addAutoReleasedObject
(
new
CppFunctionsFilter
(
m_modelManager
,
m_core
->
editorManager
()));
addAutoReleasedObject
(
new
CompletionSettingsPage
(
m_completion
));
// Menus
Core
::
IActionContainer
*
mtools
=
am
->
actionContainer
(
Core
::
Constants
::
M_TOOLS
);
...
...
@@ -110,6 +114,16 @@ bool CppToolsPlugin::initialize(const QStringList & /*arguments*/, QString *)
mcpptools
->
addAction
(
command
);
connect
(
switchAction
,
SIGNAL
(
triggered
()),
this
,
SLOT
(
switchHeaderSource
()));
// Restore settings
QSettings
*
settings
=
m_core
->
settings
();
settings
->
beginGroup
(
QLatin1String
(
"CppTools"
));
settings
->
beginGroup
(
QLatin1String
(
"Completion"
));
const
bool
caseSensitive
=
settings
->
value
(
QLatin1String
(
"CaseSensitive"
),
true
).
toBool
();
m_completion
->
setCaseSensitivity
(
caseSensitive
?
Qt
::
CaseSensitive
:
Qt
::
CaseInsensitive
);
m_completion
->
setAutoInsertBraces
(
settings
->
value
(
QLatin1String
(
"AutoInsertBraces"
),
true
).
toBool
());
settings
->
endGroup
();
settings
->
endGroup
();
return
true
;
}
...
...
@@ -117,6 +131,18 @@ void CppToolsPlugin::extensionsInitialized()
{
}
void
CppToolsPlugin
::
shutdown
()
{
// Save settings
QSettings
*
settings
=
m_core
->
settings
();
settings
->
beginGroup
(
QLatin1String
(
"CppTools"
));
settings
->
beginGroup
(
QLatin1String
(
"Completion"
));
settings
->
setValue
(
QLatin1String
(
"CaseSensitive"
),
m_completion
->
caseSensitivity
()
==
Qt
::
CaseSensitive
);
settings
->
setValue
(
QLatin1String
(
"AutoInsertBraces"
),
m_completion
->
autoInsertBraces
());
settings
->
endGroup
();
settings
->
endGroup
();
}
void
CppToolsPlugin
::
switchHeaderSource
()
{
if
(
!
m_core
)
...
...
@@ -150,7 +176,12 @@ QFileInfo CppToolsPlugin::findFile(const QDir &dir, const QString &name,
}
// Figure out file type
enum
FileType
{
HeaderFile
,
C_SourceFile
,
CPP_SourceFile
,
UnknownType
};
enum
FileType
{
HeaderFile
,
C_SourceFile
,
CPP_SourceFile
,
UnknownType
};
static
inline
FileType
fileType
(
const
Core
::
MimeDatabase
*
mimeDatase
,
const
QFileInfo
&
fi
)
{
...
...
src/plugins/cpptools/cpptools.h
→
src/plugins/cpptools/cpptools
plugin
.h
View file @
bedca00d
...
...
@@ -64,6 +64,7 @@ public:
bool
initialize
(
const
QStringList
&
arguments
,
QString
*
error_message
);
void
extensionsInitialized
();
void
shutdown
();
CppModelManager
*
cppModelManager
()
{
return
m_modelManager
;
}
QString
correspondingHeaderOrSource
(
const
QString
&
fileName
)
const
;
...
...
@@ -77,6 +78,7 @@ private:
Core
::
ICore
*
m_core
;
int
m_context
;
CppModelManager
*
m_modelManager
;
CppCodeCompletion
*
m_completion
;
static
CppToolsPlugin
*
m_instance
;
};
...
...
src/plugins/projectexplorer/projectexplorer.cpp
View file @
bedca00d
...
...
@@ -1783,22 +1783,25 @@ void ProjectExplorerPlugin::openWithMenuTriggered(QAction *action)
void
ProjectExplorerPlugin
::
updateSessionMenu
()