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
10868e10
Commit
10868e10
authored
Jun 18, 2009
by
dt
Browse files
Merge branch 'master' of git@scm.dev.nokia.troll.no:creator/mainline
parents
4637d562
9a8e724f
Changes
8
Hide whitespace changes
Inline
Side-by-side
share/qtcreator/gdbmacros/gdbmacros.cpp
View file @
10868e10
...
...
@@ -52,7 +52,13 @@
int
qtGhVersion
=
QT_VERSION
;
#ifdef QT_GUI_LIB
#ifndef USE_QT_GUI
# ifdef QT_GUI_LIB
# define USE_QT_GUI 1
# endif
#endif
#if USE_QT_GUI
# include <QtGui/QWidget>
# include <QtGui/QPixmap>
# include <QtGui/QImage>
...
...
@@ -1296,9 +1302,9 @@ static void qDumpQHashNode(QDumper &d)
d
.
disarm
();
}
#if USE_QT_GUI
static
void
qDumpQImage
(
QDumper
&
d
)
{
#ifdef QT_GUI_LIB
const
QImage
&
im
=
*
reinterpret_cast
<
const
QImage
*>
(
d
.
data
);
P
(
d
,
"value"
,
"("
<<
im
.
width
()
<<
"x"
<<
im
.
height
()
<<
")"
);
P
(
d
,
"type"
,
NS
"QImage"
);
...
...
@@ -1312,14 +1318,12 @@ static void qDumpQImage(QDumper &d)
d
.
endHash
();
}
d
.
disarm
();
#else
Q_UNUSED
(
d
);
#endif
}
#endif
#if USE_QT_GUI
static
void
qDumpQImageData
(
QDumper
&
d
)
{
#ifdef QT_GUI_LIB
const
QImage
&
im
=
*
reinterpret_cast
<
const
QImage
*>
(
d
.
data
);
const
QByteArray
ba
(
QByteArray
::
fromRawData
((
const
char
*
)
im
.
bits
(),
im
.
numBytes
()));
P
(
d
,
"type"
,
NS
"QImageData"
);
...
...
@@ -1334,10 +1338,8 @@ static void qDumpQImageData(QDumper &d)
P
(
d
,
"value"
,
ba
);
#endif
d
.
disarm
();
#else
Q_UNUSED
(
d
);
#endif
}
#endif
static
void
qDumpQList
(
QDumper
&
d
)
{
...
...
@@ -2020,18 +2022,16 @@ static void qDumpQObjectSlotList(QDumper &d)
}
#if USE_QT_GUI
static
void
qDumpQPixmap
(
QDumper
&
d
)
{
#ifdef QT_GUI_LIB
const
QPixmap
&
im
=
*
reinterpret_cast
<
const
QPixmap
*>
(
d
.
data
);
P
(
d
,
"value"
,
"("
<<
im
.
width
()
<<
"x"
<<
im
.
height
()
<<
")"
);
P
(
d
,
"type"
,
NS
"QPixmap"
);
P
(
d
,
"numchild"
,
"0"
);
d
.
disarm
();
#else
Q_UNUSED
(
d
);
#endif
}
#endif
static
void
qDumpQSet
(
QDumper
&
d
)
{
...
...
@@ -2691,10 +2691,12 @@ static void handleProtocolVersion2and3(QDumper & d)
qDumpStdList
(
d
);
break
;
case
'I'
:
#if USE_QT_GUI
if
(
isEqual
(
type
,
"QImage"
))
qDumpQImage
(
d
);
else
if
(
isEqual
(
type
,
"QImageData"
))
qDumpQImageData
(
d
);
#endif
break
;
case
'L'
:
if
(
isEqual
(
type
,
"QList"
))
...
...
@@ -2731,8 +2733,10 @@ static void handleProtocolVersion2and3(QDumper & d)
qDumpQObjectSlotList
(
d
);
break
;
case
'P'
:
#if USE_QT_GUI
if
(
isEqual
(
type
,
"QPixmap"
))
qDumpQPixmap
(
d
);
#endif
break
;
case
'S'
:
if
(
isEqual
(
type
,
"QSet"
))
...
...
@@ -2854,7 +2858,9 @@ void *qDumpObjectData440(
"
\"
"
NS
"QVariant
\"
,"
"
\"
"
NS
"QVector
\"
,"
"
\"
"
NS
"QWeakPointer
\"
,"
#if USE_QT_GUI
"
\"
"
NS
"QWidget
\"
,"
#endif
#ifdef Q_OS_WIN
"
\"
basic_string
\"
,"
"
\"
list
\"
,"
...
...
@@ -2884,7 +2890,7 @@ void *qDumpObjectData440(
<<
""
NS
"QString=
\"
"
<<
sizeof
(
QString
)
<<
"
\"
,"
<<
""
NS
"QStringList=
\"
"
<<
sizeof
(
QStringList
)
<<
"
\"
,"
<<
""
NS
"QObject=
\"
"
<<
sizeof
(
QObject
)
<<
"
\"
,"
#if
def
QT_GUI
_LIB
#if
USE_
QT_GUI
<<
""
NS
"QWidget=
\"
"
<<
sizeof
(
QWidget
)
<<
"
\"
,"
#endif
#ifdef Q_OS_WIN
...
...
share/qtcreator/gdbmacros/gdbmacros.pro
View file @
10868e10
TEMPLATE
=
lib
CONFIG
+=
shared
QT
=
core
linux
-*
{
CONFIG
-=
release
CONFIG
+=
debug
}
SOURCES
=
gdbmacros
.
cpp
true
{
DEFINES
+=
USE_QT_GUI
=
0
QT
=
core
}
else
{
DEFINES
+=
USE_QT_GUI
=
1
QT
=
core
gui
}
exists
(
$$
QMAKE_INCDIR_QT
/
QtCore
/
private
/
qobject_p
.
h
)
{
DEFINES
+=
HAS_QOBJECT_P_H
}
src/plugins/cpptools/cppmodelmanager.cpp
View file @
10868e10
...
...
@@ -529,6 +529,47 @@ protected:
return
true
;
}
virtual
bool
visit
(
CastExpressionAST
*
ast
)
{
if
(
ast
->
lparen_token
&&
ast
->
type_id
&&
ast
->
rparen_token
&&
ast
->
expression
)
{
if
(
TypeIdAST
*
cast_type_id
=
ast
->
type_id
->
asTypeId
())
{
SpecifierAST
*
type_specifier
=
cast_type_id
->
type_specifier
;
if
(
!
cast_type_id
->
declarator
&&
type_specifier
&&
!
type_specifier
->
next
&&
type_specifier
->
asNamedTypeSpecifier
()
&&
ast
->
expression
&&
ast
->
expression
->
asUnaryExpression
())
{
// this ast node is ambigious, e.g.
// (a) + b
// it can be parsed as
// ((a) + b)
// or
// (a) (+b)
accept
(
ast
->
expression
);
return
false
;
}
}
}
return
true
;
}
virtual
bool
visit
(
SizeofExpressionAST
*
ast
)
{
if
(
ast
->
lparen_token
&&
ast
->
expression
&&
ast
->
rparen_token
)
{
if
(
TypeIdAST
*
type_id
=
ast
->
expression
->
asTypeId
())
{
SpecifierAST
*
type_specifier
=
type_id
->
type_specifier
;
if
(
!
type_id
->
declarator
&&
type_specifier
&&
!
type_specifier
->
next
&&
type_specifier
->
asNamedTypeSpecifier
())
{
// this sizeof expression is ambiguos, e.g.
// sizeof (a)
// `a' can be a typeid or a nested-expression.
return
false
;
}
}
}
return
true
;
}
LookupContext
lookupContext
(
unsigned
line
,
unsigned
column
)
const
;
private:
...
...
src/plugins/debugger/debuggeroutputwindow.cpp
View file @
10868e10
...
...
@@ -68,6 +68,7 @@ public:
DebuggerPane
(
QWidget
*
parent
)
:
QPlainTextEdit
(
parent
)
{
setMaximumBlockCount
(
100000
);
m_clearContentsAction
=
new
QAction
(
this
);
m_clearContentsAction
->
setText
(
tr
(
"Clear contents"
));
m_clearContentsAction
->
setEnabled
(
true
);
...
...
src/plugins/debugger/dumper.pro
View file @
10868e10
...
...
@@ -14,5 +14,13 @@ CONFIG += debug
QMAKE_CXXFLAGS
*=
-
O2
}
true
{
DEFINES
+=
USE_QT_GUI
=
0
QT
=
core
}
else
{
DEFINES
+=
USE_QT_GUI
=
1
QT
=
core
gui
}
SOURCES
+=
..
/../../
share
/
qtcreator
/
gdbmacros
/
gdbmacros
.
cpp
src/plugins/debugger/watchhandler.cpp
View file @
10868e10
...
...
@@ -81,16 +81,16 @@ static int generationCounter = 0;
class
WatchItem
:
public
WatchData
{
public:
WatchItem
()
{
parent
=
0
;
fetched
=
0
;
}
WatchItem
()
{
parent
=
0
;
fetched
Triggered
=
0
;
}
WatchItem
(
const
WatchData
&
data
)
:
WatchData
(
data
)
{
parent
=
0
;
fetched
=
0
;
}
{
parent
=
0
;
fetched
Triggered
=
0
;
}
void
setData
(
const
WatchData
&
data
)
{
static_cast
<
WatchData
&>
(
*
this
)
=
data
;
}
WatchItem
*
parent
;
bool
fetched
;
// children fetch has been triggered
bool
fetched
Triggered
;
// children fetch has been triggered
QList
<
WatchItem
*>
children
;
// fetched children
};
...
...
@@ -309,7 +309,7 @@ WatchModel::WatchModel(WatchHandler *handler, WatchType type)
item
->
childCount
=
1
;
item
->
state
=
0
;
item
->
parent
=
m_root
;
item
->
fetched
=
true
;
item
->
fetched
Triggered
=
true
;
m_root
->
children
.
append
(
item
);
}
...
...
@@ -501,14 +501,15 @@ static QString niceType(QString type)
bool
WatchModel
::
canFetchMore
(
const
QModelIndex
&
index
)
const
{
return
index
.
isValid
()
&&
!
watchItem
(
index
)
->
fetched
;
return
index
.
isValid
()
&&
!
watchItem
(
index
)
->
fetched
Triggered
;
}
void
WatchModel
::
fetchMore
(
const
QModelIndex
&
index
)
{
QTC_ASSERT
(
index
.
isValid
(),
return
);
QTC_ASSERT
(
!
watchItem
(
index
)
->
fetched
,
return
);
QTC_ASSERT
(
!
watchItem
(
index
)
->
fetched
Triggered
,
return
);
if
(
WatchItem
*
item
=
watchItem
(
index
))
{
item
->
fetchedTriggered
=
true
;
WatchData
data
=
*
item
;
data
.
setChildrenNeeded
();
emit
m_handler
->
watchDataUpdateNeeded
(
data
);
...
...
src/shared/cplusplus/AST.h
View file @
10868e10
...
...
@@ -1980,7 +1980,9 @@ class CPLUSPLUS_EXPORT SizeofExpressionAST: public ExpressionAST
{
public:
unsigned
sizeof_token
;
unsigned
lparen_token
;
ExpressionAST
*
expression
;
unsigned
rparen_token
;
public:
virtual
SizeofExpressionAST
*
asSizeofExpression
()
...
...
src/shared/cplusplus/Parser.cpp
View file @
10868e10
...
...
@@ -3158,7 +3158,8 @@ bool Parser::parseUnaryExpression(ExpressionAST *&node)
if
(
LA
()
==
T_LPAREN
)
{
unsigned
lparen_token
=
consumeToken
();
if
(
parseTypeId
(
ast
->
expression
)
&&
LA
()
==
T_RPAREN
)
{
consumeToken
();
ast
->
lparen_token
=
lparen_token
;
ast
->
rparen_token
=
consumeToken
();
node
=
ast
;
return
true
;
}
else
{
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment