diff --git a/doc/qtcreator-buildenvironment.png b/doc/qtcreator-buildenvironment.png index fb9af43b0e67b8441fb85c44ae9e039847350b8e..d4ed4511653753e17a3d2d587efdcb52f96be16d 100644 Binary files a/doc/qtcreator-buildenvironment.png and b/doc/qtcreator-buildenvironment.png differ diff --git a/doc/qtcreator-buildsettingstab.png b/doc/qtcreator-buildsettingstab.png index c6768cda63681dd24a714ca1256cbdadbec2be9f..872af004412f73d1ca9af26f50ad829cc00967ab 100644 Binary files a/doc/qtcreator-buildsettingstab.png and b/doc/qtcreator-buildsettingstab.png differ diff --git a/doc/qtcreator-buildsteps.png b/doc/qtcreator-buildsteps.png index 7e23662faf3ef0d7f849bd463c30982c01d8f4a2..c517c2481a5c72e1ac9f2df46bce541e6d8bad8c 100644 Binary files a/doc/qtcreator-buildsteps.png and b/doc/qtcreator-buildsteps.png differ diff --git a/doc/qtcreator.qch b/doc/qtcreator.qch index 204b224fd18591c89782eab72ee6d97faca81fa3..124510448158c63b73ae28bc6a8f2370abde0202 100644 Binary files a/doc/qtcreator.qch and b/doc/qtcreator.qch differ diff --git a/doc/qtcreator.qdoc b/doc/qtcreator.qdoc index ae7bcd8e5ec23b3645f3f38e8ca46b8d9b386af4..0abaa3bfc4bc4611153fdee4e07f0b0754b99c17 100644 --- a/doc/qtcreator.qdoc +++ b/doc/qtcreator.qdoc @@ -202,30 +202,23 @@ To modify the build settings of your project, switch to the \gui{Projects} mode using the mouse or with \key{Ctrl+4}. - \image qtcreator-buildsettings.png + \image qtcreator-buildsettingstab.png Action items to create, clone, or delete build configurations can be found - on the right of the dialog. You can have as many build configurations as + at the bottom of the dialog. You can have as many build configurations as needed. By default Qt Creator creates a \bold{debug} and \bold{release} build configuration. Both these configurations use the \l{glossary-default-qt}{Default Qt Version}. In the tree on the left, a list of build configurations and their settings - are displayed. The screenshot below shows the \bold{debug} and + are displayed. The screenshot above shows the \bold{debug} and \bold{release} configurations and their corresponding settings: \bold{Build Environment} and \bold{Build Steps}. - \image qtcreator-buildsettingstab.png - When you select a build configuration in the tree, a configuration page for general build settings will be displayed. Here you can specify which \l{glossary-project-qt}{Qt version} to use to build your project, whether - to \l{glossary-shadow-build}{shadow build} the project, and if a special - debugging helper is linked into the project or not. - - The debugging helper enables the gdb integration to show the contents of - Qt data types. Enabling this option means that an additional file will be - compiled and linked to your project. + to \l{glossary-shadow-build}{shadow build} the project. \image qtcreator-buildenvironment.png @@ -242,11 +235,14 @@ \bold{Build Settings} page. Qt Creator will run the make command using the correct Qt version. - \note The default qmake arguments \c{-after SOURCES*=gdbmacros.cpp - -after QT*=network} are due to the debugging helper described above. If the + \note The \bold{Gdb Macros Build} step builds a small library along with your + project that is used for the custom display of Qt and STL objects in the + integrated debugger. The library is created and built in a "qtc-gdbmacros" + subfolder of your project's main directory, and loaded dynamically into your + application if you run it in the debugger. If the debugging helper seems to break your build or your application, you can - turn it off. You will still be able to debug applications, but the contents - of Qt data types will not be displayed properly. + remove the build step. You will still be able to debug applications, but the + contents of Qt and STL data types will not be displayed properly. \section1 Qt Version Management diff --git a/src/plugins/texteditor/basetexteditor.cpp b/src/plugins/texteditor/basetexteditor.cpp index 870f826ebf27d4a75c7bfb7fe926ddba1e6ba10c..ab8f87c5a88c80b6eebd8c726707f9eb15a7e22f 100644 --- a/src/plugins/texteditor/basetexteditor.cpp +++ b/src/plugins/texteditor/basetexteditor.cpp @@ -749,7 +749,7 @@ void BaseTextEditor::moveLineUpDown(bool up) void BaseTextEditor::cleanWhitespace() { - d->m_document->cleanWhitespace(); + d->m_document->cleanWhitespace(); } void BaseTextEditor::keyPressEvent(QKeyEvent *e) @@ -1286,7 +1286,7 @@ void BaseTextEditor::setFontSettings(const TextEditor::FontSettings &fs) void BaseTextEditor::setStorageSettings(const StorageSettings &storageSettings) { - d->m_document->setStorageSettings(storageSettings); + d->m_document->setStorageSettings(storageSettings); } //--------- BaseTextEditorPrivate ----------- @@ -2477,17 +2477,22 @@ void BaseTextEditor::extraAreaMouseEvent(QMouseEvent *e) extraAreaWidth(&markWidth); if (e->type() == QEvent::MouseMove && e->buttons() == 0) { // mouse tracking - int highlightBlockNumber = d->extraAreaHighlightCollapseBlockNumber; + // Update which folder marker is highlighted + const int highlightBlockNumber = d->extraAreaHighlightCollapseBlockNumber; d->extraAreaHighlightCollapseBlockNumber = -1; - if (TextBlockUserData::canCollapse(cursor.block()) + + if (d->m_codeFoldingVisible + && TextBlockUserData::canCollapse(cursor.block()) && !TextBlockUserData::hasClosingCollapseInside(cursor.block().next()) && collapseBox(cursor.block()).contains(e->pos())) d->extraAreaHighlightCollapseBlockNumber = cursor.blockNumber(); + // Set whether the mouse cursor is a hand or normal arrow bool hand = (e->pos().x() <= markWidth || d->extraAreaHighlightCollapseBlockNumber >= 0); if (hand != (d->m_extraArea->cursor().shape() == Qt::PointingHandCursor)) d->m_extraArea->setCursor(hand ? Qt::PointingHandCursor : Qt::ArrowCursor); + // Start fading in or out the highlighted folding marker if (highlightBlockNumber != d->extraAreaHighlightCollapseBlockNumber) { d->extraAreaTimeLine->stop(); d->extraAreaTimeLine->setDirection(d->extraAreaHighlightCollapseBlockNumber >= 0? @@ -2504,12 +2509,12 @@ void BaseTextEditor::extraAreaMouseEvent(QMouseEvent *e) if (e->type() == QEvent::MouseButtonPress || e->type() == QEvent::MouseButtonDblClick) { if (e->button() == Qt::LeftButton) { - if (TextBlockUserData::canCollapse(cursor.block()) + if (d->m_codeFoldingVisible && TextBlockUserData::canCollapse(cursor.block()) && !TextBlockUserData::hasClosingCollapseInside(cursor.block().next()) && collapseBox(cursor.block()).contains(e->pos())) { setTextCursor(cursor); toggleBlockVisible(cursor.block()); - } else if (e->pos().x() > markWidth) { + } else if (d->m_marksVisible && e->pos().x() > markWidth) { QTextCursor selection = cursor; selection.setVisualNavigation(true); d->extraAreaSelectionAnchorBlockNumber = selection.blockNumber(); @@ -2519,7 +2524,7 @@ void BaseTextEditor::extraAreaMouseEvent(QMouseEvent *e) } else { d->extraAreaToggleMarkBlockNumber = cursor.blockNumber(); } - } else if (e->button() == Qt::RightButton) { + } else if (d->m_marksVisible && e->button() == Qt::RightButton) { QMenu * contextMenu = new QMenu(this); emit d->m_editable->markContextMenuRequested(editableInterface(), cursor.blockNumber() + 1, contextMenu); if (!contextMenu->isEmpty())