blob: e5d1ae0fa2907a6ff54cbee93fd0eadb6948af80 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
|
// Copyright (C) 2016 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
#pragma once
#include <utils/aspects.h>
#include <QMap>
namespace Debugger::Internal {
class DebuggerSettings
{
public:
DebuggerSettings();
static QString dump();
// Page 1: General
Utils::BoolAspect &useAlternatingRowColors;
Utils::BoolAspect &useAnnotationsInMainEditor;
Utils::BoolAspect &useToolTipsInMainEditor;
Utils::BoolAspect &closeSourceBuffersOnExit;
Utils::BoolAspect &closeMemoryBuffersOnExit;
Utils::BoolAspect &raiseOnInterrupt;
Utils::BoolAspect &breakpointsFullPathByDefault;
Utils::BoolAspect &warnOnReleaseBuilds;
Utils::IntegerAspect &maximalStackDepth;
Utils::BoolAspect &fontSizeFollowsEditor;
Utils::BoolAspect &switchModeOnExit;
Utils::BoolAspect &showQmlObjectTree;
Utils::BoolAspect &stationaryEditorWhileStepping;
Utils::BoolAspect &forceLoggingToConsole;
Utils::BoolAspect &showUnsupportedBreakpointWarning;
Utils::TypedAspect<QMap<QString, QString>> &sourcePathMap;
Utils::BoolAspect ®isterForPostMortem;
// Page 2: Gdb
Utils::IntegerAspect &gdbWatchdogTimeout;
Utils::BoolAspect &skipKnownFrames;
Utils::BoolAspect &useMessageBoxForSignals;
Utils::BoolAspect &adjustBreakpointLocations;
Utils::BoolAspect &useDynamicType;
Utils::BoolAspect &loadGdbInit;
Utils::BoolAspect &loadGdbDumpers;
Utils::BoolAspect &intelFlavor;
Utils::BoolAspect &usePseudoTracepoints;
Utils::BoolAspect &useIndexCache;
Utils::TriStateAspect &useDebugInfoD;
Utils::StringAspect &gdbStartupCommands;
Utils::StringAspect &gdbPostAttachCommands;
Utils::BoolAspect &targetAsync;
Utils::BoolAspect &autoEnrichParameters;
Utils::BoolAspect &breakOnThrow;
Utils::BoolAspect &breakOnCatch;
Utils::BoolAspect &breakOnWarning;
Utils::BoolAspect &breakOnFatal;
Utils::BoolAspect &breakOnAbort;
Utils::BoolAspect &enableReverseDebugging;
Utils::BoolAspect &multiInferior;
// Page 4: Locals and expressions
Utils::BoolAspect &useDebuggingHelpers;
Utils::BoolAspect &allowInferiorCalls;
Utils::BoolAspect &useCodeModel;
Utils::BoolAspect &showThreadNames;
Utils::FilePathAspect &extraDumperFile; // For loading a file. Recommended.
Utils::StringAspect &extraDumperCommands; // To modify an existing setup.
Utils::BoolAspect &showStdNamespace;
Utils::BoolAspect &showQtNamespace;
Utils::BoolAspect &showQObjectNames;
Utils::IntegerAspect &maximalStringLength;
Utils::IntegerAspect &displayStringLimit;
Utils::IntegerAspect &defaultArraySize;
// Page 5: CDB
Utils::StringAspect cdbAdditionalArguments;
Utils::StringListAspect cdbBreakEvents;
Utils::BoolAspect cdbBreakOnCrtDbgReport;
Utils::BoolAspect useCdbConsole;
Utils::BoolAspect cdbBreakPointCorrection;
Utils::BoolAspect cdbUsePythonDumper;
Utils::BoolAspect firstChanceExceptionTaskEntry;
Utils::BoolAspect secondChanceExceptionTaskEntry;
Utils::BoolAspect ignoreFirstChanceAccessViolation;
Utils::BoolAspect enableHeapDebugging;
// Page 6: CDB Paths
Utils::StringListAspect cdbSymbolPaths;
Utils::StringListAspect cdbSourcePaths;
// Without pages
Utils::BoolAspect alwaysAdjustColumnWidths;
Utils::BaseAspect settingsDialog;
Utils::BoolAspect autoQuit;
Utils::BoolAspect lockView;
Utils::BoolAspect logTimeStamps;
// Stack
Utils::BaseAspect expandStack;
Utils::BaseAspect createFullBacktrace;
Utils::BoolAspect useToolTipsInStackView;
// Watchers & Locals
Utils::BoolAspect autoDerefPointers;
Utils::BoolAspect sortStructMembers;
Utils::BoolAspect useToolTipsInLocalsView;
// Breakpoints
Utils::BoolAspect synchronizeBreakpoints; // ?
Utils::BoolAspect allPluginBreakpoints;
Utils::BoolAspect selectedPluginBreakpoints;
Utils::BoolAspect noPluginBreakpoints;
Utils::StringAspect selectedPluginBreakpointsPattern;
Utils::BoolAspect useToolTipsInBreakpointsView;
// QML Tools
Utils::BoolAspect showAppOnTop;
Utils::AspectContainer all; // All
Utils::AspectContainer page5; // CDB
Utils::AspectContainer page6; // CDB Paths
private:
DebuggerSettings(const DebuggerSettings &) = delete;
DebuggerSettings &operator=(const DebuggerSettings &) = delete;
};
DebuggerSettings &settings();
QString msgSetBreakpointAtFunction(const char *function);
QString msgSetBreakpointAtFunctionToolTip(const char *function, const QString &hint = {});
} // Debugger::Internal
|