Skip to content
GitLab
Menu
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
b4787c0a
Commit
b4787c0a
authored
May 07, 2009
by
hjk
Browse files
debugger: remove enum DebuggerType, the engine pointer is enough.
parent
f70ce8dc
Changes
2
Hide whitespace changes
Inline
Side-by-side
src/plugins/debugger/debuggermanager.cpp
View file @
b4787c0a
...
...
@@ -439,32 +439,12 @@ QList<Core::IOptionsPage*> DebuggerManager::initializeEngines(const QStringList
winEngine
=
createWinEngine
(
this
,
cdbDisabled
,
&
rc
);
scriptEngine
=
createScriptEngine
(
this
,
&
rc
);
tcfEngine
=
createTcfEngine
(
this
,
&
rc
);
setDebuggerType
(
NoDebugger
)
;
m_engine
=
0
;
if
(
Debugger
::
Constants
::
Internal
::
debug
)
qDebug
()
<<
Q_FUNC_INFO
<<
gdbEngine
<<
winEngine
<<
scriptEngine
<<
rc
.
size
();
return
rc
;
}
void
DebuggerManager
::
setDebuggerType
(
DebuggerType
type
)
{
switch
(
type
)
{
case
GdbDebugger
:
m_engine
=
gdbEngine
;
break
;
case
ScriptDebugger
:
m_engine
=
scriptEngine
;
break
;
case
WinDebugger
:
m_engine
=
winEngine
;
break
;
case
TcfDebugger
:
m_engine
=
tcfEngine
;
break
;
case
NoDebugger
:
m_engine
=
0
;
}
}
IDebuggerEngine
*
DebuggerManager
::
engine
()
{
return
m_engine
;
...
...
@@ -798,42 +778,42 @@ void DebuggerManager::setConfigValue(const QString &name, const QVariant &value)
}
// Figure out the debugger type of an executable
static
Debugger
Manager
::
DebuggerTyp
e
determineDebugger
Typ
e
(
const
QString
&
executable
,
static
I
Debugger
Engin
e
*
determineDebugger
Engin
e
(
const
QString
&
executable
,
QString
*
errorMessage
)
{
if
(
executable
.
endsWith
(
_
(
".js"
)))
return
DebuggerManager
::
ScriptDebugger
;
return
scriptEngine
;
#ifndef Q_OS_WIN
Q_UNUSED
(
errorMessage
)
return
DebuggerManager
::
GdbDebugger
;
return
gdbEngine
;
#else
// If a file has PDB files, it has been compiled by VS.
QStringList
pdbFiles
;
if
(
!
getPDBFiles
(
executable
,
&
pdbFiles
,
errorMessage
))
return
DebuggerManager
::
NoDebugger
;
return
0
;
if
(
pdbFiles
.
empty
())
return
DebuggerManager
::
GdbDebugger
;
return
gdbEngine
;
// We need the CDB debugger in order to be able to debug VS
// executables
if
(
!
winEngine
)
{
*
errorMessage
=
DebuggerManager
::
tr
(
"Debugging VS executables is not supported."
);
return
DebuggerManager
::
NoDebugger
;
return
0
;
}
return
DebuggerManager
::
WinDebugger
;
return
winEngine
;
#endif
}
// Figure out the debugger type of a PID
static
Debugger
Manager
::
DebuggerTyp
e
determineDebugger
Typ
e
(
int
/* pid */
,
static
I
Debugger
Engin
e
*
determineDebugger
Engin
e
(
int
/* pid */
,
QString
*
/*errorMessage*/
)
{
#ifdef Q_OS_WIN
// Preferably Windows debugger
return
winEngine
?
DebuggerManager
::
WinDebugger
:
DebuggerManager
::
GdbDebugger
;
return
winEngine
?
winEngine
:
gdbEngine
;
#else
return
DebuggerManager
::
GdbDebugger
;
return
gdbEngine
;
#endif
}
...
...
@@ -994,25 +974,23 @@ void DebuggerManager::startNewDebugger(DebuggerRunControl *runControl)
emit
debugModeRequested
();
DebuggerType
type
=
NoDebugger
;
QString
errorMessage
;
if
(
startMode
()
==
AttachExternal
)
typ
e
=
determineDebugger
Typ
e
(
m_attachedPID
,
&
errorMessage
);
m_engin
e
=
determineDebugger
Engin
e
(
m_attachedPID
,
&
errorMessage
);
else
if
(
startMode
()
==
AttachTcf
)
typ
e
=
T
cf
Debugger
;
m_engin
e
=
t
cf
Engine
;
else
typ
e
=
determineDebugger
Typ
e
(
m_executable
,
&
errorMessage
);
m_engin
e
=
determineDebugger
Engin
e
(
m_executable
,
&
errorMessage
);
if
(
type
==
NoDebugger
)
{
if
(
!
m_engine
)
{
QMessageBox
::
warning
(
mainWindow
(),
tr
(
"Warning"
),
tr
(
"Cannot debug '%1': %2"
).
arg
(
m_executable
,
errorMessage
));
debuggingFinished
();
return
;
}
if
(
Debugger
::
Constants
::
Internal
::
debug
)
qDebug
()
<<
m_executable
<<
typ
e
;
qDebug
()
<<
m_executable
<<
m_engin
e
;
setDebuggerType
(
type
);
setBusyCursor
(
false
);
setStatus
(
DebuggerProcessStartingUp
);
if
(
!
m_engine
->
startDebugger
())
{
...
...
src/plugins/debugger/debuggermanager.h
View file @
b4787c0a
...
...
@@ -204,10 +204,6 @@ public:
QMainWindow
*
mainWindow
()
const
{
return
m_mainWindow
;
}
QLabel
*
statusLabel
()
const
{
return
m_statusLabel
;
}
enum
DebuggerType
{
NoDebugger
,
GdbDebugger
,
ScriptDebugger
,
WinDebugger
,
TcfDebugger
};
public
slots
:
void
startNewDebugger
(
DebuggerRunControl
*
runControl
);
void
exitDebugger
();
...
...
@@ -371,7 +367,6 @@ public:
private:
void
init
();
void
setDebuggerType
(
DebuggerType
type
);
void
runTest
(
const
QString
&
fileName
);
QDockWidget
*
createDockForWidget
(
QWidget
*
widget
);
Q_SLOT
void
createNewDock
(
QWidget
*
widget
);
...
...
@@ -384,7 +379,6 @@ private:
void
setToolTipExpression
(
const
QPoint
&
pos
,
const
QString
&
exp0
);
DebuggerRunControl
*
m_runControl
;
DebuggerType
m_debuggerType
;
/// Views
QMainWindow
*
m_mainWindow
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a 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