1
Qt Creator version 2.2 contains bug fixes and new features.
2
3
The most important changes are listed in this document. For a complete
4
list of changes, see the Git log for the Qt Creator sources that
5
you can check out from the public Git repository. For example:
6
7
git clone git://gitorious.org/qt-creator/qt-creator.git
8
git log --cherry-pick --pretty=oneline origin/2.1...origin/2.2
9
10
General
11
   * Add support for running user defined external tools (Tools > External)
12
   * Move tool chain definitions out of Qt versions:
13
      * You can now define tool chains in Tools > Options > Tool Chains
14
      * Qt Creator now supports more than one instance of a tool chain
15
   * Add support for customizing MIME types by editing patterns and
16
     magic headers
17
   * Integrate the memcheck tool from Valgrind for Linux and Mac OS X
18
   * Create the infrastructure to set up "soft dependencies" between plugins
19
   * Add the qtpromaker tool that has the same functionality as
20
     "qmake -project", but is much faster. It provides a way to easily set up
21
     dummy .pro files that you need to quickly inspect and navigate "alien"
22
     codebases with Qt Creator
23
   * Document Qt Creator coding style
24
25
Editing
26
   * Add an Inkpot color scheme
27
   * Add UTF-8 BOM support
28
   * Move the Open in External Editor item to Tools > External > Text
29
   * Add the Expand/Collapse All context menu item to the Outline pane
30
   * Add support for user-defined macros (contributed by Nicolas Arnaud-Cormos)
31
   * Add a snippet editor with syntax highlighting, indentation, and basic
32
     auto-completion for C++ and QML
33
   * Add GLSL support with:
34
     - Syntax checking
35
     - Highlighting
36
     - Code completion
37
   * Binary editor:
38
     - Visualize data differences after updates
39
     - Fix selection if cursor is left of anchor
40
     - Allow copying also if selection is "backwards"
41
     - Do not draw blinking cursor when there is a selection
42
     FakeVim:
43
     - Implement Ctrl-N/Ctrl-P
44
     - Implement 's' in visual block mode
45
     - Fix Alt-Gr handling on Windows
46
     - Handle more Ctrl-W + <x> commands
47
48
Managing Projects
49
   * Improve the robustness of qmake project support against syntax errors
50
   * Change the handling of command line arguments of processes that are
51
     started from build and run configurations:
52
     - Argument lists use native shell syntax; this affects quoting and
53
       environment variable expansion most
54
     - The SOURCEDIR and BUILDDIR environment variables were replaced
55
       with %{sourceDir} and %{buildDir} variables
56
     - This affects working directories and executable paths as well
57
   * Support syntax highlighting and completion for qmake project files
58
   * CMake: Add UI completion, changes in .ui files are picked up without
59
     a rebuild
60
   * Specify text editor behavior settings per project
61
   * New project and file wizards:
62
     - Support new keywords %MONTH% and %DAY% for C++ template file
63
     - Add wizards for creating OpenGL fragment and vertex shaders
64
     - Add a wizard for creating HTML5 based applications
65
     - Add a wizard for creating JavaScript files, QTCREATORBUG-3070
66
67
Debugging
68
   * Rewrite debugging engine using the Microsoft Console Debugger (CDB)
69
     for debugging executables built with Microsoft Visual Studio,
70
     resulting in significant speed-up and better display of data
71
     types, supporting both 32-bit and 64-bit versions of the
72
     Debugging Tools for Windows
73
   * Make it possible to pin debugger tooltips
74
   * Rework global architecture to allow multiple debugging sessions (for
75
     different projects, combined QML/C++ debugging, project snapshots,
76
     and so on)
77
   * Rework breakpoint handling: add special breakpoint types for break
78
     on throw and break on main, as well as data breakpoints
79
   * Introduce combined QML/C++ debugging (combined stack, cross-step) (GDB only)
80
   * Rework per-type and per-item selection of display formats
81
   * Add dumpers for QTextCursor, QTextDocument, __m128, QScriptValue
82
     QBasicAtomicPointer, bit fields, boost::shared_ptr (GDB only)
83
   * Improve dumpers for QRegion, QVariant (custom types), QSharedPointer,
84
     QMultiMap (QTCREATORBUG-3122), QObject, QWeakPointer
85
   * Make alphabetic structure member sorting optional
86
   * Make dumpers robust in case of missing debug information
87
   * Improve Python dumper profiling support
88
   * Improve stepping performance
89
   * Enable breakpoint setting from a disassembler view, QTCREATORBUG-3667
90
   * Fix display of shadowed variables
91
   * Fix display of data containing quote characters, QTCREATORBUG-3084
92
   * Fix display of C-style typedef struct X { ... } X;
