changes-2.2.0 8.58 KB
Newer Older
Leena Miettinen's avatar
Leena Miettinen committed
1
Qt Creator version 2.2 contains bug fixes and new features.
2

Leena Miettinen's avatar
Leena Miettinen committed
3 4 5
The most important changes are listed in this document. For a complete
list of changes, see the Git log for the Qt Creator sources that
you can check out from the public Git repository. For example:
6 7

git clone git://gitorious.org/qt-creator/qt-creator.git
con's avatar
con committed
8
git log --cherry-pick --pretty=oneline origin/2.1...origin/2.2
9 10

General
Leena Miettinen's avatar
Leena Miettinen committed
11 12 13 14 15 16 17 18 19 20 21 22 23
   * Add support for running user defined external tools (Tools > External)
   * Move tool chain definitions out of Qt versions:
      * You can now define tool chains in Tools > Options > Tool Chains
      * Qt Creator now supports more than one instance of a tool chain
   * Add support for customizing MIME types by editing patterns and
     magic headers
   * Integrate the memcheck tool from Valgrind for Linux and Mac OS X
   * Create the infrastructure to set up "soft dependencies" between plugins
   * Add the qtpromaker tool that has the same functionality as
     "qmake -project", but is much faster. It provides a way to easily set up
     dummy .pro files that you need to quickly inspect and navigate "alien"
     codebases with Qt Creator
   * Document Qt Creator coding style
24 25

Editing
Leena Miettinen's avatar
Leena Miettinen committed
26
   * Add an Inkpot color scheme
27
   * Add UTF-8 BOM support
Leena Miettinen's avatar
Leena Miettinen committed
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
   * Move the Open in External Editor item to Tools > External > Text
   * Add the Expand/Collapse All context menu item to the Outline pane
   * Add support for user-defined macros (contributed by Nicolas Arnaud-Cormos)
   * Add a snippet editor with syntax highlighting, indentation, and basic
     auto-completion for C++ and QML
   * Add GLSL support with:
     - Syntax checking
     - Highlighting
     - Code completion
   * Binary editor:
     - Visualize data differences after updates
     - Fix selection if cursor is left of anchor
     - Allow copying also if selection is "backwards"
     - Do not draw blinking cursor when there is a selection
     FakeVim:
     - Implement Ctrl-N/Ctrl-P
     - Implement 's' in visual block mode
     - Fix Alt-Gr handling on Windows
     - Handle more Ctrl-W + <x> commands

Managing Projects
   * Improve the robustness of qmake project support against syntax errors
   * Change the handling of command line arguments of processes that are
     started from build and run configurations:
     - Argument lists use native shell syntax; this affects quoting and
53
       environment variable expansion most
Leena Miettinen's avatar
Leena Miettinen committed
54 55 56 57 58 59 60 61 62 63 64 65
     - The SOURCEDIR and BUILDDIR environment variables were replaced
       with %{sourceDir} and %{buildDir} variables
     - This affects working directories and executable paths as well
   * Support syntax highlighting and completion for qmake project files
   * CMake: Add UI completion, changes in .ui files are picked up without
     a rebuild
   * Specify text editor behavior settings per project
   * New project and file wizards:
     - Support new keywords %MONTH% and %DAY% for C++ template file
     - Add wizards for creating OpenGL fragment and vertex shaders
     - Add a wizard for creating HTML5 based applications
     - Add a wizard for creating JavaScript files, QTCREATORBUG-3070
66 67

Debugging
Leena Miettinen's avatar
Leena Miettinen committed
68
   * Rewrite debugging engine using the Microsoft Console Debugger (CDB)
Friedemann Kleint's avatar
Friedemann Kleint committed
69 70
     for debugging executables built with Microsoft Visual Studio,
     resulting in significant speed-up and better display of data
Leena Miettinen's avatar
Leena Miettinen committed
71
     types, supporting both 32-bit and 64-bit versions of the
Tobias Hunger's avatar
Tobias Hunger committed
72
     Debugging Tools for Windows
