forked from qt-creator/qt-creator
remove trailing whitespace
doing it in 1.3 as well to avoid possible later conflicts
This commit is contained in:
@@ -368,7 +368,7 @@ void CMakeRunPage::initializePage()
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
m_generatorComboBox->clear();
|
||||
// Find out whether we have multiple msvc versions
|
||||
QStringList msvcVersions = ProjectExplorer::ToolChain::availableMSVCVersions();
|
||||
@@ -412,7 +412,7 @@ void CMakeRunPage::runCMake()
|
||||
generator = "-GCodeBlocks - NMake Makefiles";
|
||||
m_cmakeWizard->setMsvcVersion(version);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
#else // Q_OS_WIN
|
||||
QString generator = QLatin1String("-GCodeBlocks - Unix Makefiles");
|
||||
|
||||
@@ -51,7 +51,7 @@ CMakeManager::CMakeManager(CMakeSettingsPage *cmakeSettingsPage)
|
||||
{
|
||||
Core::UniqueIDManager *uidm = Core::UniqueIDManager::instance();
|
||||
m_projectContext = uidm->uniqueIdentifier(CMakeProjectManager::Constants::PROJECTCONTEXT);
|
||||
m_projectLanguage = uidm->uniqueIdentifier(ProjectExplorer::Constants::LANG_CXX);
|
||||
m_projectLanguage = uidm->uniqueIdentifier(ProjectExplorer::Constants::LANG_CXX);
|
||||
}
|
||||
|
||||
int CMakeManager::projectContext() const
|
||||
@@ -115,7 +115,7 @@ void CMakeManager::createXmlFile(QProcess *proc, const QStringList &arguments, c
|
||||
proc->setProcessChannelMode(QProcess::MergedChannels);
|
||||
proc->setEnvironment(env.toStringList());
|
||||
|
||||
const QString srcdir = buildDirectory.exists(QLatin1String("CMakeCache.txt")) ? QString(QLatin1Char('.')) : sourceDirectory;
|
||||
const QString srcdir = buildDirectory.exists(QLatin1String("CMakeCache.txt")) ? QString(QLatin1Char('.')) : sourceDirectory;
|
||||
proc->start(cmakeExecutable(), QStringList() << srcdir << arguments << generator);
|
||||
}
|
||||
|
||||
|
||||
@@ -20,6 +20,6 @@ SOURCES = cmakeproject.cpp \
|
||||
cmakeopenprojectwizard.cpp \
|
||||
cmakebuildenvironmentwidget.cpp
|
||||
RESOURCES += cmakeproject.qrc
|
||||
FORMS +=
|
||||
FORMS +=
|
||||
|
||||
OTHER_FILES += CMakeProjectManager.pluginspec
|
||||
|
||||
@@ -126,7 +126,7 @@ public:
|
||||
|
||||
protected:
|
||||
void updateToolTipWithKeySequence();
|
||||
|
||||
|
||||
QAction *m_action;
|
||||
QList<CommandLocation> m_locations;
|
||||
QString m_toolTip;
|
||||
|
||||
@@ -40,7 +40,7 @@ namespace Core {
|
||||
namespace Internal {
|
||||
|
||||
struct ShortcutItem;
|
||||
|
||||
|
||||
class CommandsFile : public QObject
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
@@ -166,7 +166,7 @@ FORMS += dialogs/newdialog.ui \
|
||||
generalsettings.ui
|
||||
RESOURCES += core.qrc \
|
||||
fancyactionbar.qrc
|
||||
unix:!macx {
|
||||
unix:!macx {
|
||||
images.files = images/qtcreator_logo_*.png
|
||||
images.path = /share/pixmaps
|
||||
INSTALLS += images
|
||||
|
||||
@@ -120,7 +120,7 @@ public:
|
||||
const QString &contents = QString());
|
||||
|
||||
bool openExternalEditor(const QString &fileName, const QString &editorKind);
|
||||
|
||||
|
||||
QStringList getOpenFileNames() const;
|
||||
QString getOpenWithEditorKind(const QString &fileName, bool *isExternalEditor = 0) const;
|
||||
|
||||
|
||||
@@ -170,7 +170,7 @@ public:
|
||||
|
||||
inline bool isView() const { return m_view != 0; }
|
||||
inline bool isRoot() const { return m_isRoot; }
|
||||
|
||||
|
||||
inline bool isSplitter() const { return m_splitter != 0; }
|
||||
inline Core::IEditor *editor() const { return m_view ? m_view->currentEditor() : 0; }
|
||||
inline QList<Core::IEditor *> editors() const { return m_view ? m_view->editors() : QList<Core::IEditor*>(); }
|
||||
|
||||
@@ -26,7 +26,7 @@
|
||||
** contact the sales department at http://qt.nokia.com/contact.
|
||||
**
|
||||
**************************************************************************/
|
||||
|
||||
|
||||
#ifndef OPENEDITORSVIEW_H
|
||||
#define OPENEDITORSVIEW_H
|
||||
|
||||
|
||||
@@ -284,7 +284,7 @@ public:
|
||||
|
||||
void mousePressEvent(QMouseEvent *ev)
|
||||
{
|
||||
if (ev->modifiers() & Qt::ShiftModifier)
|
||||
if (ev->modifiers() & Qt::ShiftModifier)
|
||||
Utils::StyleHelper::setBaseColor(QColorDialog::getColor(Utils::StyleHelper::baseColor(), m_parent));
|
||||
}
|
||||
private:
|
||||
|
||||
@@ -58,7 +58,7 @@ public:
|
||||
virtual QString displayName() = 0;
|
||||
virtual QKeySequence activationSequence();
|
||||
// This design is not optimal, think about it again once we need to extend it
|
||||
// It could be implemented as returning an object which has both the widget
|
||||
// It could be implemented as returning an object which has both the widget
|
||||
// and the docktoolbar widgets
|
||||
// Similar to how IView
|
||||
virtual NavigationView createWidget() = 0;
|
||||
|
||||
@@ -138,7 +138,7 @@ static OutputPaneManager *m_instance = 0;
|
||||
|
||||
void OutputPaneManager::create()
|
||||
{
|
||||
m_instance = new OutputPaneManager;
|
||||
m_instance = new OutputPaneManager;
|
||||
}
|
||||
|
||||
void OutputPaneManager::destroy()
|
||||
|
||||
@@ -37,13 +37,13 @@
|
||||
#include <QtGui/QPainter>
|
||||
#include <QtGui/QWidget>
|
||||
|
||||
/*
|
||||
/*
|
||||
* This is a set of helper classes to allow for widget animations in
|
||||
* the style. Its mostly taken from Vista style so it should be fully documented
|
||||
* there.
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
class Animation
|
||||
{
|
||||
public :
|
||||
@@ -92,7 +92,7 @@ public:
|
||||
void startAnimation(Animation *);
|
||||
void stopAnimation(const QWidget *);
|
||||
Animation* widgetAnimation(const QWidget *) const;
|
||||
|
||||
|
||||
private:
|
||||
QBasicTimer animationTimer;
|
||||
QList <Animation*> animations;
|
||||
|
||||
@@ -82,8 +82,8 @@ VersionDialog::VersionDialog(QWidget *parent)
|
||||
"The program is provided AS IS with NO WARRANTY OF ANY KIND, "
|
||||
"INCLUDING THE WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A "
|
||||
"PARTICULAR PURPOSE.<br/>")
|
||||
.arg(version, QLatin1String(QT_VERSION_STR), QString::number(QSysInfo::WordSize),
|
||||
QLatin1String(__DATE__), QLatin1String(__TIME__), QLatin1String(IDE_YEAR),
|
||||
.arg(version, QLatin1String(QT_VERSION_STR), QString::number(QSysInfo::WordSize),
|
||||
QLatin1String(__DATE__), QLatin1String(__TIME__), QLatin1String(IDE_YEAR),
|
||||
(QLatin1String(IDE_AUTHOR)), ideRev);
|
||||
|
||||
QLabel *copyRightLabel = new QLabel(description);
|
||||
|
||||
@@ -78,7 +78,7 @@ ClassNamePage::ClassNamePage(QWidget *parent) :
|
||||
|
||||
connect(m_newClassWidget, SIGNAL(validChanged()), this, SLOT(slotValidChanged()));
|
||||
|
||||
QVBoxLayout *pageLayout = new QVBoxLayout(this);
|
||||
QVBoxLayout *pageLayout = new QVBoxLayout(this);
|
||||
pageLayout->addWidget(m_newClassWidget);
|
||||
QSpacerItem *vSpacer = new QSpacerItem(0, 0, QSizePolicy::Ignored, QSizePolicy::Expanding);
|
||||
pageLayout->addItem(vSpacer);
|
||||
|
||||
@@ -759,7 +759,7 @@ CPlusPlus::Symbol *CPPEditor::findCanonicalSymbol(const QTextCursor &cursor,
|
||||
|
||||
|
||||
void CPPEditor::findUsages()
|
||||
{
|
||||
{
|
||||
if (Symbol *canonicalSymbol = markSymbols()) {
|
||||
m_modelManager->findUsages(canonicalSymbol);
|
||||
}
|
||||
@@ -1802,7 +1802,7 @@ const char *CPPEditorEditable::kind() const
|
||||
|
||||
bool CPPEditorEditable::open(const QString & fileName)
|
||||
{
|
||||
bool b = TextEditor::BaseTextEditorEditable::open(fileName);
|
||||
bool b = TextEditor::BaseTextEditorEditable::open(fileName);
|
||||
editor()->setMimeType(Core::ICore::instance()->mimeDatabase()->findByFile(QFileInfo(fileName)).type());
|
||||
return b;
|
||||
}
|
||||
|
||||
@@ -259,7 +259,7 @@ bool CppPlugin::initialize(const QStringList & /*arguments*/, QString *errorMess
|
||||
| TextEditor::TextEditorActionHandler::UnCollapseAll);
|
||||
|
||||
m_actionHandler->initializeActions();
|
||||
|
||||
|
||||
contextMenu->addAction(createSeparator(am, this, context, CppEditor::Constants::SEPARATOR));
|
||||
|
||||
cmd = am->command(TextEditor::Constants::AUTO_INDENT_SELECTION);
|
||||
|
||||
@@ -55,7 +55,7 @@ struct CppFileSettings {
|
||||
|
||||
void toSettings(QSettings *) const;
|
||||
void fromSettings(QSettings *);
|
||||
bool applySuffixesToMimeDB();
|
||||
bool applySuffixesToMimeDB();
|
||||
|
||||
// Convenience to return a license template completely formatted.
|
||||
// Currently made public in
|
||||
@@ -77,7 +77,7 @@ public:
|
||||
CppFileSettings settings() const;
|
||||
void setSettings(const CppFileSettings &s);
|
||||
|
||||
private slots:
|
||||
private slots:
|
||||
void slotEdit();
|
||||
|
||||
private:
|
||||
|
||||
@@ -104,7 +104,7 @@ public:
|
||||
|
||||
public Q_SLOTS:
|
||||
void updateModifiedSourceFiles();
|
||||
virtual void updateSourceFiles(const QStringList &sourceFiles) = 0;
|
||||
virtual void updateSourceFiles(const QStringList &sourceFiles) = 0;
|
||||
virtual void GC() = 0;
|
||||
};
|
||||
|
||||
|
||||
@@ -130,7 +130,7 @@ public:
|
||||
// return;
|
||||
if (m_data->markerLineNumber != lineNumber) {
|
||||
m_data->markerLineNumber = lineNumber;
|
||||
// FIXME: should we tell gdb about the change?
|
||||
// FIXME: should we tell gdb about the change?
|
||||
// Ignore it for now, as we would require re-compilation
|
||||
// and debugger re-start anyway.
|
||||
if (0 && !m_data->bpLineNumber.isEmpty()) {
|
||||
@@ -171,10 +171,10 @@ BreakpointData::BreakpointData(BreakHandler *handler)
|
||||
bpMultiple = false;
|
||||
//#if defined(Q_OS_MAC)
|
||||
// // full names do not work on Mac/MI
|
||||
useFullPath = false;
|
||||
useFullPath = false;
|
||||
//#else
|
||||
// //where = m_manager->shortName(data->fileName);
|
||||
// useFullPath = true;
|
||||
// useFullPath = true;
|
||||
//#endif
|
||||
}
|
||||
|
||||
@@ -491,7 +491,7 @@ QVariant BreakHandler::data(const QModelIndex &mi, int role) const
|
||||
// str = data->markerFileName;
|
||||
str = str.isEmpty() ? empty : str;
|
||||
if (data->useFullPath)
|
||||
str = "/.../" + str;
|
||||
str = "/.../" + str;
|
||||
return str;
|
||||
}
|
||||
if (role == Qt::UserRole)
|
||||
@@ -574,7 +574,7 @@ bool BreakHandler::setData(const QModelIndex &mi, const QVariant &value, int rol
|
||||
}
|
||||
return true;
|
||||
}
|
||||
default: {
|
||||
default: {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -318,7 +318,7 @@ void BreakWindow::resizeColumnsToContents()
|
||||
void BreakWindow::setAlwaysResizeColumnsToContents(bool on)
|
||||
{
|
||||
m_alwaysResizeColumnsToContents = on;
|
||||
QHeaderView::ResizeMode mode = on
|
||||
QHeaderView::ResizeMode mode = on
|
||||
? QHeaderView::ResizeToContents : QHeaderView::Interactive;
|
||||
for (int i = model()->columnCount(); --i >= 0; )
|
||||
header()->setResizeMode(i, mode);
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# Detect presence of "Debugging Tools For Windows"
|
||||
# in case VS compilers are used.
|
||||
# in case VS compilers are used.
|
||||
|
||||
win32 {
|
||||
contains(QMAKE_CXX, cl) {
|
||||
|
||||
@@ -105,7 +105,7 @@ void CDBBreakPoint::clear()
|
||||
ignoreCount = 0;
|
||||
oneShot = false;
|
||||
enabled = true;
|
||||
clearExpressionData();
|
||||
clearExpressionData();
|
||||
}
|
||||
|
||||
void CDBBreakPoint::clearExpressionData()
|
||||
@@ -516,7 +516,7 @@ bool CDBBreakPoint::synchronizeBreakPoints(CIDebugControl* debugControl,
|
||||
CIDebugSymbols *syms,
|
||||
BreakHandler *handler,
|
||||
QString *errorMessage, QStringList *warnings)
|
||||
{
|
||||
{
|
||||
errorMessage->clear();
|
||||
warnings->clear();
|
||||
// Do an initial check whether we are in a state that allows
|
||||
|
||||
@@ -308,7 +308,7 @@ CdbDebugEnginePrivate::CdbDebugEnginePrivate(DebuggerManager *manager,
|
||||
m_eventThreadId(-1),
|
||||
m_interruptArticifialThreadId(-1),
|
||||
m_ignoreInitialBreakPoint(false),
|
||||
m_interrupted(false),
|
||||
m_interrupted(false),
|
||||
m_watchTimer(-1),
|
||||
m_debugEventCallBack(engine),
|
||||
m_engine(engine),
|
||||
@@ -788,7 +788,7 @@ bool CdbDebugEngine::startDebuggerWithExecutable(DebuggerStartMode sm, QString *
|
||||
}
|
||||
|
||||
void CdbDebugEnginePrivate::processCreatedAttached(ULONG64 processHandle, ULONG64 initialThreadHandle)
|
||||
{
|
||||
{
|
||||
m_engine->setState(InferiorRunningRequested, Q_FUNC_INFO, __LINE__);
|
||||
setDebuggeeHandles(reinterpret_cast<HANDLE>(processHandle), reinterpret_cast<HANDLE>(initialThreadHandle));
|
||||
ULONG currentThreadId;
|
||||
@@ -845,7 +845,7 @@ bool CdbDebugEnginePrivate::endInferior(EndInferiorAction action, QString *error
|
||||
}
|
||||
bool success = false;
|
||||
switch (action) {
|
||||
case DetachInferior: {
|
||||
case DetachInferior: {
|
||||
const HRESULT hr = m_cif.debugClient->DetachCurrentProcess();
|
||||
if (SUCCEEDED(hr)) {
|
||||
success = true;
|
||||
@@ -1089,7 +1089,7 @@ bool CdbDebugEngine::step(unsigned long executionStatus)
|
||||
str << 'p';
|
||||
break;
|
||||
case DEBUG_STATUS_STEP_INTO:
|
||||
str << 't';
|
||||
str << 't';
|
||||
break;
|
||||
case CdbExtendedExecutionStatusStepOut:
|
||||
str << "gu";
|
||||
@@ -1126,7 +1126,7 @@ void CdbDebugEngine::nextExec()
|
||||
}
|
||||
|
||||
void CdbDebugEngine::stepIExec()
|
||||
{
|
||||
{
|
||||
stepExec(); // Step into by instruction (figured out by step)
|
||||
}
|
||||
|
||||
@@ -1143,7 +1143,7 @@ void CdbDebugEngine::stepOutExec()
|
||||
|
||||
void CdbDebugEngine::continueInferior()
|
||||
{
|
||||
QString errorMessage;
|
||||
QString errorMessage;
|
||||
if (!m_d->continueInferior(&errorMessage))
|
||||
warning(msgFunctionFailed(Q_FUNC_INFO, errorMessage));
|
||||
}
|
||||
@@ -1381,7 +1381,7 @@ void CdbDebugEngine::activateFrame(int frameIndex)
|
||||
QString errorMessage;
|
||||
bool success = false;
|
||||
StackHandler *stackHandler = manager()->stackHandler();
|
||||
do {
|
||||
do {
|
||||
WatchHandler *watchHandler = manager()->watchHandler();
|
||||
const int oldIndex = stackHandler->currentIndex();
|
||||
if (frameIndex >= stackHandler->stackSize()) {
|
||||
@@ -1493,7 +1493,7 @@ void CdbDebugEngine::fetchDisassembler(DisassemblerViewAgent *agent,
|
||||
bool ok = false;
|
||||
QString errorMessage;
|
||||
do {
|
||||
// get address
|
||||
// get address
|
||||
QString address;
|
||||
if (!frame.file.isEmpty())
|
||||
address = frame.address;
|
||||
@@ -1780,7 +1780,7 @@ bool CdbDebugEnginePrivate::setCDBThreadId(unsigned long threadId, QString *erro
|
||||
return false;
|
||||
}
|
||||
const QString msg = CdbDebugEngine::tr("Changing threads: %1 -> %2").arg(currentThreadId).arg(threadId);
|
||||
m_engine->showStatusMessage(msg, 500);
|
||||
m_engine->showStatusMessage(msg, 500);
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -1855,7 +1855,7 @@ void CdbDebugEnginePrivate::updateStackTrace()
|
||||
break;
|
||||
}
|
||||
// Visibly warn the users about missing top frames/all frames, as they otherwise
|
||||
// might think stepping is broken.
|
||||
// might think stepping is broken.
|
||||
if (!stackFrames.at(0).isUsable()) {
|
||||
const QString topFunction = count ? stackFrames.at(0).function : QString();
|
||||
const QString msg = current >= 0 ?
|
||||
|
||||
@@ -73,8 +73,8 @@ public:
|
||||
virtual void nextExec();
|
||||
virtual void stepIExec();
|
||||
virtual void nextIExec();
|
||||
|
||||
virtual void continueInferior();
|
||||
|
||||
virtual void continueInferior();
|
||||
virtual void interruptInferior();
|
||||
|
||||
virtual void runToLineExec(const QString &fileName, int lineNumber);
|
||||
@@ -110,7 +110,7 @@ protected:
|
||||
private slots:
|
||||
void slotConsoleStubStarted();
|
||||
void slotConsoleStubError(const QString &msg);
|
||||
void slotConsoleStubTerminated();
|
||||
void slotConsoleStubTerminated();
|
||||
void warning(const QString &w);
|
||||
|
||||
private:
|
||||
|
||||
@@ -157,7 +157,7 @@ struct CdbDebugEnginePrivate
|
||||
const QSharedPointer<CdbOptions> m_options;
|
||||
HANDLE m_hDebuggeeProcess;
|
||||
HANDLE m_hDebuggeeThread;
|
||||
bool m_interrupted;
|
||||
bool m_interrupted;
|
||||
int m_currentThreadId;
|
||||
int m_eventThreadId;
|
||||
int m_interruptArticifialThreadId;
|
||||
@@ -167,7 +167,7 @@ struct CdbDebugEnginePrivate
|
||||
int m_watchTimer;
|
||||
CdbComInterfaces m_cif;
|
||||
CdbDebugEventCallback m_debugEventCallBack;
|
||||
CdbDebugOutput m_debugOutputCallBack;
|
||||
CdbDebugOutput m_debugOutputCallBack;
|
||||
QSharedPointer<CdbDumperHelper> m_dumper;
|
||||
QString m_baseImagePath;
|
||||
|
||||
|
||||
@@ -121,7 +121,7 @@ STDMETHODIMP CdbDebugEventCallbackBase::CreateProcess(
|
||||
__in ULONG64 /* ThreadDataOffset */,
|
||||
__in ULONG64 /* StartOffset */
|
||||
)
|
||||
{
|
||||
{
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
@@ -143,7 +143,7 @@ STDMETHODIMP CdbDebugEventCallbackBase::LoadModule(
|
||||
__in ULONG /* CheckSum */,
|
||||
__in ULONG /* TimeDateStamp */
|
||||
)
|
||||
{
|
||||
{
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
@@ -196,7 +196,7 @@ STDMETHODIMP CdbDebugEventCallbackBase::ChangeSymbolState(
|
||||
__in ULONG /* Flags */,
|
||||
__in ULONG64 /* Argument */
|
||||
)
|
||||
{
|
||||
{
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
|
||||
@@ -331,7 +331,7 @@ void CdbDumperInitThread ::run()
|
||||
case CdbDumperHelper::Loaded: // Injection load succeeded, ideally
|
||||
break;
|
||||
}
|
||||
// Perform remaining initialization
|
||||
// Perform remaining initialization
|
||||
emit statusMessage(QCoreApplication::translate("Debugger::Internal::CdbDumperHelper", "Initializing dumpers..."), 60000);
|
||||
m_ok = m_helper.initResolveSymbols(m_errorMessage) && m_helper.initKnownTypes(m_errorMessage);
|
||||
}
|
||||
@@ -656,7 +656,7 @@ CdbDumperHelper::DumpResult CdbDumperHelper::dumpTypeI(const WatchData &wd, bool
|
||||
{
|
||||
errorMessage->clear();
|
||||
// Check failure cache and supported types
|
||||
if (m_state == Disabled) {
|
||||
if (m_state == Disabled) {
|
||||
*errorMessage =m_msgDisabled;
|
||||
return DumpNotHandled;
|
||||
}
|
||||
|
||||
@@ -85,7 +85,7 @@ ExceptionBlocker::ExceptionBlocker(CIDebugControl *ctrl, ULONG code, Mode m) :
|
||||
{
|
||||
// Retrieve current state
|
||||
memset(&m_oldParameters, 0, sizeof(DEBUG_EXCEPTION_FILTER_PARAMETERS));
|
||||
if (getExceptionParameters(ctrl, code, &m_oldParameters, &m_errorString)) {
|
||||
if (getExceptionParameters(ctrl, code, &m_oldParameters, &m_errorString)) {
|
||||
// Are we in a nested instantiation?
|
||||
const ULONG desiredExOption = m == IgnoreException ? DEBUG_FILTER_IGNORE : DEBUG_FILTER_OUTPUT;
|
||||
const bool isAlreadyBlocked = m_oldParameters.ExecutionOption == desiredExOption
|
||||
|
||||
@@ -64,7 +64,7 @@ bool getModuleNameList(CIDebugSymbols *syms, QStringList *modules, QString *erro
|
||||
}
|
||||
|
||||
bool getModuleList(CIDebugSymbols *syms, QList<Module> *modules, QString *errorMessage)
|
||||
{
|
||||
{
|
||||
ULONG count;
|
||||
modules->clear();
|
||||
if (!getModuleCount(syms, &count, errorMessage))
|
||||
@@ -105,7 +105,7 @@ bool getModuleList(CIDebugSymbols *syms, QList<Module> *modules, QString *errorM
|
||||
bool searchSymbols(CIDebugSymbols *syms, const QString &pattern,
|
||||
QStringList *matches, QString *errorMessage)
|
||||
{
|
||||
matches->clear();
|
||||
matches->clear();
|
||||
ULONG64 handle = 0;
|
||||
// E_NOINTERFACE means "no match". Apparently, it does not always
|
||||
// set handle.
|
||||
|
||||
@@ -130,7 +130,7 @@ WatchHandleDumperInserter::WatchHandleDumperInserter(WatchHandler *wh,
|
||||
|
||||
// Prevent recursion of the model by setting value and type
|
||||
static inline bool fixDumperType(WatchData *wd, const WatchData *source = 0)
|
||||
{
|
||||
{
|
||||
const bool missing = wd->isTypeNeeded() || wd->type.isEmpty();
|
||||
if (missing) {
|
||||
static const QString unknownType = QCoreApplication::translate("CdbStackFrameContext", "<Unknown Type>");
|
||||
|
||||
@@ -54,7 +54,7 @@ public:
|
||||
|
||||
explicit CdbStackFrameContext(const QSharedPointer<CdbDumperHelper> &dumper,
|
||||
CdbSymbolGroupContext *symbolContext);
|
||||
~CdbStackFrameContext();
|
||||
~CdbStackFrameContext();
|
||||
|
||||
bool assignValue(const QString &iname, const QString &value,
|
||||
QString *newValue /* = 0 */, QString *errorMessage);
|
||||
|
||||
@@ -58,7 +58,7 @@ CdbStackTraceContext::CdbStackTraceContext(const QSharedPointer<CdbDumperHelper>
|
||||
CdbStackTraceContext *CdbStackTraceContext::create(const QSharedPointer<CdbDumperHelper> &dumper,
|
||||
unsigned long threadId,
|
||||
QString *errorMessage)
|
||||
{
|
||||
{
|
||||
if (debugCDB)
|
||||
qDebug() << Q_FUNC_INFO << threadId;
|
||||
// fill the DEBUG_STACK_FRAME array
|
||||
@@ -124,7 +124,7 @@ bool CdbStackTraceContext::init(unsigned long frameCount, QString * /*errorMessa
|
||||
}
|
||||
|
||||
int CdbStackTraceContext::indexOf(const QString &function) const
|
||||
{
|
||||
{
|
||||
|
||||
const QChar exclamationMark = QLatin1Char('!');
|
||||
const int count = m_frames.size();
|
||||
@@ -168,9 +168,9 @@ CdbStackFrameContext *CdbStackTraceContext::frameContextAt(int index, QString *e
|
||||
*errorMessage = msgFrameContextFailed(index, m_frames.at(index), *errorMessage);
|
||||
return 0;
|
||||
}
|
||||
// Exclude unitialized variables if desired
|
||||
// Exclude unitialized variables if desired
|
||||
QStringList uninitializedVariables;
|
||||
if (theDebuggerAction(UseCodeModel)->isChecked()) {
|
||||
if (theDebuggerAction(UseCodeModel)->isChecked()) {
|
||||
const StackFrame &frame = m_frames.at(index);
|
||||
getUninitializedVariables(DebuggerManager::instance()->cppCodeModelSnapshot(), frame.function, frame.file, frame.line, &uninitializedVariables);
|
||||
}
|
||||
@@ -267,7 +267,7 @@ static inline bool getStoppedThreadState(const CdbComInterfaces &cif,
|
||||
}
|
||||
ULONG frameCount;
|
||||
// Ignore the top frame if it is "ntdll!KiFastSystemCallRet", which is
|
||||
// not interesting for display.
|
||||
// not interesting for display.
|
||||
DEBUG_STACK_FRAME frames[MaxFrames];
|
||||
hr = cif.debugControl->GetStackTrace(0, 0, 0, frames, MaxFrames, &frameCount);
|
||||
if (FAILED(hr)) {
|
||||
|
||||
@@ -55,7 +55,7 @@ struct ThreadData;
|
||||
* Maintains an on-demand constructed list of CdbStackFrameContext
|
||||
* containining the local variables of the stack. */
|
||||
|
||||
class CdbStackTraceContext
|
||||
class CdbStackTraceContext
|
||||
{
|
||||
Q_DISABLE_COPY(CdbStackTraceContext)
|
||||
|
||||
|
||||
@@ -411,7 +411,7 @@ static bool inline getUnsignedHexValue(QString stringValue, quint64 *value)
|
||||
return false;
|
||||
stringValue.remove(0, 2);
|
||||
// Remove 64bit separator
|
||||
if (stringValue.size() > 9) {
|
||||
if (stringValue.size() > 9) {
|
||||
const int sepPos = stringValue.size() - 9;
|
||||
if (stringValue.at(sepPos) == QLatin1Char('`'))
|
||||
stringValue.remove(sepPos, 1);
|
||||
@@ -487,8 +487,8 @@ WatchData CdbSymbolGroupContext::watchDataAt(unsigned long index) const
|
||||
const QString fullShadowedName = WatchData::shadowedName(name, shadowedNumber);
|
||||
wd.name = WatchData::shadowedName(removeInnerTemplateType(name), shadowedNumber);
|
||||
wd.addr = hexSymbolOffset(m_symbolGroup, index);
|
||||
const QString type = getSymbolString(m_symbolGroup, &IDebugSymbolGroup2::GetSymbolTypeNameWide, index);
|
||||
wd.setType(type);
|
||||
const QString type = getSymbolString(m_symbolGroup, &IDebugSymbolGroup2::GetSymbolTypeNameWide, index);
|
||||
wd.setType(type);
|
||||
// Check for unitialized variables at level 0 only.
|
||||
const DEBUG_SYMBOL_PARAMETERS &p = m_symbolParameters.at(index);
|
||||
if (p.ParentSymbol == DEBUG_ANY_ID && m_uninitializedVariables.contains(fullShadowedName)) {
|
||||
|
||||
@@ -74,7 +74,7 @@ class CdbSymbolGroupContext
|
||||
|
||||
public:
|
||||
~CdbSymbolGroupContext();
|
||||
static CdbSymbolGroupContext *create(const QString &prefix,
|
||||
static CdbSymbolGroupContext *create(const QString &prefix,
|
||||
CIDebugSymbolGroup *symbolGroup,
|
||||
const QStringList &uninitializedVariables,
|
||||
QString *errorMessage);
|
||||
|
||||
@@ -77,7 +77,7 @@ FORMS += attachexternaldialog.ui \
|
||||
startexternaldialog.ui \
|
||||
startremotedialog.ui
|
||||
RESOURCES += debugger.qrc
|
||||
false {
|
||||
false {
|
||||
SOURCES += $$PWD/modeltest.cpp
|
||||
HEADERS += $$PWD/modeltest.h
|
||||
DEFINES += USE_MODEL_TEST=1
|
||||
|
||||
@@ -60,7 +60,7 @@ DebuggerSettings::~DebuggerSettings()
|
||||
{
|
||||
qDeleteAll(m_items);
|
||||
}
|
||||
|
||||
|
||||
void DebuggerSettings::insertItem(int code, SavedAction *item)
|
||||
{
|
||||
QTC_ASSERT(!m_items.contains(code),
|
||||
@@ -81,7 +81,7 @@ void DebuggerSettings::writeSettings(QSettings *settings) const
|
||||
foreach (SavedAction *item, m_items)
|
||||
item->writeSettings(settings);
|
||||
}
|
||||
|
||||
|
||||
SavedAction *DebuggerSettings::item(int code) const
|
||||
{
|
||||
QTC_ASSERT(m_items.value(code, 0), qDebug() << "CODE: " << code; return 0);
|
||||
|
||||
@@ -60,7 +60,7 @@ public slots:
|
||||
void writeSettings(QSettings *settings) const;
|
||||
|
||||
private:
|
||||
QHash<int, Utils::SavedAction *> m_items;
|
||||
QHash<int, Utils::SavedAction *> m_items;
|
||||
};
|
||||
|
||||
|
||||
@@ -87,7 +87,7 @@ enum DebuggerActionCode
|
||||
DebugDebuggingHelpers,
|
||||
|
||||
UseCodeModel,
|
||||
|
||||
|
||||
UseToolTipsInMainEditor,
|
||||
UseToolTipsInLocalsView,
|
||||
UseToolTipsInBreakpointsView,
|
||||
|
||||
@@ -76,7 +76,7 @@ MemoryViewAgent::MemoryViewAgent(DebuggerManager *manager, quint64 addr)
|
||||
}
|
||||
|
||||
MemoryViewAgent::MemoryViewAgent(DebuggerManager *manager, const QString &addr)
|
||||
: QObject(manager), m_engine(manager->currentEngine()), m_manager(manager)
|
||||
: QObject(manager), m_engine(manager->currentEngine()), m_manager(manager)
|
||||
{
|
||||
bool ok = true;
|
||||
init(addr.toULongLong(&ok, 0));
|
||||
@@ -242,7 +242,7 @@ void DisassemblerViewAgent::setFrame(const StackFrame &frame)
|
||||
setContents(*it);
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
IDebuggerEngine *engine = d->manager->currentEngine();
|
||||
QTC_ASSERT(engine, return);
|
||||
engine->fetchDisassembler(this, frame);
|
||||
@@ -296,7 +296,7 @@ void DisassemblerViewAgent::setContents(const QString &contents)
|
||||
bool DisassemblerViewAgent::contentsCoversAddress(const QString &contents) const
|
||||
{
|
||||
QTC_ASSERT(d, return false);
|
||||
for (int pos = 0, line = 0; ; ++line, ++pos) {
|
||||
for (int pos = 0, line = 0; ; ++line, ++pos) {
|
||||
if (contents.midRef(pos, d->frame.address.size()) == d->frame.address)
|
||||
return true;
|
||||
pos = contents.indexOf('\n', pos + 1);
|
||||
|
||||
@@ -116,7 +116,7 @@ enum LogChannel
|
||||
LogStatus, // Used for status changed messages
|
||||
LogTime, // Used for time stamp messages
|
||||
LogDebug,
|
||||
LogMisc
|
||||
LogMisc
|
||||
};
|
||||
|
||||
} // namespace Debugger
|
||||
|
||||
@@ -388,9 +388,9 @@ StartRemoteDialog::StartRemoteDialog(QWidget *parent)
|
||||
m_ui->serverStartScript->setExpectedKind(Utils::PathChooser::File);
|
||||
m_ui->serverStartScript->setPromptDialogTitle(tr("Select Executable"));
|
||||
|
||||
connect(m_ui->useServerStartScriptCheckBox, SIGNAL(toggled(bool)),
|
||||
connect(m_ui->useServerStartScriptCheckBox, SIGNAL(toggled(bool)),
|
||||
this, SLOT(updateState()));
|
||||
|
||||
|
||||
connect(m_ui->buttonBox, SIGNAL(accepted()), this, SLOT(accept()));
|
||||
connect(m_ui->buttonBox, SIGNAL(rejected()), this, SLOT(reject()));
|
||||
|
||||
|
||||
@@ -664,7 +664,7 @@ void DebuggerManager::setSimpleDockWidgetArrangement()
|
||||
}
|
||||
|
||||
foreach (QDockWidget *dockWidget, dockWidgets) {
|
||||
if (dockWidget == d->m_outputDock)
|
||||
if (dockWidget == d->m_outputDock)
|
||||
d->m_mainWindow->addDockWidget(Qt::TopDockWidgetArea, dockWidget);
|
||||
else
|
||||
d->m_mainWindow->addDockWidget(Qt::BottomDockWidgetArea, dockWidget);
|
||||
@@ -990,7 +990,7 @@ void DebuggerManager::startNewDebugger(const DebuggerStartParametersPtr &sp)
|
||||
d->m_startParameters->toolChainType, &errorMessage);
|
||||
break;
|
||||
default:
|
||||
d->m_engine = determineDebuggerEngine(d->m_startParameters->executable,
|
||||
d->m_engine = determineDebuggerEngine(d->m_startParameters->executable,
|
||||
d->m_startParameters->toolChainType, &errorMessage, &settingsIdHint);
|
||||
break;
|
||||
}
|
||||
@@ -1427,7 +1427,7 @@ void DebuggerManager::showDebuggerInput(int channel, const QString &msg)
|
||||
{
|
||||
if (d->m_outputWindow)
|
||||
emit emitShowInput(channel, msg);
|
||||
else
|
||||
else
|
||||
qDebug() << "INPUT: " << channel << msg;
|
||||
}
|
||||
|
||||
|
||||
@@ -137,8 +137,8 @@ enum DebuggerEngineTypeFlags
|
||||
ScriptEngineType = 0x02,
|
||||
CdbEngineType = 0x04,
|
||||
AllEngineTypes = GdbEngineType
|
||||
| ScriptEngineType
|
||||
| CdbEngineType
|
||||
| ScriptEngineType
|
||||
| CdbEngineType
|
||||
};
|
||||
|
||||
QDebug operator<<(QDebug d, DebuggerState state);
|
||||
@@ -280,7 +280,7 @@ private:
|
||||
Internal::ThreadsHandler *threadsHandler() const;
|
||||
Internal::WatchHandler *watchHandler() const;
|
||||
Internal::SourceFilesWindow *sourceFileWindow() const;
|
||||
QWidget *threadsWindow() const;
|
||||
QWidget *threadsWindow() const;
|
||||
|
||||
Internal::DebuggerManagerActions debuggerManagerActions() const;
|
||||
|
||||
|
||||
@@ -53,7 +53,7 @@ public:
|
||||
|
||||
void bringPaneToForeground() { emit showPage(); }
|
||||
void setCursor(const QCursor &cursor);
|
||||
|
||||
|
||||
QString combinedContents() const;
|
||||
QString inputContents() const;
|
||||
|
||||
|
||||
@@ -348,16 +348,16 @@ QWidget *CommonOptionsPage::createPage(QWidget *parent)
|
||||
m_ui.checkBoxUseMessageBoxForSignals);
|
||||
m_group.insert(theDebuggerAction(SkipKnownFrames),
|
||||
m_ui.checkBoxSkipKnownFrames);
|
||||
m_group.insert(theDebuggerAction(UseToolTipsInMainEditor),
|
||||
m_group.insert(theDebuggerAction(UseToolTipsInMainEditor),
|
||||
m_ui.checkBoxUseToolTipsInMainEditor);
|
||||
m_group.insert(theDebuggerAction(AutoDerefPointers), 0);
|
||||
m_group.insert(theDebuggerAction(UseToolTipsInLocalsView), 0);
|
||||
m_group.insert(theDebuggerAction(UseToolTipsInBreakpointsView), 0);
|
||||
m_group.insert(theDebuggerAction(UseAddressInBreakpointsView), 0);
|
||||
m_group.insert(theDebuggerAction(UseAddressInStackView), 0);
|
||||
m_group.insert(theDebuggerAction(EnableReverseDebugging),
|
||||
m_group.insert(theDebuggerAction(EnableReverseDebugging),
|
||||
m_ui.checkBoxEnableReverseDebugging);
|
||||
m_group.insert(theDebuggerAction(MaximalStackDepth),
|
||||
m_group.insert(theDebuggerAction(MaximalStackDepth),
|
||||
m_ui.spinBoxMaximalStackDepth);
|
||||
m_group.insert(theDebuggerAction(GdbWatchdogTimeout), 0);
|
||||
m_group.insert(theDebuggerAction(LogTimeStamps), 0);
|
||||
|
||||
@@ -125,7 +125,7 @@ int ToolTipWidget::computeHeight(const QModelIndex &index) const
|
||||
return s;
|
||||
}
|
||||
|
||||
Q_SLOT void ToolTipWidget::computeSize()
|
||||
Q_SLOT void ToolTipWidget::computeSize()
|
||||
{
|
||||
int columns = 0;
|
||||
for (int i = 0; i < 3; ++i) {
|
||||
|
||||
@@ -92,7 +92,7 @@ signals:
|
||||
|
||||
// The adapter is still running just fine, but it failed to acquire a debuggee.
|
||||
void inferiorStartFailed(const QString &msg);
|
||||
|
||||
|
||||
protected:
|
||||
DebuggerState state() const
|
||||
{ return m_engine->state(); }
|
||||
|
||||
@@ -213,7 +213,7 @@ void GdbEngine::connectDebuggingHelperActions()
|
||||
connect(theDebuggerAction(RecheckDebuggingHelpers), SIGNAL(triggered()),
|
||||
this, SLOT(recheckDebuggingHelperAvailability()));
|
||||
}
|
||||
|
||||
|
||||
void GdbEngine::disconnectDebuggingHelperActions()
|
||||
{
|
||||
disconnect(theDebuggerAction(UseDebuggingHelpers), 0, this, 0);
|
||||
@@ -412,8 +412,8 @@ void GdbEngine::handleResponse(const QByteArray &buff)
|
||||
while (from != to) {
|
||||
GdbMi data;
|
||||
if (*from != ',') {
|
||||
// happens on archer where we get
|
||||
// 23^running <NL> *running,thread-id="all" <NL> (gdb)
|
||||
// happens on archer where we get
|
||||
// 23^running <NL> *running,thread-id="all" <NL> (gdb)
|
||||
result.m_type = GdbMi::Tuple;
|
||||
break;
|
||||
}
|
||||
@@ -448,22 +448,22 @@ void GdbEngine::handleResponse(const QByteArray &buff)
|
||||
showStatusMessage(tr("Library %1 unloaded.").arg(_(id)));
|
||||
invalidateSourcesList();
|
||||
} else if (asyncClass == "thread-group-created") {
|
||||
// Archer has "{id="28902"}"
|
||||
// Archer has "{id="28902"}"
|
||||
QByteArray id = result.findChild("id").data();
|
||||
showStatusMessage(tr("Thread group %1 created.").arg(_(id)));
|
||||
int pid = id.toInt();
|
||||
if (pid != inferiorPid())
|
||||
handleInferiorPidChanged(pid);
|
||||
} else if (asyncClass == "thread-created") {
|
||||
//"{id="1",group-id="28902"}"
|
||||
//"{id="1",group-id="28902"}"
|
||||
QByteArray id = result.findChild("id").data();
|
||||
showStatusMessage(tr("Thread %1 created.").arg(_(id)));
|
||||
} else if (asyncClass == "thread-group-exited") {
|
||||
// Archer has "{id="28902"}"
|
||||
// Archer has "{id="28902"}"
|
||||
QByteArray id = result.findChild("id").data();
|
||||
showStatusMessage(tr("Thread group %1 exited.").arg(_(id)));
|
||||
} else if (asyncClass == "thread-exited") {
|
||||
//"{id="1",group-id="28902"}"
|
||||
//"{id="1",group-id="28902"}"
|
||||
QByteArray id = result.findChild("id").data();
|
||||
QByteArray groupid = result.findChild("group-id").data();
|
||||
showStatusMessage(tr("Thread %1 in group %2 exited.")
|
||||
@@ -471,7 +471,7 @@ void GdbEngine::handleResponse(const QByteArray &buff)
|
||||
} else if (asyncClass == "thread-selected") {
|
||||
QByteArray id = result.findChild("id").data();
|
||||
showStatusMessage(tr("Thread %1 selected.").arg(_(id)));
|
||||
//"{id="2"}"
|
||||
//"{id="2"}"
|
||||
#if defined(Q_OS_MAC)
|
||||
} else if (asyncClass == "shlibs-updated") {
|
||||
// MAC announces updated libs
|
||||
@@ -615,7 +615,7 @@ void GdbEngine::readGdbStandardError()
|
||||
|
||||
void GdbEngine::readGdbStandardOutput()
|
||||
{
|
||||
if (m_commandTimer->isActive())
|
||||
if (m_commandTimer->isActive())
|
||||
m_commandTimer->start(); // Retrigger
|
||||
|
||||
int newstart = 0;
|
||||
@@ -682,7 +682,7 @@ void GdbEngine::maybeHandleInferiorPidChanged(const QString &pid0)
|
||||
}
|
||||
if (pid == inferiorPid())
|
||||
return;
|
||||
debugMessage(_("FOUND PID %1").arg(pid));
|
||||
debugMessage(_("FOUND PID %1").arg(pid));
|
||||
|
||||
handleInferiorPidChanged(pid);
|
||||
if (m_dumperInjectionLoad)
|
||||
@@ -841,7 +841,7 @@ void GdbEngine::commandTimeout()
|
||||
"the operation.\nYou can choose between waiting "
|
||||
"longer or abort debugging.").arg(timeOut / 1000);
|
||||
QMessageBox *mb = showMessageBox(QMessageBox::Critical,
|
||||
tr("Gdb not responding"), msg,
|
||||
tr("Gdb not responding"), msg,
|
||||
QMessageBox::Ok | QMessageBox::Cancel);
|
||||
mb->button(QMessageBox::Cancel)->setText(tr("Give gdb more time"));
|
||||
mb->button(QMessageBox::Ok)->setText(tr("Stop debugging"));
|
||||
@@ -885,7 +885,7 @@ void GdbEngine::handleResultRecord(GdbResponse *response)
|
||||
tr("Executable failed"), QString::fromLocal8Bit(msg));
|
||||
showStatusMessage(tr("Process failed to start."));
|
||||
shutdown();
|
||||
} else if (msg == "\"finish\" not meaningful in the outermost frame.") {
|
||||
} else if (msg == "\"finish\" not meaningful in the outermost frame.") {
|
||||
// Handle a case known to appear on gdb 6.4 symbianelf when
|
||||
// the stack is cut due to access to protected memory.
|
||||
debugMessage(_("APPLYING WORKAROUND #2"));
|
||||
@@ -1011,7 +1011,7 @@ void GdbEngine::updateAll()
|
||||
if (supportsThreads())
|
||||
postCommand(_("-thread-list-ids"), WatchUpdate, CB(handleStackListThreads), 0);
|
||||
manager()->reloadRegisters();
|
||||
updateLocals();
|
||||
updateLocals();
|
||||
}
|
||||
|
||||
void GdbEngine::handleQuerySources(const GdbResponse &response)
|
||||
@@ -1576,7 +1576,7 @@ void GdbEngine::detachDebugger()
|
||||
{
|
||||
QTC_ASSERT(state() == InferiorStopped, /**/);
|
||||
QTC_ASSERT(startMode() != AttachCore, /**/);
|
||||
postCommand(_("detach"));
|
||||
postCommand(_("detach"));
|
||||
setState(InferiorShuttingDown);
|
||||
setState(InferiorShutDown);
|
||||
shutdown();
|
||||
@@ -1642,7 +1642,7 @@ AbstractGdbAdapter *GdbEngine::createAdapter(const DebuggerStartParametersPtr &s
|
||||
void GdbEngine::startDebugger(const DebuggerStartParametersPtr &sp)
|
||||
{
|
||||
QTC_ASSERT(state() == EngineStarting, qDebug() << state());
|
||||
// This should be set by the constructor or in exitDebugger()
|
||||
// This should be set by the constructor or in exitDebugger()
|
||||
// via initializeVariables()
|
||||
//QTC_ASSERT(m_debuggingHelperState == DebuggingHelperUninitialized,
|
||||
// initializeVariables());
|
||||
@@ -1947,7 +1947,7 @@ void GdbEngine::sendInsertBreakpoint(int index)
|
||||
|
||||
void GdbEngine::reloadBreakListInternal()
|
||||
{
|
||||
m_breakListUpdating = true;
|
||||
m_breakListUpdating = true;
|
||||
postCommand(_("-break-list"), NeedsStop, CB(handleBreakList));
|
||||
}
|
||||
|
||||
@@ -2416,7 +2416,7 @@ void GdbEngine::handleStackSelectThread(const GdbResponse &)
|
||||
showStatusMessage(tr("Retrieving data for stack view..."), 3000);
|
||||
manager()->reloadRegisters();
|
||||
reloadStack(true);
|
||||
updateLocals();
|
||||
updateLocals();
|
||||
}
|
||||
|
||||
void GdbEngine::reloadFullStack()
|
||||
@@ -2512,7 +2512,7 @@ void GdbEngine::handleStackListFrames(const GdbResponse &response)
|
||||
targetFrame = i;
|
||||
}
|
||||
|
||||
bool canExpand = !cookie.isFull
|
||||
bool canExpand = !cookie.isFull
|
||||
&& (n >= theDebuggerAction(MaximalStackDepth)->value().toInt());
|
||||
theDebuggerAction(ExpandStack)->setEnabled(canExpand);
|
||||
manager()->stackHandler()->setFrames(stackFrames, canExpand);
|
||||
@@ -2538,7 +2538,7 @@ void GdbEngine::handleStackListFrames(const GdbResponse &response)
|
||||
// For targetFrame == 0 we already issued a 'gotoLocation'
|
||||
// when reading the *stopped message.
|
||||
bool jump = (m_isMacGdb || targetFrame != 0);
|
||||
|
||||
|
||||
manager()->stackHandler()->setCurrentIndex(targetFrame);
|
||||
if (jump || cookie.gotoLocation) {
|
||||
const StackFrame &frame = manager()->stackHandler()->currentFrame();
|
||||
@@ -2956,7 +2956,7 @@ void GdbEngine::runDebuggingHelper(const WatchData &data0, bool dumpChildren)
|
||||
data.setValue(_("<unavailable>"));
|
||||
data.setHasChildren(false);
|
||||
insertData(data);
|
||||
return;
|
||||
return;
|
||||
}
|
||||
m_processedNames.insert(processedName);
|
||||
|
||||
@@ -3053,7 +3053,7 @@ void GdbEngine::updateSubItem(const WatchData &data0)
|
||||
#if DEBUG_SUBITEM
|
||||
qDebug() << "IT'S A POINTER";
|
||||
#endif
|
||||
|
||||
|
||||
if (theDebuggerBoolSetting(AutoDerefPointers)) {
|
||||
// Try automatic dereferentiation
|
||||
data.exp = _("(*(") + data.exp + _("))");
|
||||
@@ -3196,7 +3196,7 @@ void GdbEngine::updateWatchData(const WatchData &data)
|
||||
data1.setValue(_("<unavailable>"));
|
||||
data1.setHasChildren(false);
|
||||
insertData(data1);
|
||||
return;
|
||||
return;
|
||||
}
|
||||
m_processedNames.insert(processedName);
|
||||
|
||||
@@ -3640,7 +3640,7 @@ void GdbEngine::handleStackFrame(const GdbResponse &response)
|
||||
}
|
||||
GdbMi all("[" + out + "]");
|
||||
//GdbMi all(out);
|
||||
|
||||
|
||||
//qDebug() << "\n\n\nALL: " << all.toString() << "\n";
|
||||
GdbMi locals = all.findChild("locals");
|
||||
//qDebug() << "\n\n\nLOCALS: " << locals.toString() << "\n";
|
||||
@@ -3770,10 +3770,10 @@ WatchData GdbEngine::localVariable(const GdbMi &item,
|
||||
data.setError(WatchData::msgNotInScope());
|
||||
return data;
|
||||
}
|
||||
//: Type of local variable or parameter shadowed by another
|
||||
//: Type of local variable or parameter shadowed by another
|
||||
//: variable of the same name in a nested block.
|
||||
setWatchDataValue(data, item.findChild("value"));
|
||||
data.setType(GdbEngine::tr("<shadowed>"));
|
||||
data.setType(GdbEngine::tr("<shadowed>"));
|
||||
data.setHasChildren(false);
|
||||
return data;
|
||||
}
|
||||
@@ -4030,7 +4030,7 @@ void GdbEngine::tryLoadDebuggingHelpers()
|
||||
// Load at least gdb macro based dumpers.
|
||||
QFile file(_(":/gdb/gdbmacros.txt"));
|
||||
file.open(QIODevice::ReadOnly);
|
||||
QByteArray contents = file.readAll();
|
||||
QByteArray contents = file.readAll();
|
||||
m_debuggingHelperState = DebuggingHelperLoadTried;
|
||||
postCommand(_(contents));
|
||||
return;
|
||||
@@ -4206,7 +4206,7 @@ void GdbEngine::fetchDisassemblerByAddress(DisassemblerViewAgent *agent,
|
||||
QString end = QString::number(address + 100, 16);
|
||||
// -data-disassemble [ -s start-addr -e end-addr ]
|
||||
// | [ -f filename -l linenum [ -n lines ] ] -- mode
|
||||
if (useMixedMode)
|
||||
if (useMixedMode)
|
||||
postCommand(_("-data-disassemble -s 0x%1 -e 0x%2 -- 1").arg(start).arg(end),
|
||||
Discardable, CB(handleFetchDisassemblerByAddress1),
|
||||
QVariant::fromValue(DisassemblerAgentCookie(agent)));
|
||||
@@ -4266,7 +4266,7 @@ QString GdbEngine::parseDisassembler(const GdbMi &lines)
|
||||
if (line >= 0 && line < fileContents.size())
|
||||
ba += " " + fileContents.at(line) + '\n';
|
||||
GdbMi insn = child.findChild("line_asm_insn");
|
||||
foreach (const GdbMi &line, insn.children())
|
||||
foreach (const GdbMi &line, insn.children())
|
||||
ba += parseLine(line);
|
||||
} else {
|
||||
// the non-mixed version
|
||||
@@ -4468,7 +4468,7 @@ bool GdbEngine::startGdb(const QStringList &args, const QString &gdb, const QStr
|
||||
}
|
||||
}
|
||||
if (m_gdbAdapter->dumperHandling() == AbstractGdbAdapter::DumperLoadedByGdbPreload
|
||||
&& checkDebuggingHelpers()) {
|
||||
&& checkDebuggingHelpers()) {
|
||||
QString cmd = _("set environment ");
|
||||
cmd += _(Debugger::Constants::Internal::LD_PRELOAD_ENV_VAR);
|
||||
cmd += _c(' ');
|
||||
|
||||
@@ -306,7 +306,7 @@ QByteArray GdbMi::toString(bool multiline, int indent) const
|
||||
else
|
||||
result += "Invalid";
|
||||
break;
|
||||
case Const:
|
||||
case Const:
|
||||
if (!m_name.isEmpty())
|
||||
result += m_name + "=";
|
||||
result += "\"" + escapeCString(m_data) + "\"";
|
||||
|
||||
@@ -39,50 +39,50 @@ namespace Internal {
|
||||
|
||||
/*
|
||||
|
||||
output ==>
|
||||
( out-of-band-record )* [ result-record ] "(gdb)" nl
|
||||
result-record ==>
|
||||
[ token ] "^" result-class ( "," result )* nl
|
||||
out-of-band-record ==>
|
||||
async-record | stream-record
|
||||
async-record ==>
|
||||
exec-async-output | status-async-output | notify-async-output
|
||||
exec-async-output ==>
|
||||
[ token ] "*" async-output
|
||||
status-async-output ==>
|
||||
[ token ] "+" async-output
|
||||
notify-async-output ==>
|
||||
[ token ] "=" async-output
|
||||
async-output ==>
|
||||
async-class ( "," result )* nl
|
||||
result-class ==>
|
||||
"done" | "running" | "connected" | "error" | "exit"
|
||||
async-class ==>
|
||||
"stopped" | others (where others will be added depending on the needs--this is still in development).
|
||||
result ==>
|
||||
variable "=" value
|
||||
variable ==>
|
||||
string
|
||||
value ==>
|
||||
const | tuple | list
|
||||
const ==>
|
||||
c-string
|
||||
tuple ==>
|
||||
"{}" | "{" result ( "," result )* "}"
|
||||
list ==>
|
||||
"[]" | "[" value ( "," value )* "]" | "[" result ( "," result )* "]"
|
||||
stream-record ==>
|
||||
console-stream-output | target-stream-output | log-stream-output
|
||||
console-stream-output ==>
|
||||
"~" c-string
|
||||
target-stream-output ==>
|
||||
"@" c-string
|
||||
log-stream-output ==>
|
||||
"&" c-string
|
||||
nl ==>
|
||||
CR | CR-LF
|
||||
token ==>
|
||||
any sequence of digits.
|
||||
output ==>
|
||||
( out-of-band-record )* [ result-record ] "(gdb)" nl
|
||||
result-record ==>
|
||||
[ token ] "^" result-class ( "," result )* nl
|
||||
out-of-band-record ==>
|
||||
async-record | stream-record
|
||||
async-record ==>
|
||||
exec-async-output | status-async-output | notify-async-output
|
||||
exec-async-output ==>
|
||||
[ token ] "*" async-output
|
||||
status-async-output ==>
|
||||
[ token ] "+" async-output
|
||||
notify-async-output ==>
|
||||
[ token ] "=" async-output
|
||||
async-output ==>
|
||||
async-class ( "," result )* nl
|
||||
result-class ==>
|
||||
"done" | "running" | "connected" | "error" | "exit"
|
||||
async-class ==>
|
||||
"stopped" | others (where others will be added depending on the needs--this is still in development).
|
||||
result ==>
|
||||
variable "=" value
|
||||
variable ==>
|
||||
string
|
||||
value ==>
|
||||
const | tuple | list
|
||||
const ==>
|
||||
c-string
|
||||
tuple ==>
|
||||
"{}" | "{" result ( "," result )* "}"
|
||||
list ==>
|
||||
"[]" | "[" value ( "," value )* "]" | "[" result ( "," result )* "]"
|
||||
stream-record ==>
|
||||
console-stream-output | target-stream-output | log-stream-output
|
||||
console-stream-output ==>
|
||||
"~" c-string
|
||||
target-stream-output ==>
|
||||
"@" c-string
|
||||
log-stream-output ==>
|
||||
"&" c-string
|
||||
nl ==>
|
||||
CR | CR-LF
|
||||
token ==>
|
||||
any sequence of digits.
|
||||
|
||||
*/
|
||||
|
||||
@@ -120,7 +120,7 @@ public:
|
||||
inline const QList<GdbMi> &children() const { return m_children; }
|
||||
inline int childCount() const { return m_children.size(); }
|
||||
|
||||
const GdbMi &childAt(int index) const { return m_children[index]; }
|
||||
const GdbMi &childAt(int index) const { return m_children[index]; }
|
||||
GdbMi &childAt(int index) { return m_children[index]; }
|
||||
GdbMi findChild(const char *name) const;
|
||||
|
||||
@@ -146,7 +146,7 @@ private:
|
||||
|
||||
enum GdbResultClass
|
||||
{
|
||||
// "done" | "running" | "connected" | "error" | "exit"
|
||||
// "done" | "running" | "connected" | "error" | "exit"
|
||||
GdbResultUnknown,
|
||||
GdbResultDone,
|
||||
GdbResultRunning,
|
||||
|
||||
@@ -79,9 +79,9 @@ QWidget *GdbOptionsPage::createPage(QWidget *parent)
|
||||
m_ui.scriptFileChooser);
|
||||
m_group.insert(theDebuggerAction(GdbEnvironment),
|
||||
m_ui.environmentEdit);
|
||||
m_group.insert(theDebuggerAction(UsePreciseBreakpoints),
|
||||
m_group.insert(theDebuggerAction(UsePreciseBreakpoints),
|
||||
m_ui.checkBoxUsePreciseBreakpoints);
|
||||
m_group.insert(theDebuggerAction(GdbWatchdogTimeout),
|
||||
m_group.insert(theDebuggerAction(GdbWatchdogTimeout),
|
||||
m_ui.spinBoxGdbWatchdogTimeout);
|
||||
|
||||
|
||||
|
||||
@@ -43,7 +43,7 @@ namespace Internal {
|
||||
* Provides a static convenience to prompt for both connection types. */
|
||||
|
||||
class S60DebuggerBluetoothStarter : public trk::AbstractBluetoothStarter
|
||||
{
|
||||
{
|
||||
public:
|
||||
static trk::PromptStartCommunicationResult
|
||||
startCommunication(const TrkDevicePtr &trkDevice,
|
||||
@@ -52,7 +52,7 @@ public:
|
||||
QWidget *msgBoxParent,
|
||||
QString *errorMessage);
|
||||
|
||||
protected:
|
||||
protected:
|
||||
virtual trk::BluetoothListener *createListener();
|
||||
|
||||
private:
|
||||
|
||||
@@ -155,7 +155,7 @@ void Snapshot::insertMemory(const MemoryRange &range, const QByteArray &ba)
|
||||
{
|
||||
QTC_ASSERT(range.size() == uint(ba.size()),
|
||||
qDebug() << "RANGE: " << range << " BA SIZE: " << ba.size(); return);
|
||||
|
||||
|
||||
MEMORY_DEBUG("INSERT: " << range);
|
||||
// Try to combine with existing chunk.
|
||||
Snapshot::Memory::iterator it = memory.begin();
|
||||
@@ -660,7 +660,7 @@ void TrkGdbAdapter::handleGdbServerCommand(const QByteArray &cmd)
|
||||
// Kill inferior process
|
||||
logMessage(msgGdbPacket(QLatin1String("kill")));
|
||||
sendTrkMessage(0x41, TrkCB(handleDeleteProcess),
|
||||
trkDeleteProcessMessage(), "Delete process");
|
||||
trkDeleteProcessMessage(), "Delete process");
|
||||
}
|
||||
|
||||
else if (cmd.startsWith("m")) {
|
||||
@@ -924,7 +924,7 @@ i */
|
||||
if (data.startsWith("auxv:read::")) {
|
||||
const int offsetPos = data.lastIndexOf(':') + 1;
|
||||
const int commaPos = data.lastIndexOf(',');
|
||||
if (commaPos != -1) {
|
||||
if (commaPos != -1) {
|
||||
bool ok1 = false, ok2 = false;
|
||||
const int offset = data.mid(offsetPos, commaPos - offsetPos)
|
||||
.toUInt(&ok1, 16);
|
||||
@@ -1176,7 +1176,7 @@ void TrkGdbAdapter::handleReadRegisters(const TrkResult &result)
|
||||
const char *data = result.data.data() + 1; // Skip ok byte
|
||||
for (int i = 0; i < RegisterCount; ++i)
|
||||
m_snapshot.registers[i] = extractInt(data + 4 * i);
|
||||
}
|
||||
}
|
||||
|
||||
void TrkGdbAdapter::handleWriteRegister(const TrkResult &result)
|
||||
{
|
||||
@@ -1187,7 +1187,7 @@ void TrkGdbAdapter::handleWriteRegister(const TrkResult &result)
|
||||
return;
|
||||
}
|
||||
sendGdbServerMessage("OK");
|
||||
}
|
||||
}
|
||||
|
||||
void TrkGdbAdapter::reportRegisters()
|
||||
{
|
||||
@@ -1312,7 +1312,7 @@ void TrkGdbAdapter::tryAnswerGdbMemoryRequest(bool buffered)
|
||||
Snapshot::Memory::const_iterator et = m_snapshot.memory.end();
|
||||
for ( ; it != et; ++it) {
|
||||
MEMORY_DEBUG(" NEEDED: " << needed);
|
||||
needed -= it.key();
|
||||
needed -= it.key();
|
||||
}
|
||||
MEMORY_DEBUG("NEEDED: " << needed);
|
||||
|
||||
@@ -1475,7 +1475,7 @@ void TrkGdbAdapter::handleClearBreakpoint(const TrkResult &result)
|
||||
if (result.errorCode()) {
|
||||
logMessage("ERROR: " + result.errorString());
|
||||
//return;
|
||||
}
|
||||
}
|
||||
sendGdbServerMessage("OK");
|
||||
}
|
||||
|
||||
@@ -1568,7 +1568,7 @@ void TrkGdbAdapter::startAdapter()
|
||||
logMessage(QLatin1String("### Starting TrkGdbAdapter"));
|
||||
m_trkDevice->setSerialFrame(effectiveTrkDeviceType() != TrkOptions::BlueTooth);
|
||||
// Prompt the user to start communication
|
||||
QString message;
|
||||
QString message;
|
||||
const trk::PromptStartCommunicationResult src =
|
||||
S60DebuggerBluetoothStarter::startCommunication(m_trkDevice,
|
||||
effectiveTrkDevice(),
|
||||
@@ -1752,16 +1752,16 @@ void TrkGdbAdapter::handleDirectWrite1(const TrkResult &response)
|
||||
appendByte(&ba, 0xe5);
|
||||
#else
|
||||
// Thumb:
|
||||
// subs r0, #16
|
||||
// subs r0, #16
|
||||
appendByte(&ba, 0x08);
|
||||
appendByte(&ba, 0x3b);
|
||||
// subs r0, #16
|
||||
// subs r0, #16
|
||||
appendByte(&ba, 0x08);
|
||||
appendByte(&ba, 0x3b);
|
||||
//
|
||||
appendByte(&ba, 0x08);
|
||||
appendByte(&ba, 0x3b);
|
||||
// subs r0, #16
|
||||
// subs r0, #16
|
||||
appendByte(&ba, 0x08);
|
||||
appendByte(&ba, 0x3b);
|
||||
#endif
|
||||
|
||||
@@ -246,7 +246,7 @@ private:
|
||||
QByteArray trkWriteMemoryMessage(uint addr, const QByteArray &date);
|
||||
QByteArray trkBreakpointMessage(uint addr, uint len, bool armMode = true);
|
||||
QByteArray trkStepRangeMessage(byte option);
|
||||
QByteArray trkDeleteProcessMessage();
|
||||
QByteArray trkDeleteProcessMessage();
|
||||
QByteArray trkInterruptMessage();
|
||||
|
||||
QSharedPointer<trk::TrkDevice> m_trkDevice;
|
||||
|
||||
@@ -83,7 +83,7 @@ public:
|
||||
virtual void nextExec() = 0;
|
||||
virtual void stepIExec() = 0;
|
||||
virtual void nextIExec() = 0;
|
||||
|
||||
|
||||
virtual void continueInferior() = 0;
|
||||
virtual void interruptInferior() = 0;
|
||||
|
||||
|
||||
@@ -84,7 +84,7 @@ QVariant ModulesModel::headerData(int section,
|
||||
{
|
||||
if (orientation == Qt::Horizontal && role == Qt::DisplayRole) {
|
||||
static QString headers[] = {
|
||||
tr("Module name") + " ",
|
||||
tr("Module name") + " ",
|
||||
tr("Symbols read") + " ",
|
||||
tr("Start address") + " ",
|
||||
tr("End address") + " "
|
||||
@@ -115,7 +115,7 @@ QVariant ModulesModel::data(const QModelIndex &index, int role) const
|
||||
break;
|
||||
case 1:
|
||||
if (role == Qt::DisplayRole)
|
||||
return module.symbolsRead ? "yes" : "no";
|
||||
return module.symbolsRead ? "yes" : "no";
|
||||
break;
|
||||
case 2:
|
||||
if (role == Qt::DisplayRole)
|
||||
|
||||
@@ -175,7 +175,7 @@ void ModulesWindow::resizeColumnsToContents()
|
||||
void ModulesWindow::setAlwaysResizeColumnsToContents(bool on)
|
||||
{
|
||||
m_alwaysResizeColumnsToContents = on;
|
||||
QHeaderView::ResizeMode mode = on
|
||||
QHeaderView::ResizeMode mode = on
|
||||
? QHeaderView::ResizeToContents : QHeaderView::Interactive;
|
||||
header()->setResizeMode(0, mode);
|
||||
header()->setResizeMode(1, mode);
|
||||
@@ -189,7 +189,7 @@ void ModulesWindow::setModel(QAbstractItemModel *model)
|
||||
QTreeView::setModel(model);
|
||||
setAlwaysResizeColumnsToContents(true);
|
||||
}
|
||||
|
||||
|
||||
void ModulesWindow::showSymbols(const QString &name)
|
||||
{
|
||||
if (name.isEmpty())
|
||||
|
||||
@@ -51,7 +51,7 @@
|
||||
#endif // DO_TRACE
|
||||
|
||||
namespace Debugger {
|
||||
namespace Internal {
|
||||
namespace Internal {
|
||||
|
||||
class NameDemanglerPrivate
|
||||
{
|
||||
@@ -138,7 +138,7 @@ private:
|
||||
QLatin1String(""))
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
const QString makeExpr(const QStringList &exprs) const
|
||||
{
|
||||
Q_ASSERT(exprs.size() == 2);
|
||||
@@ -166,7 +166,7 @@ private:
|
||||
QLatin1String(""))
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
const QString makeExpr(const QStringList &exprs) const
|
||||
{
|
||||
Q_ASSERT(exprs.size() == 2);
|
||||
@@ -182,7 +182,7 @@ private:
|
||||
QLatin1String(""))
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
virtual const QString makeExpr(const QStringList &exprs) const
|
||||
{
|
||||
Q_ASSERT(exprs.size() == 3);
|
||||
|
||||
@@ -54,7 +54,7 @@ public:
|
||||
bool demangle(const QString &mangledName);
|
||||
|
||||
/*
|
||||
* A textual description of the error encountered, if there was one.
|
||||
* A textual description of the error encountered, if there was one.
|
||||
* Only valid if demangle() returned false.
|
||||
*/
|
||||
const QString &errorString() const;
|
||||
|
||||
@@ -100,7 +100,7 @@ QVariant RegisterHandler::data(const QModelIndex &index, int role) const
|
||||
|
||||
if (role == RegisterChangedRole)
|
||||
return reg.changed;
|
||||
|
||||
|
||||
return QVariant();
|
||||
}
|
||||
|
||||
|
||||
@@ -39,7 +39,7 @@ enum RegisterRole
|
||||
{
|
||||
RegisterNumberBaseRole = Qt::UserRole, // Currently used number base
|
||||
RegisterAddressRole, // Start value for opening memory view
|
||||
RegisterChangedRole // Used for painting changed values
|
||||
RegisterChangedRole // Used for painting changed values
|
||||
};
|
||||
|
||||
class Register
|
||||
@@ -76,7 +76,7 @@ private:
|
||||
QVariant headerData(int section, Qt::Orientation orientation,
|
||||
int role = Qt::DisplayRole) const;
|
||||
Qt::ItemFlags flags(const QModelIndex &idx) const;
|
||||
|
||||
|
||||
QList<Register> m_registers;
|
||||
int m_base;
|
||||
int m_strlen; // approximate width of an value in chars
|
||||
|
||||
@@ -205,7 +205,7 @@ void RegisterWindow::contextMenuEvent(QContextMenuEvent *ev)
|
||||
menu.addAction(theDebuggerAction(SettingsDialog));
|
||||
|
||||
QAction *act = menu.exec(ev->globalPos());
|
||||
|
||||
|
||||
if (act == actAdjust)
|
||||
resizeColumnsToContents();
|
||||
else if (act == actAlwaysAdjust)
|
||||
|
||||
@@ -4,6 +4,6 @@ HEADERS += \
|
||||
SOURCES += \
|
||||
$$PWD/scriptengine.cpp \
|
||||
|
||||
FORMS +=
|
||||
FORMS +=
|
||||
|
||||
RESOURCES +=
|
||||
RESOURCES +=
|
||||
|
||||
@@ -104,7 +104,7 @@ public:
|
||||
private:
|
||||
void maybeBreakNow(bool byFunction);
|
||||
|
||||
ScriptEngine *q;
|
||||
ScriptEngine *q;
|
||||
};
|
||||
|
||||
ScriptAgent::ScriptAgent(ScriptEngine *debugger, QScriptEngine *script)
|
||||
@@ -204,7 +204,7 @@ void ScriptEngine::executeDebuggerCommand(const QString &command)
|
||||
|
||||
void ScriptEngine::shutdown()
|
||||
{
|
||||
exitDebugger();
|
||||
exitDebugger();
|
||||
}
|
||||
|
||||
void ScriptEngine::exitDebugger()
|
||||
@@ -573,7 +573,7 @@ void ScriptEngine::maybeBreakNow(bool byFunction)
|
||||
showStatusMessage(tr("Stopped."), 5000);
|
||||
|
||||
StackFrame frame;
|
||||
frame.file = fileName;
|
||||
frame.file = fileName;
|
||||
frame.line = lineNumber;
|
||||
manager()->gotoLocation(frame, true);
|
||||
updateLocals();
|
||||
@@ -587,7 +587,7 @@ void ScriptEngine::updateLocals()
|
||||
|
||||
//
|
||||
// Build stack
|
||||
//
|
||||
//
|
||||
QList<StackFrame> stackFrames;
|
||||
int i = 0;
|
||||
for (QScriptContext *c = context; c; c = c->parentContext(), ++i) {
|
||||
@@ -599,7 +599,7 @@ void ScriptEngine::updateLocals()
|
||||
frame.from = QString::number(info.functionStartLineNumber());
|
||||
frame.to = QString::number(info.functionEndLineNumber());
|
||||
frame.line = info.lineNumber();
|
||||
|
||||
|
||||
if (frame.function.isEmpty())
|
||||
frame.function = "<global scope>";
|
||||
//frame.address = ...;
|
||||
|
||||
@@ -35,7 +35,7 @@
|
||||
#include <stdio.h>
|
||||
#include <signal.h>
|
||||
#include <execinfo.h>
|
||||
#endif
|
||||
#endif
|
||||
|
||||
namespace Debugger {
|
||||
namespace Internal {
|
||||
|
||||
@@ -37,7 +37,7 @@ namespace Internal {
|
||||
|
||||
void dumpBacktrace(int maxdepth = -1);
|
||||
|
||||
} // namespace Internal
|
||||
} // namespace Internal
|
||||
} // namespace Debugger
|
||||
|
||||
#endif // DEBUGGER_BACKTRACE_H
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
|
||||
namespace Debugger {
|
||||
namespace Internal {
|
||||
|
||||
|
||||
#ifdef USE_PSAPI
|
||||
static inline QString imageName(DWORD processId)
|
||||
{
|
||||
|
||||
@@ -160,7 +160,7 @@ static bool getDebugDirectory(IMAGE_NT_HEADERS *ntHeaders,
|
||||
#endif
|
||||
// Empty. This is the case for MinGW binaries
|
||||
if (debugDirSize == 0)
|
||||
return true;
|
||||
return true;
|
||||
// Look up in file
|
||||
DWORD debugDirOffset;
|
||||
if (!getFileOffsetFromRVA(ntHeaders, debugDirRva, &debugDirOffset)) {
|
||||
@@ -221,7 +221,7 @@ static void collectPDBfiles(void *fileMemory, IMAGE_DEBUG_DIRECTORY *directoryBa
|
||||
|
||||
namespace Debugger {
|
||||
namespace Internal {
|
||||
|
||||
|
||||
bool getPDBFiles(const QString &peExecutableFileName, QStringList *rc, QString *errorMessage)
|
||||
{
|
||||
HANDLE hFile = NULL;
|
||||
|
||||
@@ -45,7 +45,7 @@ namespace Internal {
|
||||
// Return a list of Program-Database (*.pdb) files a PE executable refers to. */
|
||||
bool getPDBFiles(const QString &peExecutableFileName, QStringList *rc, QString *errorMessage);
|
||||
|
||||
} // namespace Internal
|
||||
} // namespace Internal
|
||||
} // namespace Debugger
|
||||
|
||||
#endif // DEBUGGER_PEUTILS_H
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
|
||||
|
||||
SOURCES += $$PWD/backtrace.cpp
|
||||
HEADERS += $$PWD/backtrace.h
|
||||
HEADERS += $$PWD/backtrace.h
|
||||
|
||||
win32 {
|
||||
|
||||
@@ -19,6 +19,6 @@ contains(QMAKE_CXX, cl) {
|
||||
# For the Privilege manipulation functions in sharedlibraryinjector.cpp.
|
||||
# Not required for MinGW.
|
||||
LIBS += advapi32.lib
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -95,7 +95,7 @@ QVariant SourceFilesModel::headerData(int section,
|
||||
{
|
||||
if (orientation == Qt::Horizontal && role == Qt::DisplayRole) {
|
||||
static QString headers[] = {
|
||||
tr("Internal name") + " ",
|
||||
tr("Internal name") + " ",
|
||||
tr("Full name") + " ",
|
||||
};
|
||||
return headers[section];
|
||||
@@ -178,7 +178,7 @@ SourceFilesWindow::SourceFilesWindow(QWidget *parent)
|
||||
setRootIsDecorated(false);
|
||||
setIconSize(QSize(10, 10));
|
||||
//header()->setDefaultAlignment(Qt::AlignLeft);
|
||||
|
||||
|
||||
connect(this, SIGNAL(activated(QModelIndex)),
|
||||
this, SLOT(sourceFileActivated(QModelIndex)));
|
||||
connect(act, SIGNAL(toggled(bool)),
|
||||
@@ -210,7 +210,7 @@ void SourceFilesWindow::contextMenuEvent(QContextMenuEvent *ev)
|
||||
act2 = new QAction(tr("Open file \"%1\"'").arg(name), &menu);
|
||||
act2->setEnabled(true);
|
||||
}
|
||||
|
||||
|
||||
menu.addAction(act1);
|
||||
menu.addAction(act2);
|
||||
menu.addSeparator();
|
||||
@@ -235,5 +235,5 @@ void SourceFilesWindow::removeAll()
|
||||
m_model->setSourceFiles(QMap<QString, QString>());
|
||||
header()->setResizeMode(0, QHeaderView::ResizeToContents);
|
||||
}
|
||||
|
||||
|
||||
#include "sourcefileswindow.moc"
|
||||
|
||||
@@ -43,7 +43,7 @@ namespace Debugger {
|
||||
namespace Internal {
|
||||
|
||||
class SourceFilesModel;
|
||||
|
||||
|
||||
class SourceFilesWindow : public QTreeView
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
@@ -139,9 +139,9 @@ QVariant StackHandler::data(const QModelIndex &index, int role) const
|
||||
return QVariant();
|
||||
|
||||
if (index.row() == m_stackFrames.size()) {
|
||||
if (role == Qt::DisplayRole && index.column() == 0)
|
||||
if (role == Qt::DisplayRole && index.column() == 0)
|
||||
return tr("...");
|
||||
if (role == Qt::DisplayRole && index.column() == 1)
|
||||
if (role == Qt::DisplayRole && index.column() == 1)
|
||||
return tr("<More>");
|
||||
if (role == Qt::DecorationRole && index.column() == 0)
|
||||
return m_emptyIcon;
|
||||
@@ -209,7 +209,7 @@ Qt::ItemFlags StackHandler::flags(const QModelIndex &index) const
|
||||
}
|
||||
|
||||
StackFrame StackHandler::currentFrame() const
|
||||
{
|
||||
{
|
||||
QTC_ASSERT(m_currentIndex >= 0, return StackFrame());
|
||||
QTC_ASSERT(m_currentIndex < m_stackFrames.size(), return StackFrame());
|
||||
return m_stackFrames.at(m_currentIndex);
|
||||
|
||||
@@ -93,7 +93,7 @@ void StackWindow::contextMenuEvent(QContextMenuEvent *ev)
|
||||
QModelIndex idx = indexAt(ev->pos());
|
||||
StackFrame frame = model()->data(idx, Qt::UserRole).value<StackFrame>();
|
||||
QString address = frame.address;
|
||||
|
||||
|
||||
QMenu menu;
|
||||
|
||||
menu.addAction(theDebuggerAction(ExpandStack));
|
||||
@@ -107,7 +107,7 @@ void StackWindow::contextMenuEvent(QContextMenuEvent *ev)
|
||||
actShowMemory->setEnabled(false);
|
||||
} else {
|
||||
actShowMemory->setText(tr("Open memory editor at %1").arg(address));
|
||||
}
|
||||
}
|
||||
|
||||
QAction *actShowDisassembler = menu.addAction(QString());
|
||||
if (address.isEmpty()) {
|
||||
|
||||
@@ -43,7 +43,7 @@ class DebuggerManager;
|
||||
|
||||
namespace Internal {
|
||||
class DisassemblerViewAgent;
|
||||
|
||||
|
||||
class StackWindow : public QTreeView
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
@@ -34,7 +34,7 @@
|
||||
|
||||
namespace Debugger {
|
||||
namespace Internal {
|
||||
|
||||
|
||||
class ThreadsWindow : public QTreeView
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
@@ -61,7 +61,7 @@
|
||||
#if DEBUG_MODEL
|
||||
# define MODEL_DEBUG(s) qDebug() << s
|
||||
#else
|
||||
# define MODEL_DEBUG(s)
|
||||
# define MODEL_DEBUG(s)
|
||||
#endif
|
||||
#define MODEL_DEBUGX(s) qDebug() << s
|
||||
|
||||
@@ -101,7 +101,7 @@ public:
|
||||
// WatchData
|
||||
//
|
||||
////////////////////////////////////////////////////////////////////
|
||||
|
||||
|
||||
WatchData::WatchData() :
|
||||
hasChildren(false),
|
||||
generation(-1),
|
||||
@@ -173,7 +173,7 @@ void WatchData::setValue(const QString &value0)
|
||||
// column. No need to duplicate it here.
|
||||
if (value.startsWith("(" + type + ") 0x"))
|
||||
value = value.section(" ", -1, -1);
|
||||
|
||||
|
||||
setValueUnneeded();
|
||||
}
|
||||
|
||||
@@ -499,7 +499,7 @@ QString niceType(const QString typeIn)
|
||||
for (int i = 0; i < 10; ++i) {
|
||||
int start = type.indexOf("std::allocator<");
|
||||
if (start == -1)
|
||||
break;
|
||||
break;
|
||||
// search for matching '>'
|
||||
int pos;
|
||||
int level = 0;
|
||||
@@ -691,7 +691,7 @@ bool WatchModel::hasChildren(const QModelIndex &parent) const
|
||||
|
||||
WatchItem *WatchModel::watchItem(const QModelIndex &idx) const
|
||||
{
|
||||
return idx.isValid()
|
||||
return idx.isValid()
|
||||
? static_cast<WatchItem*>(idx.internalPointer()) : m_root;
|
||||
}
|
||||
|
||||
@@ -700,7 +700,7 @@ QModelIndex WatchModel::watchIndex(const WatchItem *item) const
|
||||
return watchIndexHelper(item, m_root, QModelIndex());
|
||||
}
|
||||
|
||||
QModelIndex WatchModel::watchIndexHelper(const WatchItem *needle,
|
||||
QModelIndex WatchModel::watchIndexHelper(const WatchItem *needle,
|
||||
const WatchItem *parentItem, const QModelIndex &parentIndex) const
|
||||
{
|
||||
if (needle == parentItem)
|
||||
@@ -715,7 +715,7 @@ QModelIndex WatchModel::watchIndexHelper(const WatchItem *needle,
|
||||
return QModelIndex();
|
||||
}
|
||||
|
||||
void WatchModel::emitDataChanged(int column, const QModelIndex &parentIndex)
|
||||
void WatchModel::emitDataChanged(int column, const QModelIndex &parentIndex)
|
||||
{
|
||||
QModelIndex idx1 = index(0, column, parentIndex);
|
||||
QModelIndex idx2 = index(rowCount(parentIndex) - 1, column, parentIndex);
|
||||
@@ -785,7 +785,7 @@ QVariant WatchModel::data(const QModelIndex &idx, int role) const
|
||||
case ActiveDataRole:
|
||||
qDebug() << "ASK FOR" << data.iname;
|
||||
return true;
|
||||
|
||||
|
||||
case TypeFormatListRole:
|
||||
if (isIntType(data.type))
|
||||
return QStringList() << tr("decimal") << tr("hexadecimal")
|
||||
@@ -807,7 +807,7 @@ QVariant WatchModel::data(const QModelIndex &idx, int role) const
|
||||
}
|
||||
|
||||
default:
|
||||
break;
|
||||
break;
|
||||
}
|
||||
return QVariant();
|
||||
}
|
||||
@@ -825,7 +825,7 @@ bool WatchModel::setData(const QModelIndex &index, const QVariant &value, int ro
|
||||
}
|
||||
} else if (role == TypeFormatRole) {
|
||||
m_handler->setFormat(data.type, value.toInt());
|
||||
} else if (role == IndividualFormatRole) {
|
||||
} else if (role == IndividualFormatRole) {
|
||||
const int format = value.toInt();
|
||||
if (format == -1) {
|
||||
m_handler->m_individualFormats.remove(data.iname);
|
||||
@@ -879,7 +879,7 @@ QVariant WatchModel::headerData(int section, Qt::Orientation orientation, int ro
|
||||
case 2: return QString(tr("Type") + QLatin1String(" "));
|
||||
}
|
||||
}
|
||||
return QVariant();
|
||||
return QVariant();
|
||||
}
|
||||
|
||||
struct IName : public QString
|
||||
@@ -899,7 +899,7 @@ bool iNameLess(const QString &iname1, const QString &iname2)
|
||||
return i1 < i2;
|
||||
}
|
||||
}
|
||||
return name1 < name2;
|
||||
return name1 < name2;
|
||||
}
|
||||
|
||||
bool operator<(const IName &iname1, const IName &iname2)
|
||||
@@ -916,7 +916,7 @@ static int findInsertPosition(const QList<WatchItem *> &list, const WatchItem *i
|
||||
{
|
||||
QList<WatchItem *>::const_iterator it =
|
||||
qLowerBound(list.begin(), list.end(), item, iNameSorter);
|
||||
return it - list.begin();
|
||||
return it - list.begin();
|
||||
}
|
||||
|
||||
void WatchModel::insertData(const WatchData &data)
|
||||
@@ -967,7 +967,7 @@ void WatchModel::insertData(const WatchData &data)
|
||||
void WatchModel::insertBulkData(const QList<WatchData> &list)
|
||||
{
|
||||
#if 0
|
||||
for (int i = 0; i != list.size(); ++i)
|
||||
for (int i = 0; i != list.size(); ++i)
|
||||
insertData(list.at(i));
|
||||
return;
|
||||
#endif
|
||||
@@ -1436,7 +1436,7 @@ WatchModel *WatchHandler::model(WatchType type) const
|
||||
QTC_ASSERT(false, /**/);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
WatchModel *WatchHandler::modelForIName(const QString &iname) const
|
||||
{
|
||||
if (iname.startsWith(QLatin1String("local")))
|
||||
|
||||
@@ -114,7 +114,7 @@ public:
|
||||
bool isLocal() const { return iname.startsWith(QLatin1String("local.")); }
|
||||
bool isWatcher() const { return iname.startsWith(QLatin1String("watch.")); }
|
||||
bool isValid() const { return !iname.isEmpty(); }
|
||||
|
||||
|
||||
bool isEqual(const WatchData &other) const;
|
||||
|
||||
static QString msgNotInScope();
|
||||
@@ -171,7 +171,7 @@ enum IntegerFormat
|
||||
enum DumpableFormat
|
||||
{
|
||||
PrettyFormat = 0, // keep that at 0 as default
|
||||
PlainFomat,
|
||||
PlainFomat,
|
||||
};
|
||||
|
||||
class WatchModel : public QAbstractItemModel
|
||||
|
||||
@@ -332,7 +332,7 @@ static void blockRecursion(const CPlusPlus::Overview &overview,
|
||||
it = seenHash->insert(name, 0);
|
||||
} else {
|
||||
++(it.value());
|
||||
}
|
||||
}
|
||||
// Is the declaration on or past the current line, that is,
|
||||
// the variable not initialized.
|
||||
if (symbol->line() >= line)
|
||||
@@ -1388,7 +1388,7 @@ static void gbdMiToWatchData(const GdbMi &root,
|
||||
{
|
||||
if (debug > 1)
|
||||
qDebug() << Q_FUNC_INFO << '\n' << root.toString(false, 0);
|
||||
WatchData w;
|
||||
WatchData w;
|
||||
QString v;
|
||||
// Check for name/iname and use as expression default
|
||||
if (ctx.recursionLevel == 0) {
|
||||
@@ -1427,7 +1427,7 @@ static void gbdMiToWatchData(const GdbMi &root,
|
||||
w.exp = v;
|
||||
gdbMiGetStringValue(&w.addr, root, "addr");
|
||||
gdbMiGetStringValue(&w.saddr, root, "saddr");
|
||||
gdbMiGetBoolValue(&w.valueEnabled, root, "valueenabled");
|
||||
gdbMiGetBoolValue(&w.valueEnabled, root, "valueenabled");
|
||||
gdbMiGetBoolValue(&w.valueEditable, root, "valueeditable");
|
||||
if (gdbMiGetStringValue(&v, root, "valuetooltip", "valuetooltipencoded"))
|
||||
w.setValue(v);
|
||||
|
||||
@@ -76,7 +76,7 @@ public:
|
||||
{
|
||||
QLineEdit *lineEdit = qobject_cast<QLineEdit *>(editor);
|
||||
QTC_ASSERT(lineEdit, return);
|
||||
if (index.column() == 1)
|
||||
if (index.column() == 1)
|
||||
lineEdit->setText(index.model()->data(index, Qt::DisplayRole).toString());
|
||||
else
|
||||
lineEdit->setText(index.model()->data(index, ExpressionRole).toString());
|
||||
@@ -140,15 +140,15 @@ WatchWindow::WatchWindow(Type type, DebuggerManager *manager, QWidget *parent)
|
||||
this, SLOT(expandNode(QModelIndex)));
|
||||
connect(this, SIGNAL(collapsed(QModelIndex)),
|
||||
this, SLOT(collapseNode(QModelIndex)));
|
||||
}
|
||||
|
||||
void WatchWindow::expandNode(const QModelIndex &idx)
|
||||
{
|
||||
}
|
||||
|
||||
void WatchWindow::expandNode(const QModelIndex &idx)
|
||||
{
|
||||
model()->setData(idx, true, ExpandedRole);
|
||||
}
|
||||
|
||||
void WatchWindow::collapseNode(const QModelIndex &idx)
|
||||
{
|
||||
}
|
||||
|
||||
void WatchWindow::collapseNode(const QModelIndex &idx)
|
||||
{
|
||||
model()->setData(idx, false, ExpandedRole);
|
||||
}
|
||||
|
||||
@@ -208,7 +208,7 @@ void WatchWindow::contextMenuEvent(QContextMenuEvent *ev)
|
||||
QString exp = model()->data(mi0, ExpressionRole).toString();
|
||||
QString type = model()->data(mi2).toString();
|
||||
|
||||
QStringList alternativeFormats =
|
||||
QStringList alternativeFormats =
|
||||
model()->data(mi0, TypeFormatListRole).toStringList();
|
||||
const int typeFormat = qMax(int(DecimalFormat), model()->data(mi0, TypeFormatRole).toInt());
|
||||
const int individualFormat = model()->data(mi0, IndividualFormatRole).toInt();
|
||||
@@ -286,7 +286,7 @@ void WatchWindow::contextMenuEvent(QContextMenuEvent *ev)
|
||||
menu.addAction(actClearCodeModelSnapshot);
|
||||
menu.addSeparator();
|
||||
menu.addAction(theDebuggerAction(UseToolTipsInLocalsView));
|
||||
|
||||
|
||||
menu.addAction(theDebuggerAction(AutoDerefPointers));
|
||||
|
||||
QAction *actAdjustColumnWidths =
|
||||
@@ -322,7 +322,7 @@ void WatchWindow::contextMenuEvent(QContextMenuEvent *ev)
|
||||
m_manager->clearCppCodeModelSnapshot();
|
||||
} else if (clearIndividualFormatAction && act == clearIndividualFormatAction) {
|
||||
model()->setData(mi1, -1, IndividualFormatRole);
|
||||
} else {
|
||||
} else {
|
||||
for (int i = 0; i != alternativeFormats.size(); ++i) {
|
||||
if (act == typeFormatActions.at(i))
|
||||
model()->setData(mi1, i, TypeFormatRole);
|
||||
@@ -343,7 +343,7 @@ void WatchWindow::setAlwaysResizeColumnsToContents(bool on)
|
||||
if (!header())
|
||||
return;
|
||||
m_alwaysResizeColumnsToContents = on;
|
||||
QHeaderView::ResizeMode mode = on
|
||||
QHeaderView::ResizeMode mode = on
|
||||
? QHeaderView::ResizeToContents : QHeaderView::Interactive;
|
||||
header()->setResizeMode(0, mode);
|
||||
header()->setResizeMode(1, mode);
|
||||
|
||||
@@ -53,7 +53,7 @@ public:
|
||||
WatchWindow(Type type, DebuggerManager *manager, QWidget *parent = 0);
|
||||
void setType(Type type) { m_type = type; }
|
||||
Type type() const { return m_type; }
|
||||
|
||||
|
||||
public slots:
|
||||
void resizeColumnsToContents();
|
||||
void setAlwaysResizeColumnsToContents(bool on = true);
|
||||
|
||||
@@ -57,7 +57,7 @@ class FormClassWizardGenerationParametersPrivate : public QSharedData
|
||||
{
|
||||
public:
|
||||
FormClassWizardGenerationParametersPrivate();
|
||||
void fromSettings(const QSettings *);
|
||||
void fromSettings(const QSettings *);
|
||||
void toSettings(QSettings *) const;
|
||||
bool equals(const FormClassWizardGenerationParametersPrivate &rhs) const;
|
||||
|
||||
|
||||
@@ -327,7 +327,7 @@ QString FormTemplateWizardPage::changeUiClassName(const QString &uiXml, const QS
|
||||
qDebug() << '<' << Q_FUNC_INFO << newUiClassName << rc;
|
||||
return rc;
|
||||
}
|
||||
#endif // USE_XSLT
|
||||
#endif // USE_XSLT
|
||||
|
||||
} // namespace Internal
|
||||
} // namespace Designer
|
||||
|
||||
@@ -374,7 +374,7 @@ QString FormWindowEditor::contents() const
|
||||
return QString::null;
|
||||
// Activate once all Qt branches around have integrated 4.5.2
|
||||
// (Kinetic)
|
||||
/*
|
||||
/*
|
||||
#if QT_VERSION > 0x040501
|
||||
// Quiet save as of Qt 4.5.2
|
||||
qdesigner_internal::FormWindowBase *fwb = qobject_cast<qdesigner_internal::FormWindowBase *>(m_formWindow);
|
||||
|
||||
@@ -183,7 +183,7 @@ private slots:
|
||||
private:
|
||||
void syncGridFeature();
|
||||
|
||||
FormWindowBasePrivate *m_d;
|
||||
FormWindowBasePrivate *m_d;
|
||||
};
|
||||
|
||||
} // namespace qdesigner_internal
|
||||
|
||||
@@ -29,7 +29,7 @@
|
||||
|
||||
#include "fakevimactions.h"
|
||||
|
||||
// Please do not add any direct dependencies to other Qt Creator code here.
|
||||
// Please do not add any direct dependencies to other Qt Creator code here.
|
||||
// Instead emit signals and let the FakeVimPlugin channel the information to
|
||||
// Qt Creator. The idea is to keep this file here in a "clean" state that
|
||||
// allows easy reuse with any QTextEdit or QPlainTextEdit derived class.
|
||||
@@ -66,7 +66,7 @@ FakeVimSettings::~FakeVimSettings()
|
||||
{
|
||||
qDeleteAll(m_items);
|
||||
}
|
||||
|
||||
|
||||
void FakeVimSettings::insertItem(int code, SavedAction *item,
|
||||
const QString &longName, const QString &shortName)
|
||||
{
|
||||
@@ -92,7 +92,7 @@ void FakeVimSettings::writeSettings(QSettings *settings)
|
||||
foreach (SavedAction *item, m_items)
|
||||
item->writeSettings(settings);
|
||||
}
|
||||
|
||||
|
||||
SavedAction *FakeVimSettings::item(int code)
|
||||
{
|
||||
QTC_ASSERT(m_items.value(code, 0), qDebug() << "CODE: " << code; return 0);
|
||||
|
||||
@@ -77,9 +77,9 @@ public:
|
||||
void writeSettings(QSettings *settings);
|
||||
|
||||
private:
|
||||
QHash<int, Utils::SavedAction *> m_items;
|
||||
QHash<QString, int> m_nameToCode;
|
||||
QHash<int, QString> m_codeToName;
|
||||
QHash<int, Utils::SavedAction *> m_items;
|
||||
QHash<QString, int> m_nameToCode;
|
||||
QHash<int, QString> m_codeToName;
|
||||
};
|
||||
|
||||
FakeVimSettings *theFakeVimSettings();
|
||||
|
||||
@@ -214,7 +214,7 @@ struct Range
|
||||
: beginPos(qMin(b, e)), endPos(qMax(b, e)), rangemode(m)
|
||||
{}
|
||||
|
||||
QString toString() const
|
||||
QString toString() const
|
||||
{
|
||||
return QString("%1-%2 (mode: %3)").arg(beginPos).arg(endPos)
|
||||
.arg(rangemode);
|
||||
|
||||
@@ -137,28 +137,28 @@ QWidget *FakeVimOptionPage::createPage(QWidget *parent)
|
||||
m_ui.setupUi(w);
|
||||
|
||||
m_group.clear();
|
||||
m_group.insert(theFakeVimSetting(ConfigUseFakeVim),
|
||||
m_group.insert(theFakeVimSetting(ConfigUseFakeVim),
|
||||
m_ui.checkBoxUseFakeVim);
|
||||
|
||||
m_group.insert(theFakeVimSetting(ConfigExpandTab),
|
||||
m_group.insert(theFakeVimSetting(ConfigExpandTab),
|
||||
m_ui.checkBoxExpandTab);
|
||||
m_group.insert(theFakeVimSetting(ConfigHlSearch),
|
||||
m_group.insert(theFakeVimSetting(ConfigHlSearch),
|
||||
m_ui.checkBoxHlSearch);
|
||||
m_group.insert(theFakeVimSetting(ConfigShiftWidth),
|
||||
m_group.insert(theFakeVimSetting(ConfigShiftWidth),
|
||||
m_ui.lineEditShiftWidth);
|
||||
|
||||
m_group.insert(theFakeVimSetting(ConfigSmartTab),
|
||||
m_group.insert(theFakeVimSetting(ConfigSmartTab),
|
||||
m_ui.checkBoxSmartTab);
|
||||
m_group.insert(theFakeVimSetting(ConfigStartOfLine),
|
||||
m_group.insert(theFakeVimSetting(ConfigStartOfLine),
|
||||
m_ui.checkBoxStartOfLine);
|
||||
m_group.insert(theFakeVimSetting(ConfigTabStop),
|
||||
m_group.insert(theFakeVimSetting(ConfigTabStop),
|
||||
m_ui.lineEditTabStop);
|
||||
m_group.insert(theFakeVimSetting(ConfigBackspace),
|
||||
m_group.insert(theFakeVimSetting(ConfigBackspace),
|
||||
m_ui.lineEditBackspace);
|
||||
|
||||
m_group.insert(theFakeVimSetting(ConfigAutoIndent),
|
||||
m_group.insert(theFakeVimSetting(ConfigAutoIndent),
|
||||
m_ui.checkBoxAutoIndent);
|
||||
m_group.insert(theFakeVimSetting(ConfigIncSearch),
|
||||
m_group.insert(theFakeVimSetting(ConfigIncSearch),
|
||||
m_ui.checkBoxIncSearch);
|
||||
|
||||
connect(m_ui.pushButtonCopyTextEditorSettings, SIGNAL(clicked()),
|
||||
@@ -173,9 +173,9 @@ QWidget *FakeVimOptionPage::createPage(QWidget *parent)
|
||||
|
||||
void FakeVimOptionPage::copyTextEditorSettings()
|
||||
{
|
||||
TextEditor::TabSettings ts =
|
||||
TextEditor::TabSettings ts =
|
||||
TextEditor::TextEditorSettings::instance()->tabSettings();
|
||||
|
||||
|
||||
m_ui.checkBoxExpandTab->setChecked(ts.m_spacesForTabs);
|
||||
m_ui.lineEditTabStop->setText(QString::number(ts.m_tabSize));
|
||||
m_ui.lineEditShiftWidth->setText(QString::number(ts.m_indentSize));
|
||||
@@ -271,7 +271,7 @@ private:
|
||||
} // namespace FakeVim
|
||||
|
||||
FakeVimPluginPrivate::FakeVimPluginPrivate(FakeVimPlugin *plugin)
|
||||
{
|
||||
{
|
||||
q = plugin;
|
||||
m_fakeVimOptionsPage = 0;
|
||||
}
|
||||
@@ -300,7 +300,7 @@ bool FakeVimPluginPrivate::initialize()
|
||||
m_fakeVimOptionsPage = new FakeVimOptionPage;
|
||||
q->addObject(m_fakeVimOptionsPage);
|
||||
theFakeVimSettings()->readSettings(Core::ICore::instance()->settings());
|
||||
|
||||
|
||||
Core::Command *cmd = 0;
|
||||
cmd = actionManager->registerAction(theFakeVimSetting(ConfigUseFakeVim),
|
||||
Constants::INSTALL_HANDLER, globalcontext);
|
||||
@@ -407,7 +407,7 @@ void FakeVimPluginPrivate::editorOpened(Core::IEditor *editor)
|
||||
// we can only handle QTextEdit and QPlainTextEdit
|
||||
if (!qobject_cast<QTextEdit *>(widget) && !qobject_cast<QPlainTextEdit *>(widget))
|
||||
return;
|
||||
|
||||
|
||||
//qDebug() << "OPENING: " << editor << editor->widget()
|
||||
// << "MODE: " << theFakeVimSetting(ConfigUseFakeVim)->value();
|
||||
|
||||
@@ -440,7 +440,7 @@ void FakeVimPluginPrivate::editorOpened(Core::IEditor *editor)
|
||||
|
||||
handler->setCurrentFileName(editor->file()->fileName());
|
||||
handler->installEventFilter();
|
||||
|
||||
|
||||
// pop up the bar
|
||||
if (theFakeVimSetting(ConfigUseFakeVim)->value().toBool())
|
||||
showCommandBuffer("");
|
||||
@@ -457,8 +457,8 @@ void FakeVimPluginPrivate::setUseFakeVim(const QVariant &value)
|
||||
//qDebug() << "SET USE FAKEVIM" << value;
|
||||
bool on = value.toBool();
|
||||
if (on) {
|
||||
Core::EditorManager::instance()->showEditorStatusBar(
|
||||
QLatin1String(Constants::MINI_BUFFER),
|
||||
Core::EditorManager::instance()->showEditorStatusBar(
|
||||
QLatin1String(Constants::MINI_BUFFER),
|
||||
"vi emulation mode. Type :q to leave. Use , Ctrl-R to trigger run.",
|
||||
tr("Quit FakeVim"), this, SLOT(quitFakeVim()));
|
||||
foreach (Core::IEditor *editor, m_editorToHandler.keys())
|
||||
@@ -499,7 +499,7 @@ void FakeVimPluginPrivate::writeFile(bool *handled,
|
||||
file->save(fileName);
|
||||
Core::ICore::instance()->fileManager()->unblockFileChange(file);
|
||||
*handled = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void FakeVimPluginPrivate::handleExCommand(const QString &cmd)
|
||||
@@ -606,7 +606,7 @@ void FakeVimPluginPrivate::indentRegion(int *amount, int beginLine, int endLine,
|
||||
if (!bt)
|
||||
return;
|
||||
|
||||
TextEditor::TabSettings tabSettings =
|
||||
TextEditor::TabSettings tabSettings =
|
||||
TextEditor::TextEditorSettings::instance()->tabSettings();
|
||||
typedef SharedTools::Indenter<TextEditor::TextBlockIterator> Indenter;
|
||||
Indenter &indenter = Indenter::instance();
|
||||
@@ -646,7 +646,7 @@ void FakeVimPluginPrivate::quitFakeVim()
|
||||
void FakeVimPluginPrivate::showCommandBuffer(const QString &contents)
|
||||
{
|
||||
//qDebug() << "SHOW COMMAND BUFFER" << contents;
|
||||
Core::EditorManager::instance()->showEditorStatusBar(
|
||||
Core::EditorManager::instance()->showEditorStatusBar(
|
||||
QLatin1String(Constants::MINI_BUFFER), contents,
|
||||
tr("Quit FakeVim"), this, SLOT(quitFakeVim()));
|
||||
}
|
||||
|
||||
@@ -51,7 +51,7 @@ class ProjectFilesFactory: public Core::IEditorFactory
|
||||
public:
|
||||
ProjectFilesFactory(Manager *manager, TextEditor::TextEditorActionHandler *handler);
|
||||
virtual ~ProjectFilesFactory();
|
||||
|
||||
|
||||
Manager *manager() const;
|
||||
|
||||
virtual Core::IEditor *createEditor(QWidget *parent);
|
||||
|
||||
@@ -300,7 +300,7 @@ bool GenericProjectWizard::isValidDir(const QFileInfo &fileInfo) const
|
||||
return false;
|
||||
|
||||
else if (fileName == QLatin1String("CVS"))
|
||||
return false;
|
||||
return false;
|
||||
|
||||
// ### user include/exclude
|
||||
|
||||
|
||||
@@ -150,7 +150,7 @@ void GitCommand::run()
|
||||
output += process.readAllStandardOutput();
|
||||
error += QString::fromLocal8Bit(process.readAllStandardError());
|
||||
switch (m_reportTerminationMode) {
|
||||
case NoReport:
|
||||
case NoReport:
|
||||
break;
|
||||
case ReportStdout:
|
||||
output += msgTermination(process.exitCode(), m_binaryPath, m_jobs.at(j).arguments).toUtf8();
|
||||
|
||||
@@ -228,7 +228,7 @@ void GitoriousHostWidget::slotBrowse()
|
||||
}
|
||||
|
||||
void GitoriousHostWidget::slotDelete()
|
||||
{
|
||||
{
|
||||
const QModelIndex index = ui->hostView->selectionModel()->currentIndex();
|
||||
ui->hostView->selectionModel()->clear();
|
||||
if (index.isValid()) {
|
||||
|
||||
@@ -81,7 +81,7 @@ GitoriousRepositoryWizardPage::GitoriousRepositoryWizardPage(const GitoriousProj
|
||||
{
|
||||
QStringList headers;
|
||||
headers << tr("Name") << tr("Owner") << tr("Description");
|
||||
m_model->setHorizontalHeaderLabels(headers);
|
||||
m_model->setHorizontalHeaderLabels(headers);
|
||||
// Filter on all columns
|
||||
m_filterModel->setSourceModel(m_model);
|
||||
m_filterModel->setFilterKeyColumn(-1);
|
||||
|
||||
@@ -55,13 +55,13 @@ static QTextCharFormat commentFormat()
|
||||
// keywords (words in front of a colon as in 'Task: <bla>').
|
||||
|
||||
class GitSubmitHighlighter : QSyntaxHighlighter {
|
||||
public:
|
||||
public:
|
||||
explicit GitSubmitHighlighter(QTextEdit *parent);
|
||||
virtual void highlightBlock(const QString &text);
|
||||
|
||||
private:
|
||||
enum State { Header, Comment, Other };
|
||||
const QTextCharFormat m_commentFormat;
|
||||
const QTextCharFormat m_commentFormat;
|
||||
const QRegExp m_keywordPattern;
|
||||
const QChar m_hashChar;
|
||||
};
|
||||
@@ -87,7 +87,7 @@ void GitSubmitHighlighter::highlightBlock(const QString &text)
|
||||
state = Comment;
|
||||
}
|
||||
// Apply format.
|
||||
switch (state) {
|
||||
switch (state) {
|
||||
case Header: {
|
||||
QTextCharFormat charFormat = format(0);
|
||||
charFormat.setFontWeight(QFont::Bold);
|
||||
|
||||
@@ -9,4 +9,4 @@ HEADERS += helloworldplugin.h \
|
||||
|
||||
SOURCES += helloworldplugin.cpp \
|
||||
helloworldwindow.cpp
|
||||
|
||||
|
||||
|
||||
@@ -433,7 +433,7 @@ void CentralWidget::setSourceInNewTab(const QUrl &url, int zoom)
|
||||
viewer->setZoom(zoom);
|
||||
viewer->setSource(url);
|
||||
viewer->setFocus(Qt::OtherFocusReason);
|
||||
|
||||
|
||||
#if defined(QT_NO_WEBKIT)
|
||||
QFont font = viewer->font();
|
||||
font.setPointSize(font.pointSize() + int(zoom));
|
||||
@@ -551,7 +551,7 @@ void CentralWidget::showTabBarContextMenu(const QPoint &point)
|
||||
closePages->setEnabled(enableAction);
|
||||
|
||||
menu.addSeparator();
|
||||
|
||||
|
||||
QAction *newBookmark = menu.addAction(tr("Add Bookmark for this Page..."));
|
||||
const QString &url = viewer->source().toString();
|
||||
if (url.isEmpty() || url == QLatin1String("about:blank"))
|
||||
|
||||
@@ -101,7 +101,7 @@ QWidget *GeneralSettingsPage::createPage(QWidget *parent)
|
||||
|
||||
QString homePage = m_helpEngine->customValue(QLatin1String("HomePage"),
|
||||
QString()).toString();
|
||||
|
||||
|
||||
if (homePage.isEmpty()) {
|
||||
homePage = m_helpEngine->customValue(QLatin1String("DefaultHomePage"),
|
||||
QLatin1String("about:blank")).toString();
|
||||
@@ -114,7 +114,7 @@ QWidget *GeneralSettingsPage::createPage(QWidget *parent)
|
||||
index = m_helpEngine->customValue(QLatin1String("ContextHelpOption"), 0).toInt();
|
||||
m_ui.contextHelpComboBox->setCurrentIndex(index);
|
||||
|
||||
|
||||
|
||||
connect(m_ui.currentPageButton, SIGNAL(clicked()), this, SLOT(setCurrentPage()));
|
||||
connect(m_ui.blankPageButton, SIGNAL(clicked()), this, SLOT(setBlankPage()));
|
||||
connect(m_ui.defaultPageButton, SIGNAL(clicked()), this, SLOT(setDefaultPage()));
|
||||
|
||||
@@ -213,7 +213,7 @@ void PerforceSettings::toSettings(QSettings *settings) const
|
||||
}
|
||||
|
||||
void PerforceSettings::setSettings(const Settings &newSettings)
|
||||
{
|
||||
{
|
||||
if (newSettings != m_settings) {
|
||||
// trigger check
|
||||
m_settings = newSettings;
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user