93
   * Fix stack/break view updates after manual module loading, QTCREATORBUG-3427
94
   * Fix Jump To/Run To when in instruction-wise mode
95
   * Fix the watcher handling
96
   * Allow re-running debugger engines, QTCREATORBUG-3073
97
   * Robust process control after -exec-interrupt errors, QTCREATORBUG-2850
98
   * Robust detection of Qt-in-namespace builds
99
   * Handle "live updates" in the memory view
100
   * Make memory view writable (GDB only)
101
   * Improve starting debugger session directly from the command line
102
   * Improve Debugging Helpers dialog
103
104
Debugging QML/JS
105
   * Compile qmljsdebugger code as static library, and link it according to the
106
     setting in the qmake step (replaces QMLJSDEBUGGER_PATH / QMLJSDEBUGGER define)
107
   * Qt Quick Application: Allow debugging also in release builds, improve error
108
     diagnostics
109
   * GUI cosmetics in JS debugger: Show stack frame level, only valid
110
     line numbers in stack view, do not show function code, show dummy
111
     child entry for empty arrays
112
   * Added QML tooltips for property inspection at debug time
113
   * Extend QML Observer for inspection and tweaking of item properties
114
   * Add navigation of the object tree in the QML Observer through a crumble path
115
   * Add the Show Application on Top option
116
   * Move the toolbar from the Observer tab to the main toolbar
117
   * Support setting of breakpoints in .qml files embedded as qrc resources
118
   * Improve linking of QML errors in Application Output pane
119
120
C++ Support
121
   * Add a refactoring action for implementing setters and getters for
122
     a Q_PROPERTY
123
   * Add documentation for refactoring actions
124
   * Fix switch statement indentation for GNU and Whitesmiths
125
     style, QTCREATORBUG-2994
126
   * Fix indentation of labels
127
   * Support highlighting for virtual functions
128
   * Navigate to correct overloaded function or method
129
130
QML/JS Support
131
   * Add local-file completion for URL properties, QTCREATORBUG-2619
132
   * Add warning about invalid files in URL properties
133
   * Add file name completion in imports, QTCREATORBUG-3067
134
   * Add a locator filter for JS functions, QTCREATORBUG-2607
135
   * Add JSlint-style warnings about common JS pitfalls, QTCREATORBUG-3071
136
   * Add completion for attached properties like Component.onCompleted
137
   * Allow QML modules to ship predumped type description files
138
   * Reenable instantiating component scope detection, QTCREATORBUG-2835
139
   * Improve error reporting of failed plugin dumps
140
   * Complete a trailing '{' for 'A on b' object bindings, QTCREATORBUG-2642
141
   * Highlight capitalized types, QTCREATORBUG-2658
142
   * Re-dump a plugin if the shared library/DLL changes, QTCREATORBUG-3047
143
   * Build qmldump in debug and release version on Windows, QTCREATORBUG-3549
144
   * Change qmldump to output QML instead of XML
145
   * Fix automatic '.' import to also pick up QML modules, QTCREATORBUG-3768
146
   * Fix code model update when files are renamed, QTCREATORBUG-2986
147
   * Fix incorrect completion when brace is on a separate line, QTCREATORBUG-2658
148
   * Fix quote autoinsertion in string literals, QTCREATORBUG-2155, QTCREATORBUG-3244
149
   * Fix '{' not being an electric character, QTCREATORBUG-3405
150
   * Fix indentation of 'foo: Namesp.Type {', QTCREATORBUG-3371
151
   * .qmlproject format: Allow specifying the 'mainFile' qml file, bump version to 1.1
152
   * Qt Quick UI project: allow user to change run environment
153
154
Help
155
156
Platform Specific
157
158
Mac
159
160
Linux (GNOME and KDE)
161
162
Windows
163
164
Symbian Target
165
   * Add support for the new on-device debugging agent (CODA)
166
167
Maemo Target
168
   * Add MeeGo support
169
   * Add a wizard for configuring connections to Maemo and MeeGo devices
170
   * Add a wizard for publishing applications to Fremantle/extras-devel
171
   * Create desktop files on demand
172
   * Allow disabling packaging for Fremantle
173
174
Qt Designer
175
176
Version control plugins
177
   * Support Bazaar (contributed by Hugues Delorme)
178
179
Additional credits go to:
180
   * The Inkpot color scheme was based on the Vim color scheme by
181
     Ciaran McCreesh, adapted for Qt Creator by Jan Kundrát and
182
     subsequently updated by Campbell Barton
183
   * Hugues Delorme for the Bazaar plugin which he continues to improve
184
   * Nicolas Arnaud-Cormos for the Macro plugin