Leena Miettinen's avatar
Leena Miettinen committed
73 74 75 76 77 78 79
   * Make it possible to pin debugger tooltips
   * Rework global architecture to allow multiple debugging sessions (for
     different projects, combined QML/C++ debugging, project snapshots,
     and so on)
   * Rework breakpoint handling: add special breakpoint types for break
     on throw and break on main, as well as data breakpoints
   * Introduce combined QML/C++ debugging (combined stack, cross-step) (GDB only)
hjk's avatar
hjk committed
80
   * Rework per-type and per-item selection of display formats
Leena Miettinen's avatar
Leena Miettinen committed
81 82
   * Add dumpers for QTextCursor, QTextDocument, __m128, QScriptValue
     QBasicAtomicPointer, bit fields, boost::shared_ptr (GDB only)
hjk's avatar
hjk committed
83 84 85 86
   * Improve dumpers for QRegion, QVariant (custom types), QSharedPointer,
     QMultiMap (QTCREATORBUG-3122), QObject, QWeakPointer
   * Make alphabetic structure member sorting optional
   * Make dumpers robust in case of missing debug information
Leena Miettinen's avatar
Leena Miettinen committed
87
   * Improve Python dumper profiling support
hjk's avatar
hjk committed
88 89
   * Improve stepping performance
   * Enable breakpoint setting from a disassembler view, QTCREATORBUG-3667
Leena Miettinen's avatar
Leena Miettinen committed
90
   * Fix display of shadowed variables
91
   * Fix display of data containing quote characters, QTCREATORBUG-3084
Leena Miettinen's avatar
Leena Miettinen committed
92
   * Fix display of C-style typedef struct X { ... } X;
hjk's avatar
hjk committed
93
   * Fix stack/break view updates after manual module loading, QTCREATORBUG-3427
Leena Miettinen's avatar
Leena Miettinen committed
94 95
   * Fix Jump To/Run To when in instruction-wise mode
   * Fix the watcher handling
hjk's avatar
hjk committed
96 97 98 99
   * Allow re-running debugger engines, QTCREATORBUG-3073
   * Robust process control after -exec-interrupt errors, QTCREATORBUG-2850
   * Robust detection of Qt-in-namespace builds
   * Handle "live updates" in the memory view
Leena Miettinen's avatar
Leena Miettinen committed
100
   * Make memory view writable (GDB only)
hjk's avatar
hjk committed
101
   * Improve starting debugger session directly from the command line
Leena Miettinen's avatar
Leena Miettinen committed
102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118
   * Improve Debugging Helpers dialog

Debugging QML/JS
   * Compile qmljsdebugger code as static library, and link it according to the
     setting in the qmake step (replaces QMLJSDEBUGGER_PATH / QMLJSDEBUGGER define)
   * Qt Quick Application: Allow debugging also in release builds, improve error
     diagnostics
   * GUI cosmetics in JS debugger: Show stack frame level, only valid
     line numbers in stack view, do not show function code, show dummy
     child entry for empty arrays
   * Added QML tooltips for property inspection at debug time
   * Extend QML Observer for inspection and tweaking of item properties
   * Add navigation of the object tree in the QML Observer through a crumble path
   * Add the Show Application on Top option
   * Move the toolbar from the Observer tab to the main toolbar
   * Support setting of breakpoints in .qml files embedded as qrc resources
   * Improve linking of QML errors in Application Output pane
119

Christian Kamm's avatar
Christian Kamm committed
120
C++ Support
Leena Miettinen's avatar
Leena Miettinen committed
121 122 123
   * Add a refactoring action for implementing setters and getters for
     a Q_PROPERTY
   * Add documentation for refactoring actions
Christian Kamm's avatar
Christian Kamm committed
124 125 126
   * Fix switch statement indentation for GNU and Whitesmiths
     style, QTCREATORBUG-2994
   * Fix indentation of labels
Leena Miettinen's avatar
Leena Miettinen committed
127 128
   * Support highlighting for virtual functions
   * Navigate to correct overloaded function or method
Christian Kamm's avatar
Christian Kamm committed
129

130
QML/JS Support
Leena Miettinen's avatar
Leena Miettinen committed
131 132
   * Add local-file completion for URL properties, QTCREATORBUG-2619
   * Add warning about invalid files in URL properties
Christian Kamm's avatar
Christian Kamm committed
133 134 135 136
   * Add file name completion in imports, QTCREATORBUG-3067
   * Add a locator filter for JS functions, QTCREATORBUG-2607
   * Add JSlint-style warnings about common JS pitfalls, QTCREATORBUG-3071
   * Add completion for attached properties like Component.onCompleted
Leena Miettinen's avatar
Leena Miettinen committed
137
   * Allow QML modules to ship predumped type description files
Christian Kamm's avatar
Christian Kamm committed
138 139 140 141
   * Reenable instantiating component scope detection, QTCREATORBUG-2835
   * Improve error reporting of failed plugin dumps
   * Complete a trailing '{' for 'A on b' object bindings, QTCREATORBUG-2642
   * Highlight capitalized types, QTCREATORBUG-2658
Leena Miettinen's avatar
Leena Miettinen committed
142
   * Re-dump a plugin if the shared library/DLL changes, QTCREATORBUG-3047
Christian Kamm's avatar
Christian Kamm committed
143 144 145 146
   * Build qmldump in debug and release version on Windows, QTCREATORBUG-3549
   * Change qmldump to output QML instead of XML
   * Fix automatic '.' import to also pick up QML modules, QTCREATORBUG-3768
   * Fix code model update when files are renamed, QTCREATORBUG-2986
Leena Miettinen's avatar
Leena Miettinen committed
147
   * Fix incorrect completion when brace is on a separate line, QTCREATORBUG-2658
Christian Kamm's avatar
Christian Kamm committed
148 149 150
   * Fix quote autoinsertion in string literals, QTCREATORBUG-2155, QTCREATORBUG-3244
   * Fix '{' not being an electric character, QTCREATORBUG-3405
   * Fix indentation of 'foo: Namesp.Type {', QTCREATORBUG-3371
Kai Koehne's avatar
Kai Koehne committed
151 152
   * .qmlproject format: Allow specifying the 'mainFile' qml file, bump version to 1.1
   * Qt Quick UI project: allow user to change run environment
153

Leena Miettinen's avatar
Leena Miettinen committed
154
Help
155 156 157 158 159 160 161 162 163 164

Platform Specific

Mac

Linux (GNOME and KDE)

Windows

Symbian Target
Leena Miettinen's avatar
Leena Miettinen committed
165
   * Add support for the new on-device debugging agent (CODA)
166 167

Maemo Target
Leena Miettinen's avatar
Leena Miettinen committed
168 169 170 171 172
   * Add MeeGo support
   * Add a wizard for configuring connections to Maemo and MeeGo devices
   * Add a wizard for publishing applications to Fremantle/extras-devel
   * Create desktop files on demand
   * Allow disabling packaging for Fremantle
173

Leena Miettinen's avatar
Leena Miettinen committed
174
Qt Designer
175 176

Version control plugins
Leena Miettinen's avatar
Leena Miettinen committed
177
   * Support Bazaar (contributed by Hugues Delorme)
hjk's avatar
hjk committed
178

179 180 181
Additional credits go to:
   * The Inkpot color scheme was based on the Vim color scheme by
     Ciaran McCreesh, adapted for Qt Creator by Jan Kundrát and
Tobias Hunger's avatar
Tobias Hunger committed
182
     subsequently updated by Campbell Barton
Leena Miettinen's avatar
Leena Miettinen committed
183
   * Hugues Delorme for the Bazaar plugin which he continues to improve
Tobias Hunger's avatar
Tobias Hunger committed
184
   * Nicolas Arnaud-Cormos for the Macro plugin