aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--doc/images/addressbook-tutorial-part2-stretch-effects.pngbin22338 -> 19346 bytes
-rw-r--r--doc/images/qmldesigner-tutorial-project.pngbin54807 -> 42317 bytes
-rw-r--r--doc/images/qtcreator-new-qt-quick-project-wizard.pngbin97577 -> 77815 bytes
-rw-r--r--doc/images/qtcreator-pprunsettings.pngbin30530 -> 31731 bytes
-rw-r--r--doc/images/qtcreator-project-targets.pngbin39141 -> 30138 bytes
-rw-r--r--doc/images/qtcreator-run-environment.pngbin0 -> 56556 bytes
-rw-r--r--doc/images/qtquick-example-script-console.pngbin79624 -> 66325 bytes
-rw-r--r--doc/src/projects/creator-projects-settings-build.qdoc2
-rw-r--r--doc/src/projects/creator-projects-settings-run.qdoc22
-rw-r--r--doc/templates/images/horBar.pngbin2807 -> 103 bytes
-rw-r--r--qtcreator.qbs2
-rw-r--r--share/qtcreator/qmlicons/Qt/16x16/BusyIndicator.pngbin3594 -> 826 bytes
-rw-r--r--share/qtcreator/qmlicons/Qt/16x16/Button.pngbin3250 -> 502 bytes
-rw-r--r--share/qtcreator/qmlicons/Qt/16x16/ButtonColumn.pngbin3166 -> 469 bytes
-rw-r--r--share/qtcreator/qmlicons/Qt/16x16/ButtonRow.pngbin3174 -> 478 bytes
-rw-r--r--share/qtcreator/qmlicons/Qt/16x16/CheckBox.pngbin3317 -> 584 bytes
-rw-r--r--share/qtcreator/qmlicons/Qt/16x16/ChoiceList.pngbin3494 -> 659 bytes
-rw-r--r--share/qtcreator/qmlicons/Qt/16x16/CountBubble.pngbin3427 -> 721 bytes
-rw-r--r--share/qtcreator/qmlicons/Qt/16x16/DatePickerDialog.pngbin3512 -> 779 bytes
-rw-r--r--share/qtcreator/qmlicons/Qt/16x16/InfoBanner.pngbin3105 -> 406 bytes
-rw-r--r--share/qtcreator/qmlicons/Qt/16x16/ListButton.pngbin3217 -> 517 bytes
-rw-r--r--share/qtcreator/qmlicons/Qt/16x16/ListDelegate.pngbin3281 -> 584 bytes
-rw-r--r--share/qtcreator/qmlicons/Qt/16x16/MoreIndicator.pngbin3333 -> 545 bytes
-rw-r--r--share/qtcreator/qmlicons/Qt/16x16/PageIndicator.pngbin3168 -> 437 bytes
-rw-r--r--share/qtcreator/qmlicons/Qt/16x16/ProgressBar.pngbin3004 -> 308 bytes
-rw-r--r--share/qtcreator/qmlicons/Qt/16x16/RadioButton.pngbin3439 -> 702 bytes
-rw-r--r--share/qtcreator/qmlicons/Qt/16x16/RatingIndicator.pngbin3422 -> 697 bytes
-rw-r--r--share/qtcreator/qmlicons/Qt/16x16/Slider.pngbin3266 -> 540 bytes
-rw-r--r--share/qtcreator/qmlicons/Qt/16x16/TabButton.pngbin3108 -> 410 bytes
-rw-r--r--share/qtcreator/qmlicons/Qt/16x16/TextArea.pngbin3309 -> 549 bytes
-rw-r--r--share/qtcreator/qmlicons/Qt/16x16/TextField.pngbin3265 -> 467 bytes
-rw-r--r--share/qtcreator/qmlicons/Qt/16x16/TimePickerDialog.pngbin3438 -> 715 bytes
-rw-r--r--share/qtcreator/qmlicons/Qt/16x16/Tumbler.pngbin3467 -> 762 bytes
-rw-r--r--share/qtcreator/qmlicons/Qt/16x16/TumblerButton.pngbin3481 -> 784 bytes
-rw-r--r--share/qtcreator/qmlicons/Qt/16x16/TumblerColumn.pngbin3493 -> 797 bytes
-rw-r--r--share/qtcreator/qmlicons/Qt/16x16/TumblerDialog.pngbin3167 -> 471 bytes
-rw-r--r--src/libs/QtcLibrary.qbs2
-rw-r--r--src/libs/cplusplus/cplusplus.qbs2
-rw-r--r--src/libs/qmleditorwidgets/contextpanetextwidget.cpp13
-rw-r--r--src/libs/qmleditorwidgets/contextpanetextwidget.h1
-rw-r--r--src/libs/qmleditorwidgets/contextpanewidgetrectangle.cpp12
-rw-r--r--src/libs/qmleditorwidgets/contextpanewidgetrectangle.h1
-rw-r--r--src/libs/qmleditorwidgets/easingpane/easingcontextpane.cpp12
-rw-r--r--src/libs/qmleditorwidgets/easingpane/easingcontextpane.h3
-rw-r--r--src/libs/qmljs/qmljs.qbs2
-rw-r--r--src/libs/qtcreatorcdbext/containers.cpp2
-rw-r--r--src/libs/ssh/ssh.qbs2
-rw-r--r--src/libs/utils/filewizardpage.cpp12
-rw-r--r--src/libs/utils/filewizardpage.h3
-rw-r--r--src/libs/utils/images/crumblepath-segment-end.pngbin2957 -> 250 bytes
-rw-r--r--src/libs/utils/images/crumblepath-segment-hover-end.pngbin2970 -> 256 bytes
-rw-r--r--src/libs/utils/images/crumblepath-segment-hover.pngbin3384 -> 676 bytes
-rw-r--r--src/libs/utils/images/crumblepath-segment-selected-end.pngbin2944 -> 238 bytes
-rw-r--r--src/libs/utils/images/crumblepath-segment-selected.pngbin3356 -> 611 bytes
-rw-r--r--src/libs/utils/images/crumblepath-segment.pngbin3379 -> 666 bytes
-rw-r--r--src/libs/utils/projectintropage.cpp12
-rw-r--r--src/libs/utils/projectintropage.h3
-rw-r--r--src/libs/utils/savedaction.cpp5
-rw-r--r--src/libs/utils/uncommentselection.cpp114
-rw-r--r--src/libs/utils/uncommentselection.h20
-rw-r--r--src/libs/utils/utils.qbs4
-rw-r--r--src/plugins/QtcPlugin.qbs2
-rw-r--r--src/plugins/analyzerbase/analyzerbase.qbs2
-rw-r--r--src/plugins/android/androidmanifesteditor.cpp11
-rw-r--r--src/plugins/android/androidmanifesteditor.h6
-rw-r--r--src/plugins/autotoolsprojectmanager/autotoolsmanager.cpp20
-rw-r--r--src/plugins/bineditor/bineditorplugin.cpp6
-rw-r--r--src/plugins/cmakeprojectmanager/cmakeeditor.cpp2
-rw-r--r--src/plugins/cmakeprojectmanager/cmakeprojectmanager.cpp9
-rw-r--r--src/plugins/coreplugin/actionmanager/actioncontainer.cpp16
-rw-r--r--src/plugins/coreplugin/actionmanager/actioncontainer.h14
-rw-r--r--src/plugins/coreplugin/actionmanager/actioncontainer_p.h16
-rw-r--r--src/plugins/coreplugin/actionmanager/actionmanager.cpp18
-rw-r--r--src/plugins/coreplugin/actionmanager/actionmanager.h16
-rw-r--r--src/plugins/coreplugin/actionmanager/actionmanager_p.h2
-rw-r--r--src/plugins/coreplugin/coreplugin.qbs2
-rw-r--r--src/plugins/coreplugin/editormanager/ieditor.h10
-rw-r--r--src/plugins/coreplugin/mimetypemagicdialog.cpp12
-rw-r--r--src/plugins/coreplugin/mimetypemagicdialog.h3
-rw-r--r--src/plugins/coreplugin/progressmanager/progressmanager.cpp19
-rw-r--r--src/plugins/coreplugin/progressmanager/progressmanager_p.h1
-rw-r--r--src/plugins/coreplugin/removefiledialog.cpp12
-rw-r--r--src/plugins/coreplugin/removefiledialog.h3
-rw-r--r--src/plugins/cpptools/cpptools.qbs2
-rw-r--r--src/plugins/debugger/debugger.qbs2
-rw-r--r--src/plugins/debugger/debuggercore.h1
-rw-r--r--src/plugins/debugger/debuggerplugin.cpp12
-rw-r--r--src/plugins/debugger/debuggerrunner.cpp4
-rw-r--r--src/plugins/debugger/debuggerstartparameters.h2
-rw-r--r--src/plugins/debugger/gdb/gdbengine.cpp2
-rw-r--r--src/plugins/debugger/images/qml/app-on-top.pngbin2902 -> 178 bytes
-rw-r--r--src/plugins/debugger/images/qml/apply-on-save.pngbin3205 -> 426 bytes
-rw-r--r--src/plugins/debugger/images/qml/select.pngbin3308 -> 568 bytes
-rw-r--r--src/plugins/debugger/images/qml/zoom.pngbin3252 -> 537 bytes
-rw-r--r--src/plugins/debugger/lldb/lldbengine.cpp86
-rw-r--r--src/plugins/debugger/lldb/lldbengine.h3
-rw-r--r--src/plugins/debugger/loadcoredialog.cpp1
-rw-r--r--src/plugins/debugger/procinterrupt.cpp1
-rw-r--r--src/plugins/designer/formwindoweditor.cpp10
-rw-r--r--src/plugins/designer/formwindoweditor.h3
-rw-r--r--src/plugins/diffeditor/diffeditoreditable.cpp22
-rw-r--r--src/plugins/diffeditor/diffeditoreditable.h4
-rw-r--r--src/plugins/diffeditor/diffeditorwidget.cpp15
-rw-r--r--src/plugins/genericprojectmanager/genericprojectmanager.cpp17
-rw-r--r--src/plugins/git/branchdialog.cpp33
-rw-r--r--src/plugins/git/branchdialog.h9
-rw-r--r--src/plugins/git/gerrit/gerritdialog.cpp26
-rw-r--r--src/plugins/git/gerrit/gerritdialog.h6
-rw-r--r--src/plugins/git/gerrit/gerritplugin.cpp14
-rw-r--r--src/plugins/git/gerrit/gerritplugin.h2
-rw-r--r--src/plugins/git/gitclient.cpp184
-rw-r--r--src/plugins/git/gitclient.h34
-rw-r--r--src/plugins/git/gitorious/gitorioushostwidget.cpp12
-rw-r--r--src/plugins/git/gitorious/gitorioushostwidget.h7
-rw-r--r--src/plugins/git/gitorious/gitoriousprojectwidget.cpp12
-rw-r--r--src/plugins/git/gitorious/gitoriousprojectwidget.h9
-rw-r--r--src/plugins/git/gitorious/gitoriousrepositorywizardpage.cpp12
-rw-r--r--src/plugins/git/gitorious/gitoriousrepositorywizardpage.h7
-rw-r--r--src/plugins/git/gitplugin.cpp43
-rw-r--r--src/plugins/git/remotedialog.cpp12
-rw-r--r--src/plugins/git/remotedialog.h8
-rw-r--r--src/plugins/git/stashdialog.cpp12
-rw-r--r--src/plugins/git/stashdialog.h7
-rw-r--r--src/plugins/glsleditor/glsleditoreditable.cpp5
-rw-r--r--src/plugins/glsleditor/glsleditoreditable.h1
-rw-r--r--src/plugins/imageviewer/images/pause-small.pngbin3097 -> 399 bytes
-rw-r--r--src/plugins/imageviewer/images/play-small.pngbin3363 -> 630 bytes
-rw-r--r--src/plugins/imageviewer/imageviewer.cpp32
-rw-r--r--src/plugins/imageviewer/imageviewer.h11
-rw-r--r--src/plugins/imageviewer/imageviewerfile.cpp40
-rw-r--r--src/plugins/imageviewer/imageviewerfile.h10
-rw-r--r--src/plugins/mercurial/revertdialog.cpp12
-rw-r--r--src/plugins/mercurial/revertdialog.h3
-rw-r--r--src/plugins/mercurial/srcdestdialog.cpp12
-rw-r--r--src/plugins/mercurial/srcdestdialog.h4
-rw-r--r--src/plugins/projectexplorer/customwizard/customwizardparameters.cpp2
-rw-r--r--src/plugins/projectexplorer/doubletabwidget.cpp12
-rw-r--r--src/plugins/projectexplorer/doubletabwidget.h1
-rw-r--r--src/plugins/projectexplorer/iprojectmanager.h1
-rw-r--r--src/plugins/projectexplorer/projectexplorer.cpp39
-rw-r--r--src/plugins/projectexplorer/projectexplorer.qbs2
-rw-r--r--src/plugins/projectexplorer/projectwelcomepage.cpp2
-rw-r--r--src/plugins/projectexplorer/projectwizardpage.cpp12
-rw-r--r--src/plugins/projectexplorer/projectwizardpage.h5
-rw-r--r--src/plugins/projectexplorer/session.cpp12
-rw-r--r--src/plugins/projectexplorer/session.h1
-rw-r--r--src/plugins/projectexplorer/sessiondialog.cpp6
-rw-r--r--src/plugins/projectexplorer/targetsettingswidget.cpp12
-rw-r--r--src/plugins/projectexplorer/targetsettingswidget.h4
-rw-r--r--src/plugins/pythoneditor/pythoneditor.cpp5
-rw-r--r--src/plugins/pythoneditor/pythoneditor.h1
-rw-r--r--src/plugins/pythoneditor/pythoneditorwidget.cpp6
-rw-r--r--src/plugins/qbsprojectmanager/qbsbuildstep.cpp6
-rw-r--r--src/plugins/qbsprojectmanager/qbsprojectmanager.cpp23
-rw-r--r--src/plugins/qmldesigner/components/formeditor/transform.pngbin17296 -> 14619 bytes
-rw-r--r--src/plugins/qmldesigner/componentsplugin/images/busyindicator.pngbin4089 -> 1145 bytes
-rw-r--r--src/plugins/qmldesigner/componentsplugin/images/busyindicator16.pngbin3594 -> 826 bytes
-rw-r--r--src/plugins/qmldesigner/componentsplugin/images/busyindicatora.pngbin3546 -> 767 bytes
-rw-r--r--src/plugins/qmldesigner/componentsplugin/images/busyindicatora16.pngbin3385 -> 670 bytes
-rw-r--r--src/plugins/qmldesigner/componentsplugin/images/button.pngbin3537 -> 716 bytes
-rw-r--r--src/plugins/qmldesigner/componentsplugin/images/button16.pngbin3250 -> 502 bytes
-rw-r--r--src/plugins/qmldesigner/componentsplugin/images/buttoncolumn.pngbin3171 -> 523 bytes
-rw-r--r--src/plugins/qmldesigner/componentsplugin/images/buttoncolumn16.pngbin3117 -> 432 bytes
-rw-r--r--src/plugins/qmldesigner/componentsplugin/images/buttonrow.pngbin3174 -> 485 bytes
-rw-r--r--src/plugins/qmldesigner/componentsplugin/images/buttonrow16.pngbin3118 -> 429 bytes
-rw-r--r--src/plugins/qmldesigner/componentsplugin/images/checkbox.pngbin3530 -> 790 bytes
-rw-r--r--src/plugins/qmldesigner/componentsplugin/images/checkbox16.pngbin3297 -> 569 bytes
-rw-r--r--src/plugins/qmldesigner/componentsplugin/images/combobox.pngbin3870 -> 934 bytes
-rw-r--r--src/plugins/qmldesigner/componentsplugin/images/combobox16.pngbin3494 -> 659 bytes
-rw-r--r--src/plugins/qmldesigner/componentsplugin/images/progressbar.pngbin2968 -> 261 bytes
-rw-r--r--src/plugins/qmldesigner/componentsplugin/images/progressbar16.pngbin2970 -> 293 bytes
-rw-r--r--src/plugins/qmldesigner/componentsplugin/images/radiobutton.pngbin3805 -> 959 bytes
-rw-r--r--src/plugins/qmldesigner/componentsplugin/images/radiobutton16.pngbin3410 -> 627 bytes
-rw-r--r--src/plugins/qmldesigner/componentsplugin/images/slider.pngbin3576 -> 776 bytes
-rw-r--r--src/plugins/qmldesigner/componentsplugin/images/slider16.pngbin3266 -> 540 bytes
-rw-r--r--src/plugins/qmldesigner/componentsplugin/images/sliderh.pngbin3578 -> 814 bytes
-rw-r--r--src/plugins/qmldesigner/componentsplugin/images/sliderh16.pngbin3285 -> 554 bytes
-rw-r--r--src/plugins/qmldesigner/componentsplugin/images/tabbutton.pngbin3270 -> 545 bytes
-rw-r--r--src/plugins/qmldesigner/componentsplugin/images/tabbutton16.pngbin3108 -> 410 bytes
-rw-r--r--src/plugins/qmldesigner/componentsplugin/images/textarea.pngbin3644 -> 780 bytes
-rw-r--r--src/plugins/qmldesigner/componentsplugin/images/textarea16.pngbin3309 -> 549 bytes
-rw-r--r--src/plugins/qmldesigner/componentsplugin/images/textfield.pngbin3617 -> 755 bytes
-rw-r--r--src/plugins/qmldesigner/componentsplugin/images/textfield16.pngbin3265 -> 467 bytes
-rw-r--r--src/plugins/qmldesigner/designercore/model/texttomodelmerger.cpp2
-rw-r--r--src/plugins/qmljseditor/qmljseditor.qbs2
-rw-r--r--src/plugins/qmljstools/qmljstools.qbs2
-rw-r--r--src/plugins/qmlprojectmanager/qmlprojectmanager.cpp20
-rw-r--r--src/plugins/qnx/bardescriptoreditor.cpp22
-rw-r--r--src/plugins/qnx/bardescriptoreditor.h8
-rw-r--r--src/plugins/qt4projectmanager/customwidgetwizard/customwidgetpluginwizardpage.cpp12
-rw-r--r--src/plugins/qt4projectmanager/customwidgetwizard/customwidgetpluginwizardpage.h8
-rw-r--r--src/plugins/qt4projectmanager/profileeditor.cpp2
-rw-r--r--src/plugins/qt4projectmanager/qt4projectmanager.cpp22
-rw-r--r--src/plugins/qt4projectmanager/wizards/testwizardpage.cpp12
-rw-r--r--src/plugins/qt4projectmanager/wizards/testwizardpage.h9
-rw-r--r--src/plugins/qtsupport/qtsupport.qbs3
-rw-r--r--src/plugins/remotelinux/remotelinux.qbs2
-rw-r--r--src/plugins/resourceeditor/resourceeditorw.h4
-rw-r--r--src/plugins/texteditor/basetexteditor.cpp118
-rw-r--r--src/plugins/texteditor/basetexteditor.h51
-rw-r--r--src/plugins/texteditor/generichighlighter/managedefinitionsdialog.cpp12
-rw-r--r--src/plugins/texteditor/generichighlighter/managedefinitionsdialog.h4
-rw-r--r--src/plugins/texteditor/plaintexteditor.cpp8
-rw-r--r--src/plugins/texteditor/tabsettingswidget.cpp12
-rw-r--r--src/plugins/texteditor/tabsettingswidget.h3
-rw-r--r--src/plugins/texteditor/texteditor.qbs2
-rw-r--r--src/plugins/vcsbase/basecheckoutwizardpage.cpp12
-rw-r--r--src/plugins/vcsbase/basecheckoutwizardpage.h2
-rw-r--r--src/plugins/vcsbase/checkoutprogresswizardpage.cpp12
-rw-r--r--src/plugins/vcsbase/checkoutprogresswizardpage.h3
-rw-r--r--src/plugins/vcsbase/cleandialog.cpp12
-rw-r--r--src/plugins/vcsbase/cleandialog.h3
-rw-r--r--src/plugins/vcsbase/submiteditorwidget.cpp12
-rw-r--r--src/plugins/vcsbase/submiteditorwidget.h1
-rw-r--r--src/plugins/vcsbase/vcsbaseeditor.cpp2
-rw-r--r--src/plugins/vcsbase/vcsbasesubmiteditor.cpp20
-rw-r--r--src/plugins/vcsbase/vcsbasesubmiteditor.h5
217 files changed, 650 insertions, 1145 deletions
diff --git a/doc/images/addressbook-tutorial-part2-stretch-effects.png b/doc/images/addressbook-tutorial-part2-stretch-effects.png
index ffe23028f8a..0fa82b5eb70 100644
--- a/doc/images/addressbook-tutorial-part2-stretch-effects.png
+++ b/doc/images/addressbook-tutorial-part2-stretch-effects.png
Binary files differ
diff --git a/doc/images/qmldesigner-tutorial-project.png b/doc/images/qmldesigner-tutorial-project.png
index 352de734708..1486929f22a 100644
--- a/doc/images/qmldesigner-tutorial-project.png
+++ b/doc/images/qmldesigner-tutorial-project.png
Binary files differ
diff --git a/doc/images/qtcreator-new-qt-quick-project-wizard.png b/doc/images/qtcreator-new-qt-quick-project-wizard.png
index 4f1fa31bafa..1ac72704809 100644
--- a/doc/images/qtcreator-new-qt-quick-project-wizard.png
+++ b/doc/images/qtcreator-new-qt-quick-project-wizard.png
Binary files differ
diff --git a/doc/images/qtcreator-pprunsettings.png b/doc/images/qtcreator-pprunsettings.png
index 12d7652f5ab..bdc3b341c6a 100644
--- a/doc/images/qtcreator-pprunsettings.png
+++ b/doc/images/qtcreator-pprunsettings.png
Binary files differ
diff --git a/doc/images/qtcreator-project-targets.png b/doc/images/qtcreator-project-targets.png
index cb74943814c..affa200db7c 100644
--- a/doc/images/qtcreator-project-targets.png
+++ b/doc/images/qtcreator-project-targets.png
Binary files differ
diff --git a/doc/images/qtcreator-run-environment.png b/doc/images/qtcreator-run-environment.png
new file mode 100644
index 00000000000..f88c1e25c28
--- /dev/null
+++ b/doc/images/qtcreator-run-environment.png
Binary files differ
diff --git a/doc/images/qtquick-example-script-console.png b/doc/images/qtquick-example-script-console.png
index 37945678cd2..1a43cef9a4e 100644
--- a/doc/images/qtquick-example-script-console.png
+++ b/doc/images/qtquick-example-script-console.png
Binary files differ
diff --git a/doc/src/projects/creator-projects-settings-build.qdoc b/doc/src/projects/creator-projects-settings-build.qdoc
index 38b66eb5263..570bfe2967a 100644
--- a/doc/src/projects/creator-projects-settings-build.qdoc
+++ b/doc/src/projects/creator-projects-settings-build.qdoc
@@ -170,7 +170,7 @@
\section1 Build Environment
You can specify the environment you want to use for building in the
- \b{Build Environment} section. By default, the environment in which \QC
+ \gui {Build Environment} section. By default, the environment in which \QC
was started is used and modified to include the Qt version.
Depending on the selected Qt version, \QC automatically sets the
necessary environment variables. You can edit existing environment
diff --git a/doc/src/projects/creator-projects-settings-run.qdoc b/doc/src/projects/creator-projects-settings-run.qdoc
index 085a5e1f868..ccf554a9eea 100644
--- a/doc/src/projects/creator-projects-settings-run.qdoc
+++ b/doc/src/projects/creator-projects-settings-run.qdoc
@@ -53,6 +53,28 @@
\include qnx/creator-projects-settings-run-qnx.qdocinc
\endif
+ \section1 Selecting the Run Environment
+
+ \QC automatically selects the environment used for running the application
+ based on the device type. You can edit the environment or select another
+ environment in the \gui {Run Environment} section.
+
+ You can edit existing environment variables or add, reset and unset new
+ variables.
+
+ \image qtcreator-run-environment.png "Run Environment section"
+
+ When running on the desktop, the \gui {Build Environment} is used by
+ default, but you can also use the \gui {System Environment} without the
+ additions made to the build environment. For more information, see
+ \l {Build Environment}.
+
+ To run in a clean system environment, select \gui {Clean Environment}.
+
+ When running on a mobile device connected to the development host, \QC
+ fetches information about the \gui {Device Environment} from the device.
+ Usually, it does not make sense to edit the device environment.
+
\section1 Specifying a Custom Executable to Run
If you use CMake or the generic project type in \QC, or want
diff --git a/doc/templates/images/horBar.png b/doc/templates/images/horBar.png
index 100fe91c6c5..88b2237e46c 100644
--- a/doc/templates/images/horBar.png
+++ b/doc/templates/images/horBar.png
Binary files differ
diff --git a/qtcreator.qbs b/qtcreator.qbs
index 96216f14797..e773619b38d 100644
--- a/qtcreator.qbs
+++ b/qtcreator.qbs
@@ -160,7 +160,7 @@ Project {
}
}
- ProductModule {
+ Export {
Depends { name: "cpp" }
cpp.includePaths: product.buildDirectory
}
diff --git a/share/qtcreator/qmlicons/Qt/16x16/BusyIndicator.png b/share/qtcreator/qmlicons/Qt/16x16/BusyIndicator.png
index 7e3b2d31587..15e7f442a6b 100644
--- a/share/qtcreator/qmlicons/Qt/16x16/BusyIndicator.png
+++ b/share/qtcreator/qmlicons/Qt/16x16/BusyIndicator.png
Binary files differ
diff --git a/share/qtcreator/qmlicons/Qt/16x16/Button.png b/share/qtcreator/qmlicons/Qt/16x16/Button.png
index 8d95760b27a..5f550f968e5 100644
--- a/share/qtcreator/qmlicons/Qt/16x16/Button.png
+++ b/share/qtcreator/qmlicons/Qt/16x16/Button.png
Binary files differ
diff --git a/share/qtcreator/qmlicons/Qt/16x16/ButtonColumn.png b/share/qtcreator/qmlicons/Qt/16x16/ButtonColumn.png
index 883258048f3..f2d7282bf2c 100644
--- a/share/qtcreator/qmlicons/Qt/16x16/ButtonColumn.png
+++ b/share/qtcreator/qmlicons/Qt/16x16/ButtonColumn.png
Binary files differ
diff --git a/share/qtcreator/qmlicons/Qt/16x16/ButtonRow.png b/share/qtcreator/qmlicons/Qt/16x16/ButtonRow.png
index 420de418605..f692b405235 100644
--- a/share/qtcreator/qmlicons/Qt/16x16/ButtonRow.png
+++ b/share/qtcreator/qmlicons/Qt/16x16/ButtonRow.png
Binary files differ
diff --git a/share/qtcreator/qmlicons/Qt/16x16/CheckBox.png b/share/qtcreator/qmlicons/Qt/16x16/CheckBox.png
index 560e871945f..9e1c436ce06 100644
--- a/share/qtcreator/qmlicons/Qt/16x16/CheckBox.png
+++ b/share/qtcreator/qmlicons/Qt/16x16/CheckBox.png
Binary files differ
diff --git a/share/qtcreator/qmlicons/Qt/16x16/ChoiceList.png b/share/qtcreator/qmlicons/Qt/16x16/ChoiceList.png
index 602b28229eb..09d74c8c20d 100644
--- a/share/qtcreator/qmlicons/Qt/16x16/ChoiceList.png
+++ b/share/qtcreator/qmlicons/Qt/16x16/ChoiceList.png
Binary files differ
diff --git a/share/qtcreator/qmlicons/Qt/16x16/CountBubble.png b/share/qtcreator/qmlicons/Qt/16x16/CountBubble.png
index 2ac1430602d..2ee51778932 100644
--- a/share/qtcreator/qmlicons/Qt/16x16/CountBubble.png
+++ b/share/qtcreator/qmlicons/Qt/16x16/CountBubble.png
Binary files differ
diff --git a/share/qtcreator/qmlicons/Qt/16x16/DatePickerDialog.png b/share/qtcreator/qmlicons/Qt/16x16/DatePickerDialog.png
index b8eb95b737a..b8cfd6e8553 100644
--- a/share/qtcreator/qmlicons/Qt/16x16/DatePickerDialog.png
+++ b/share/qtcreator/qmlicons/Qt/16x16/DatePickerDialog.png
Binary files differ
diff --git a/share/qtcreator/qmlicons/Qt/16x16/InfoBanner.png b/share/qtcreator/qmlicons/Qt/16x16/InfoBanner.png
index 379413808bc..1a7f6a50b3d 100644
--- a/share/qtcreator/qmlicons/Qt/16x16/InfoBanner.png
+++ b/share/qtcreator/qmlicons/Qt/16x16/InfoBanner.png
Binary files differ
diff --git a/share/qtcreator/qmlicons/Qt/16x16/ListButton.png b/share/qtcreator/qmlicons/Qt/16x16/ListButton.png
index 2b1ce900b82..72fcd42a408 100644
--- a/share/qtcreator/qmlicons/Qt/16x16/ListButton.png
+++ b/share/qtcreator/qmlicons/Qt/16x16/ListButton.png
Binary files differ
diff --git a/share/qtcreator/qmlicons/Qt/16x16/ListDelegate.png b/share/qtcreator/qmlicons/Qt/16x16/ListDelegate.png
index 3c97433f087..bf5f5a25890 100644
--- a/share/qtcreator/qmlicons/Qt/16x16/ListDelegate.png
+++ b/share/qtcreator/qmlicons/Qt/16x16/ListDelegate.png
Binary files differ
diff --git a/share/qtcreator/qmlicons/Qt/16x16/MoreIndicator.png b/share/qtcreator/qmlicons/Qt/16x16/MoreIndicator.png
index 81eff7306c9..52a0bc13c1f 100644
--- a/share/qtcreator/qmlicons/Qt/16x16/MoreIndicator.png
+++ b/share/qtcreator/qmlicons/Qt/16x16/MoreIndicator.png
Binary files differ
diff --git a/share/qtcreator/qmlicons/Qt/16x16/PageIndicator.png b/share/qtcreator/qmlicons/Qt/16x16/PageIndicator.png
index 29a89337514..e714f9da659 100644
--- a/share/qtcreator/qmlicons/Qt/16x16/PageIndicator.png
+++ b/share/qtcreator/qmlicons/Qt/16x16/PageIndicator.png
Binary files differ
diff --git a/share/qtcreator/qmlicons/Qt/16x16/ProgressBar.png b/share/qtcreator/qmlicons/Qt/16x16/ProgressBar.png
index e2432475d5b..0a1034f5ca6 100644
--- a/share/qtcreator/qmlicons/Qt/16x16/ProgressBar.png
+++ b/share/qtcreator/qmlicons/Qt/16x16/ProgressBar.png
Binary files differ
diff --git a/share/qtcreator/qmlicons/Qt/16x16/RadioButton.png b/share/qtcreator/qmlicons/Qt/16x16/RadioButton.png
index 94912c20343..0f34cc3b3d4 100644
--- a/share/qtcreator/qmlicons/Qt/16x16/RadioButton.png
+++ b/share/qtcreator/qmlicons/Qt/16x16/RadioButton.png
Binary files differ
diff --git a/share/qtcreator/qmlicons/Qt/16x16/RatingIndicator.png b/share/qtcreator/qmlicons/Qt/16x16/RatingIndicator.png
index 2df5418a848..82473be292c 100644
--- a/share/qtcreator/qmlicons/Qt/16x16/RatingIndicator.png
+++ b/share/qtcreator/qmlicons/Qt/16x16/RatingIndicator.png
Binary files differ
diff --git a/share/qtcreator/qmlicons/Qt/16x16/Slider.png b/share/qtcreator/qmlicons/Qt/16x16/Slider.png
index 10c4928b3ce..104f648fe19 100644
--- a/share/qtcreator/qmlicons/Qt/16x16/Slider.png
+++ b/share/qtcreator/qmlicons/Qt/16x16/Slider.png
Binary files differ
diff --git a/share/qtcreator/qmlicons/Qt/16x16/TabButton.png b/share/qtcreator/qmlicons/Qt/16x16/TabButton.png
index 8e279cff657..aee09a0a344 100644
--- a/share/qtcreator/qmlicons/Qt/16x16/TabButton.png
+++ b/share/qtcreator/qmlicons/Qt/16x16/TabButton.png
Binary files differ
diff --git a/share/qtcreator/qmlicons/Qt/16x16/TextArea.png b/share/qtcreator/qmlicons/Qt/16x16/TextArea.png
index 899a4bca2ee..736f6468039 100644
--- a/share/qtcreator/qmlicons/Qt/16x16/TextArea.png
+++ b/share/qtcreator/qmlicons/Qt/16x16/TextArea.png
Binary files differ
diff --git a/share/qtcreator/qmlicons/Qt/16x16/TextField.png b/share/qtcreator/qmlicons/Qt/16x16/TextField.png
index 7feb8c71584..d3a8a52bd11 100644
--- a/share/qtcreator/qmlicons/Qt/16x16/TextField.png
+++ b/share/qtcreator/qmlicons/Qt/16x16/TextField.png
Binary files differ
diff --git a/share/qtcreator/qmlicons/Qt/16x16/TimePickerDialog.png b/share/qtcreator/qmlicons/Qt/16x16/TimePickerDialog.png
index 1ee49cafbd5..18bee2e35a7 100644
--- a/share/qtcreator/qmlicons/Qt/16x16/TimePickerDialog.png
+++ b/share/qtcreator/qmlicons/Qt/16x16/TimePickerDialog.png
Binary files differ
diff --git a/share/qtcreator/qmlicons/Qt/16x16/Tumbler.png b/share/qtcreator/qmlicons/Qt/16x16/Tumbler.png
index afcf864744d..d87dfaf76db 100644
--- a/share/qtcreator/qmlicons/Qt/16x16/Tumbler.png
+++ b/share/qtcreator/qmlicons/Qt/16x16/Tumbler.png
Binary files differ
diff --git a/share/qtcreator/qmlicons/Qt/16x16/TumblerButton.png b/share/qtcreator/qmlicons/Qt/16x16/TumblerButton.png
index 4368493c3e7..1f6919bf556 100644
--- a/share/qtcreator/qmlicons/Qt/16x16/TumblerButton.png
+++ b/share/qtcreator/qmlicons/Qt/16x16/TumblerButton.png
Binary files differ
diff --git a/share/qtcreator/qmlicons/Qt/16x16/TumblerColumn.png b/share/qtcreator/qmlicons/Qt/16x16/TumblerColumn.png
index 36e2d27608e..468b4542f21 100644
--- a/share/qtcreator/qmlicons/Qt/16x16/TumblerColumn.png
+++ b/share/qtcreator/qmlicons/Qt/16x16/TumblerColumn.png
Binary files differ
diff --git a/share/qtcreator/qmlicons/Qt/16x16/TumblerDialog.png b/share/qtcreator/qmlicons/Qt/16x16/TumblerDialog.png
index 5a105a76db9..63b8923d771 100644
--- a/share/qtcreator/qmlicons/Qt/16x16/TumblerDialog.png
+++ b/share/qtcreator/qmlicons/Qt/16x16/TumblerDialog.png
Binary files differ
diff --git a/src/libs/QtcLibrary.qbs b/src/libs/QtcLibrary.qbs
index 85e27024df2..44a6641cb85 100644
--- a/src/libs/QtcLibrary.qbs
+++ b/src/libs/QtcLibrary.qbs
@@ -18,7 +18,7 @@ DynamicLibrary {
: ["$ORIGIN", "$ORIGIN/.."]
cpp.includePaths: [ ".", ".." ]
- ProductModule {
+ Export {
Depends { name: "cpp" }
cpp.includePaths: [ "." ]
}
diff --git a/src/libs/cplusplus/cplusplus.qbs b/src/libs/cplusplus/cplusplus.qbs
index 20041d86340..31ea51c9400 100644
--- a/src/libs/cplusplus/cplusplus.qbs
+++ b/src/libs/cplusplus/cplusplus.qbs
@@ -168,7 +168,7 @@ QtcLibrary {
"images/var_prot.png",
]
- ProductModule {
+ Export {
Depends { name: "cpp" }
cpp.includePaths: [
"../3rdparty"
diff --git a/src/libs/qmleditorwidgets/contextpanetextwidget.cpp b/src/libs/qmleditorwidgets/contextpanetextwidget.cpp
index 495fa825335..5af62c4e397 100644
--- a/src/libs/qmleditorwidgets/contextpanetextwidget.cpp
+++ b/src/libs/qmleditorwidgets/contextpanetextwidget.cpp
@@ -398,24 +398,11 @@ void ContextPaneTextWidget::onVerticalAlignmentChanged()
}
}
-
ContextPaneTextWidget::~ContextPaneTextWidget()
{
delete ui;
}
-void ContextPaneTextWidget::changeEvent(QEvent *e)
-{
- QWidget::changeEvent(e);
- switch (e->type()) {
- case QEvent::LanguageChange:
- ui->retranslateUi(this);
- break;
- default:
- break;
- }
-}
-
void ContextPaneTextWidget::timerEvent(QTimerEvent *event)
{
if (event->timerId() == m_fontSizeTimer) {
diff --git a/src/libs/qmleditorwidgets/contextpanetextwidget.h b/src/libs/qmleditorwidgets/contextpanetextwidget.h
index b82a4561576..09ff5e8c26f 100644
--- a/src/libs/qmleditorwidgets/contextpanetextwidget.h
+++ b/src/libs/qmleditorwidgets/contextpanetextwidget.h
@@ -82,7 +82,6 @@ signals:
void removeAndChangeProperty(const QString &, const QString &, const QVariant &, bool removeFirst);
protected:
- void changeEvent(QEvent *e);
void timerEvent(QTimerEvent *event);
private:
diff --git a/src/libs/qmleditorwidgets/contextpanewidgetrectangle.cpp b/src/libs/qmleditorwidgets/contextpanewidgetrectangle.cpp
index 1bd8924b6ba..eca08408a56 100644
--- a/src/libs/qmleditorwidgets/contextpanewidgetrectangle.cpp
+++ b/src/libs/qmleditorwidgets/contextpanewidgetrectangle.cpp
@@ -271,18 +271,6 @@ void ContextPaneWidgetRectangle::timerEvent(QTimerEvent *event)
}
}
-void ContextPaneWidgetRectangle::changeEvent(QEvent *e)
-{
- QWidget::changeEvent(e);
- switch (e->type()) {
- case QEvent::LanguageChange:
- ui->retranslateUi(this);
- break;
- default:
- break;
- }
-}
-
void ContextPaneWidgetRectangle::setColor()
{
QLinearGradient gradient;
diff --git a/src/libs/qmleditorwidgets/contextpanewidgetrectangle.h b/src/libs/qmleditorwidgets/contextpanewidgetrectangle.h
index 8d2ae8a08db..6d95ed01625 100644
--- a/src/libs/qmleditorwidgets/contextpanewidgetrectangle.h
+++ b/src/libs/qmleditorwidgets/contextpanewidgetrectangle.h
@@ -74,7 +74,6 @@ signals:
void removeAndChangeProperty(const QString &, const QString &, const QVariant &, bool removeFirst);
protected:
- void changeEvent(QEvent *e);
void timerEvent(QTimerEvent *event);
private:
diff --git a/src/libs/qmleditorwidgets/easingpane/easingcontextpane.cpp b/src/libs/qmleditorwidgets/easingpane/easingcontextpane.cpp
index 0833f6acb9f..d54efe5c59a 100644
--- a/src/libs/qmleditorwidgets/easingpane/easingcontextpane.cpp
+++ b/src/libs/qmleditorwidgets/easingpane/easingcontextpane.cpp
@@ -207,18 +207,6 @@ void EasingContextPane::setProperties(QmlJS::PropertyReader *propertyReader)
ui->durationSpinBox->setValue(250);
}
-void EasingContextPane::changeEvent(QEvent *e)
-{
- QWidget::changeEvent(e);
- switch (e->type()) {
- case QEvent::LanguageChange:
- ui->retranslateUi(this);
- break;
- default:
- break;
- }
-}
-
void EasingContextPane::setGraphDisplayMode(GraphDisplayMode newMode)
{
m_displayMode = newMode;
diff --git a/src/libs/qmleditorwidgets/easingpane/easingcontextpane.h b/src/libs/qmleditorwidgets/easingpane/easingcontextpane.h
index f2b4aa5c614..2c9316e1eba 100644
--- a/src/libs/qmleditorwidgets/easingpane/easingcontextpane.h
+++ b/src/libs/qmleditorwidgets/easingpane/easingcontextpane.h
@@ -69,8 +69,6 @@ signals:
void removeAndChangeProperty(const QString &, const QString &, const QVariant &, bool);
protected:
- void changeEvent(QEvent *e);
-
void setOthers();
void setLinear();
void setBack();
@@ -84,7 +82,6 @@ private:
EasingSimulation *m_simulation;
private slots:
-
void on_playButton_clicked();
void on_overshootSpinBox_valueChanged(double );
void on_periodSpinBox_valueChanged(double );
diff --git a/src/libs/qmljs/qmljs.qbs b/src/libs/qmljs/qmljs.qbs
index bf0efb0611c..4253e0bb09c 100644
--- a/src/libs/qmljs/qmljs.qbs
+++ b/src/libs/qmljs/qmljs.qbs
@@ -106,7 +106,7 @@ QtcLibrary {
"iscriptevaluator.h"
]
- ProductModule {
+ Export {
Depends { name: "cpp" }
Depends { name: "LanguageUtils" }
}
diff --git a/src/libs/qtcreatorcdbext/containers.cpp b/src/libs/qtcreatorcdbext/containers.cpp
index 37de100fcb6..58e87b0a2ca 100644
--- a/src/libs/qtcreatorcdbext/containers.cpp
+++ b/src/libs/qtcreatorcdbext/containers.cpp
@@ -949,7 +949,7 @@ static inline AbstractSymbolGroupNodePtrVector qMap5Nodes(const SymbolGroupValue
return AbstractSymbolGroupNodePtrVector();
if (SymbolGroupValue::verbose > 1)
nodeTree->debug(DebugPrint(), debugQMap5Node);
- int i = 0;
+ VectorIndexType i = 0;
// Finally convert them into real nodes 'QHashNode<K,V> (potentially expensive)
const std::string nodeType = qHashNodeType(v, "Node");
const std::string nodePtrType = nodeType + " *";
diff --git a/src/libs/ssh/ssh.qbs b/src/libs/ssh/ssh.qbs
index edc5663c914..571821c22c9 100644
--- a/src/libs/ssh/ssh.qbs
+++ b/src/libs/ssh/ssh.qbs
@@ -114,7 +114,7 @@ QtcLibrary {
]
}
- ProductModule {
+ Export {
Depends { name: "Qt"; submodules: ["widgets", "network"] }
}
}
diff --git a/src/libs/utils/filewizardpage.cpp b/src/libs/utils/filewizardpage.cpp
index 7b1e3c1d893..5958e9de82e 100644
--- a/src/libs/utils/filewizardpage.cpp
+++ b/src/libs/utils/filewizardpage.cpp
@@ -92,18 +92,6 @@ void FileWizardPage::setFileName(const QString &name)
d->m_ui.nameLineEdit->setText(name);
}
-void FileWizardPage::changeEvent(QEvent *e)
-{
- QWizardPage::changeEvent(e);
- switch (e->type()) {
- case QEvent::LanguageChange:
- d->m_ui.retranslateUi(this);
- break;
- default:
- break;
- }
-}
-
bool FileWizardPage::isComplete() const
{
return d->m_complete;
diff --git a/src/libs/utils/filewizardpage.h b/src/libs/utils/filewizardpage.h
index 5cad4893f94..8982acd535a 100644
--- a/src/libs/utils/filewizardpage.h
+++ b/src/libs/utils/filewizardpage.h
@@ -74,9 +74,6 @@ private slots:
void slotValidChanged();
void slotActivated();
-protected:
- virtual void changeEvent(QEvent *e);
-
private:
FileWizardPagePrivate *d;
};
diff --git a/src/libs/utils/images/crumblepath-segment-end.png b/src/libs/utils/images/crumblepath-segment-end.png
index 1fc371cfec1..b472d595fbe 100644
--- a/src/libs/utils/images/crumblepath-segment-end.png
+++ b/src/libs/utils/images/crumblepath-segment-end.png
Binary files differ
diff --git a/src/libs/utils/images/crumblepath-segment-hover-end.png b/src/libs/utils/images/crumblepath-segment-hover-end.png
index 5663d29ee67..d972750d003 100644
--- a/src/libs/utils/images/crumblepath-segment-hover-end.png
+++ b/src/libs/utils/images/crumblepath-segment-hover-end.png
Binary files differ
diff --git a/src/libs/utils/images/crumblepath-segment-hover.png b/src/libs/utils/images/crumblepath-segment-hover.png
index 741f0575dd7..d6d89025b01 100644
--- a/src/libs/utils/images/crumblepath-segment-hover.png
+++ b/src/libs/utils/images/crumblepath-segment-hover.png
Binary files differ
diff --git a/src/libs/utils/images/crumblepath-segment-selected-end.png b/src/libs/utils/images/crumblepath-segment-selected-end.png
index 6ef4e05b45f..8e79c969e37 100644
--- a/src/libs/utils/images/crumblepath-segment-selected-end.png
+++ b/src/libs/utils/images/crumblepath-segment-selected-end.png
Binary files differ
diff --git a/src/libs/utils/images/crumblepath-segment-selected.png b/src/libs/utils/images/crumblepath-segment-selected.png
index c674099b5a1..d6115fc968f 100644
--- a/src/libs/utils/images/crumblepath-segment-selected.png
+++ b/src/libs/utils/images/crumblepath-segment-selected.png
Binary files differ
diff --git a/src/libs/utils/images/crumblepath-segment.png b/src/libs/utils/images/crumblepath-segment.png
index ad6e7165f6c..7fa41efe292 100644
--- a/src/libs/utils/images/crumblepath-segment.png
+++ b/src/libs/utils/images/crumblepath-segment.png
Binary files differ
diff --git a/src/libs/utils/projectintropage.cpp b/src/libs/utils/projectintropage.cpp
index f238a8145b4..5755d0b2513 100644
--- a/src/libs/utils/projectintropage.cpp
+++ b/src/libs/utils/projectintropage.cpp
@@ -138,18 +138,6 @@ void ProjectIntroPage::setDescription(const QString &description)
d->m_ui.descriptionLabel->setText(description);
}
-void ProjectIntroPage::changeEvent(QEvent *e)
-{
- QWizardPage::changeEvent(e);
- switch (e->type()) {
- case QEvent::LanguageChange:
- d->m_ui.retranslateUi(this);
- break;
- default:
- break;
- }
-}
-
bool ProjectIntroPage::isComplete() const
{
return d->m_complete;
diff --git a/src/libs/utils/projectintropage.h b/src/libs/utils/projectintropage.h
index cb74e354946..b5520594ae5 100644
--- a/src/libs/utils/projectintropage.h
+++ b/src/libs/utils/projectintropage.h
@@ -80,9 +80,6 @@ private slots:
void slotChanged();
void slotActivated();
-protected:
- virtual void changeEvent(QEvent *e);
-
private:
enum StatusLabelMode { Error, Warning, Hint };
diff --git a/src/libs/utils/savedaction.cpp b/src/libs/utils/savedaction.cpp
index 07068ce326b..953c1613657 100644
--- a/src/libs/utils/savedaction.cpp
+++ b/src/libs/utils/savedaction.cpp
@@ -31,6 +31,7 @@
#include <utils/qtcassert.h>
#include <utils/pathchooser.h>
+#include <utils/pathlisteditor.h>
#include <QDebug>
#include <QSettings>
@@ -313,6 +314,8 @@ void SavedAction::connectWidget(QWidget *widget, ApplyMode applyMode)
} else if (QTextEdit *textEdit = qobject_cast<QTextEdit *>(widget)) {
textEdit->setPlainText(m_value.toString());
connect(textEdit, SIGNAL(textChanged()), this, SLOT(textEditTextChanged()));
+ } else if (PathListEditor *editor = qobject_cast<PathListEditor *>(widget)) {
+ editor->setPathList(m_value.toStringList());
} else {
qDebug() << "Cannot connect widget " << widget << toString();
}
@@ -342,6 +345,8 @@ void SavedAction::apply(QSettings *s)
setValue(groupBox->isChecked());
else if (const QTextEdit *textEdit = qobject_cast<QTextEdit *>(m_widget))
setValue(textEdit->toPlainText());
+ else if (const PathListEditor *editor = qobject_cast<PathListEditor *>(m_widget))
+ setValue(editor->pathList());
if (s)
writeSettings(s);
}
diff --git a/src/libs/utils/uncommentselection.cpp b/src/libs/utils/uncommentselection.cpp
index 26159c043f2..dae53e3cd43 100644
--- a/src/libs/utils/uncommentselection.cpp
+++ b/src/libs/utils/uncommentselection.cpp
@@ -34,69 +34,32 @@
using namespace Utils;
CommentDefinition::CommentDefinition() :
- m_afterWhiteSpaces(false),
- m_singleLine(QLatin1String("//")),
- m_multiLineStart(QLatin1String("/*")),
- m_multiLineEnd(QLatin1String("*/"))
+ isAfterWhiteSpaces(false),
+ singleLine(QLatin1String("//")),
+ multiLineStart(QLatin1String("/*")),
+ multiLineEnd(QLatin1String("*/"))
{}
-CommentDefinition &CommentDefinition::setAfterWhiteSpaces(const bool afterWhiteSpaces)
-{
- m_afterWhiteSpaces = afterWhiteSpaces;
- return *this;
-}
-
-CommentDefinition &CommentDefinition::setSingleLine(const QString &singleLine)
-{
- m_singleLine = singleLine;
- return *this;
-}
-
-CommentDefinition &CommentDefinition::setMultiLineStart(const QString &multiLineStart)
+bool CommentDefinition::hasSingleLineStyle() const
{
- m_multiLineStart = multiLineStart;
- return *this;
+ return !singleLine.isEmpty();
}
-CommentDefinition &CommentDefinition::setMultiLineEnd(const QString &multiLineEnd)
+bool CommentDefinition::hasMultiLineStyle() const
{
- m_multiLineEnd = multiLineEnd;
- return *this;
+ return !multiLineStart.isEmpty() && !multiLineEnd.isEmpty();
}
-bool CommentDefinition::isAfterWhiteSpaces() const
-{ return m_afterWhiteSpaces; }
-
-const QString &CommentDefinition::singleLine() const
-{ return m_singleLine; }
-
-const QString &CommentDefinition::multiLineStart() const
-{ return m_multiLineStart; }
-
-const QString &CommentDefinition::multiLineEnd() const
-{ return m_multiLineEnd; }
-
-bool CommentDefinition::hasSingleLineStyle() const
-{ return !m_singleLine.isEmpty(); }
-
-bool CommentDefinition::hasMultiLineStyle() const
-{ return !m_multiLineStart.isEmpty() && !m_multiLineEnd.isEmpty(); }
-
void CommentDefinition::clearCommentStyles()
{
- m_singleLine.clear();
- m_multiLineStart.clear();
- m_multiLineEnd.clear();
+ singleLine.clear();
+ multiLineStart.clear();
+ multiLineEnd.clear();
}
-namespace {
-
-bool isComment(const QString &text,
- int index,
- const CommentDefinition &definition,
- const QString & (CommentDefinition::* comment) () const)
+static bool isComment(const QString &text, int index,
+ const QString &commentType)
{
- const QString &commentType = ((definition).*(comment))();
const int length = commentType.length();
Q_ASSERT(text.length() - index >= length);
@@ -110,8 +73,6 @@ bool isComment(const QString &text,
return true;
}
-} // namespace anynomous
-
void Utils::unCommentSelection(QPlainTextEdit *edit, const CommentDefinition &definition)
{
@@ -146,42 +107,35 @@ void Utils::unCommentSelection(QPlainTextEdit *edit, const CommentDefinition &de
QString startText = startBlock.text();
int startPos = start - startBlock.position();
- const int multiLineStartLength = definition.multiLineStart().length();
+ const int multiLineStartLength = definition.multiLineStart.length();
bool hasLeadingCharacters = !startText.left(startPos).trimmed().isEmpty();
if (startPos >= multiLineStartLength
&& isComment(startText,
startPos - multiLineStartLength,
- definition,
- &CommentDefinition::multiLineStart)) {
+ definition.multiLineStart)) {
startPos -= multiLineStartLength;
start -= multiLineStartLength;
}
- bool hasSelStart = (startPos <= startText.length() - multiLineStartLength
- && isComment(startText,
- startPos,
- definition,
- &CommentDefinition::multiLineStart));
+ bool hasSelStart = startPos <= startText.length() - multiLineStartLength
+ && isComment(startText, startPos, definition.multiLineStart);
QString endText = endBlock.text();
int endPos = end - endBlock.position();
- const int multiLineEndLength = definition.multiLineEnd().length();
+ const int multiLineEndLength = definition.multiLineEnd.length();
bool hasTrailingCharacters =
- !endText.left(endPos).remove(definition.singleLine()).trimmed().isEmpty()
+ !endText.left(endPos).remove(definition.singleLine).trimmed().isEmpty()
&& !endText.mid(endPos).trimmed().isEmpty();
if (endPos <= endText.length() - multiLineEndLength
- && isComment(endText, endPos, definition, &CommentDefinition::multiLineEnd)) {
+ && isComment(endText, endPos, definition.multiLineEnd)) {
endPos += multiLineEndLength;
end += multiLineEndLength;
}
- bool hasSelEnd = (endPos >= multiLineEndLength
- && isComment(endText,
- endPos - multiLineEndLength,
- definition,
- &CommentDefinition::multiLineEnd));
+ bool hasSelEnd = endPos >= multiLineEndLength
+ && isComment(endText, endPos - multiLineEndLength, definition.multiLineEnd);
doMultiLineStyleUncomment = hasSelStart && hasSelEnd;
doMultiLineStyleComment = !doMultiLineStyleUncomment
@@ -191,8 +145,8 @@ void Utils::unCommentSelection(QPlainTextEdit *edit, const CommentDefinition &de
} else if (!hasSelection && !definition.hasSingleLineStyle()) {
QString text = startBlock.text().trimmed();
- doMultiLineStyleUncomment = text.startsWith(definition.multiLineStart())
- && text.endsWith(definition.multiLineEnd());
+ doMultiLineStyleUncomment = text.startsWith(definition.multiLineStart)
+ && text.endsWith(definition.multiLineEnd);
doMultiLineStyleComment = !doMultiLineStyleUncomment && !text.isEmpty();
start = startBlock.position();
@@ -212,36 +166,36 @@ void Utils::unCommentSelection(QPlainTextEdit *edit, const CommentDefinition &de
cursor.setPosition(end);
cursor.movePosition(QTextCursor::PreviousCharacter,
QTextCursor::KeepAnchor,
- definition.multiLineEnd().length());
+ definition.multiLineEnd.length());
cursor.removeSelectedText();
cursor.setPosition(start);
cursor.movePosition(QTextCursor::NextCharacter,
QTextCursor::KeepAnchor,
- definition.multiLineStart().length());
+ definition.multiLineStart.length());
cursor.removeSelectedText();
} else if (doMultiLineStyleComment) {
cursor.setPosition(end);
- cursor.insertText(definition.multiLineEnd());
+ cursor.insertText(definition.multiLineEnd);
cursor.setPosition(start);
- cursor.insertText(definition.multiLineStart());
+ cursor.insertText(definition.multiLineStart);
} else {
endBlock = endBlock.next();
doSingleLineStyleUncomment = true;
for (QTextBlock block = startBlock; block != endBlock; block = block.next()) {
QString text = block.text().trimmed();
- if (!text.isEmpty() && !text.startsWith(definition.singleLine())) {
+ if (!text.isEmpty() && !text.startsWith(definition.singleLine)) {
doSingleLineStyleUncomment = false;
break;
}
}
- const int singleLineLength = definition.singleLine().length();
+ const int singleLineLength = definition.singleLine.length();
for (QTextBlock block = startBlock; block != endBlock; block = block.next()) {
if (doSingleLineStyleUncomment) {
QString text = block.text();
int i = 0;
while (i <= text.size() - singleLineLength) {
- if (isComment(text, i, definition, &CommentDefinition::singleLine)) {
+ if (isComment(text, i, definition.singleLine)) {
cursor.setPosition(block.position() + i);
cursor.movePosition(QTextCursor::NextCharacter,
QTextCursor::KeepAnchor,
@@ -254,14 +208,14 @@ void Utils::unCommentSelection(QPlainTextEdit *edit, const CommentDefinition &de
++i;
}
} else {
- QString text = block.text();
+ const QString text = block.text();
foreach (QChar c, text) {
if (!c.isSpace()) {
- if (definition.isAfterWhiteSpaces())
+ if (definition.isAfterWhiteSpaces)
cursor.setPosition(block.position() + text.indexOf(c));
else
cursor.setPosition(block.position());
- cursor.insertText(definition.singleLine());
+ cursor.insertText(definition.singleLine);
break;
}
}
diff --git a/src/libs/utils/uncommentselection.h b/src/libs/utils/uncommentselection.h
index 511878bd411..a0cad994df5 100644
--- a/src/libs/utils/uncommentselection.h
+++ b/src/libs/utils/uncommentselection.h
@@ -45,26 +45,16 @@ class QTCREATOR_UTILS_EXPORT CommentDefinition
public:
CommentDefinition();
- CommentDefinition &setAfterWhiteSpaces(const bool);
- CommentDefinition &setSingleLine(const QString &singleLine);
- CommentDefinition &setMultiLineStart(const QString &multiLineStart);
- CommentDefinition &setMultiLineEnd(const QString &multiLineEnd);
-
- bool isAfterWhiteSpaces() const;
- const QString &singleLine() const;
- const QString &multiLineStart() const;
- const QString &multiLineEnd() const;
-
bool hasSingleLineStyle() const;
bool hasMultiLineStyle() const;
void clearCommentStyles();
-private:
- bool m_afterWhiteSpaces;
- QString m_singleLine;
- QString m_multiLineStart;
- QString m_multiLineEnd;
+public:
+ bool isAfterWhiteSpaces;
+ QString singleLine;
+ QString multiLineStart;
+ QString multiLineEnd;
};
QTCREATOR_UTILS_EXPORT
diff --git a/src/libs/utils/utils.qbs b/src/libs/utils/utils.qbs
index 885a6caa2eb..b8f9bd76325 100644
--- a/src/libs/utils/utils.qbs
+++ b/src/libs/utils/utils.qbs
@@ -211,8 +211,8 @@ QtcLibrary {
]
}
- ProductModule {
- // ### [ remove, once qbs supports merging of ProductModule items in derived products
+ Export {
+ // ### [ remove, once qbs supports merging of Export items in derived products
Depends { name: "cpp" }
cpp.includePaths: [ ".." ]
// ### ]
diff --git a/src/plugins/QtcPlugin.qbs b/src/plugins/QtcPlugin.qbs
index e6ff4f33738..518df2a3a76 100644
--- a/src/plugins/QtcPlugin.qbs
+++ b/src/plugins/QtcPlugin.qbs
@@ -50,7 +50,7 @@ Product {
qbs.installDir: project.ide_plugin_path + "/" + provider
}
- ProductModule {
+ Export {
Depends { name: "ExtensionSystem" }
}
}
diff --git a/src/plugins/analyzerbase/analyzerbase.qbs b/src/plugins/analyzerbase/analyzerbase.qbs
index b3b062258e8..7a42610f1ba 100644
--- a/src/plugins/analyzerbase/analyzerbase.qbs
+++ b/src/plugins/analyzerbase/analyzerbase.qbs
@@ -44,7 +44,7 @@ QtcPlugin {
"images/analyzer_start_small.png",
]
- ProductModule {
+ Export {
Depends { name: "CPlusPlus" }
}
}
diff --git a/src/plugins/android/androidmanifesteditor.cpp b/src/plugins/android/androidmanifesteditor.cpp
index 576310f08fa..4b5b340bb19 100644
--- a/src/plugins/android/androidmanifesteditor.cpp
+++ b/src/plugins/android/androidmanifesteditor.cpp
@@ -73,17 +73,6 @@ Core::Id AndroidManifestEditor::id() const
return Constants::ANDROID_MANIFEST_EDITOR_ID;
}
-bool AndroidManifestEditor::duplicateSupported() const
-{
- return false;
-}
-
-Core::IEditor *AndroidManifestEditor::duplicate(QWidget *parent)
-{
- Q_UNUSED(parent);
- return 0;
-}
-
bool AndroidManifestEditor::isTemporary() const
{
return false;
diff --git a/src/plugins/android/androidmanifesteditor.h b/src/plugins/android/androidmanifesteditor.h
index c8a38dc99ab..b6073d9005b 100644
--- a/src/plugins/android/androidmanifesteditor.h
+++ b/src/plugins/android/androidmanifesteditor.h
@@ -46,15 +46,13 @@ class AndroidManifestEditorWidget;
class AndroidManifestEditor : public TextEditor::BaseTextEditor
{
Q_OBJECT
+
public:
explicit AndroidManifestEditor(AndroidManifestEditorWidget *editorWidget);
Core::Id id() const;
-
- bool duplicateSupported() const;
- Core::IEditor *duplicate(QWidget *parent);
-
bool isTemporary() const;
+
private slots:
void changeEditorPage(QAction *action);
diff --git a/src/plugins/autotoolsprojectmanager/autotoolsmanager.cpp b/src/plugins/autotoolsprojectmanager/autotoolsmanager.cpp
index 50e0a5a1a18..4e72214ab25 100644
--- a/src/plugins/autotoolsprojectmanager/autotoolsmanager.cpp
+++ b/src/plugins/autotoolsprojectmanager/autotoolsmanager.cpp
@@ -47,26 +47,14 @@ namespace Internal {
Project *AutotoolsManager::openProject(const QString &fileName, QString *errorString)
{
- QString canonicalFilePath = QFileInfo(fileName).canonicalFilePath();
-
- if (canonicalFilePath.isEmpty()) {
+ if (!QFileInfo(fileName).isFile()) {
if (errorString)
- *errorString = tr("Failed opening project '%1': Project file does not exist")
- .arg(QDir::toNativeSeparators(fileName));
+ *errorString = tr("Failed opening project '%1': Project is not a file")
+ .arg(fileName);
return 0;
}
- // Check whether the project is already open or not.
- ProjectExplorerPlugin *projectExplorer = ProjectExplorerPlugin::instance();
- foreach (Project *pi, projectExplorer->session()->projects()) {
- if (canonicalFilePath == pi->document()->fileName()) {
- *errorString = tr("Failed opening project '%1': Project already open")
- .arg(QDir::toNativeSeparators(canonicalFilePath));
- return 0;
- }
- }
-
- return new AutotoolsProject(this, canonicalFilePath);
+ return new AutotoolsProject(this, fileName);
}
QString AutotoolsManager::mimeType() const
diff --git a/src/plugins/bineditor/bineditorplugin.cpp b/src/plugins/bineditor/bineditorplugin.cpp
index e2834b4ba9d..f6e401dae7e 100644
--- a/src/plugins/bineditor/bineditorplugin.cpp
+++ b/src/plugins/bineditor/bineditorplugin.cpp
@@ -364,12 +364,6 @@ public:
QString displayName() const { return m_displayName; }
void setDisplayName(const QString &title) { m_displayName = title; emit changed(); }
- bool duplicateSupported() const { return false; }
- IEditor *duplicate(QWidget * /* parent */) { return 0; }
-
- QByteArray saveState() const { return QByteArray(); } // not supported
- bool restoreState(const QByteArray & /* state */) { return false; } // not supported
-
QWidget *toolBar() { return m_toolBar; }
bool isTemporary() const { return m_editor->isMemoryView(); }
diff --git a/src/plugins/cmakeprojectmanager/cmakeeditor.cpp b/src/plugins/cmakeprojectmanager/cmakeeditor.cpp
index d7aae9ba32d..f91450d541b 100644
--- a/src/plugins/cmakeprojectmanager/cmakeeditor.cpp
+++ b/src/plugins/cmakeprojectmanager/cmakeeditor.cpp
@@ -121,7 +121,7 @@ CMakeEditorWidget::CMakeEditorWidget(QWidget *parent, CMakeEditorFactory *factor
baseTextDocument()->setSyntaxHighlighter(new CMakeHighlighter);
m_commentDefinition.clearCommentStyles();
- m_commentDefinition.setSingleLine(QLatin1String("#"));
+ m_commentDefinition.singleLine = QLatin1Char('#');
ah->setupActions(this);
}
diff --git a/src/plugins/cmakeprojectmanager/cmakeprojectmanager.cpp b/src/plugins/cmakeprojectmanager/cmakeprojectmanager.cpp
index cadf683c6dc..63f13f62f92 100644
--- a/src/plugins/cmakeprojectmanager/cmakeprojectmanager.cpp
+++ b/src/plugins/cmakeprojectmanager/cmakeprojectmanager.cpp
@@ -126,8 +126,13 @@ void CMakeManager::runCMake(ProjectExplorer::Project *project)
ProjectExplorer::Project *CMakeManager::openProject(const QString &fileName, QString *errorString)
{
- Q_UNUSED(errorString)
- // TODO check whether this project is already opened
+ if (!QFileInfo(fileName).isFile()) {
+ if (errorString)
+ *errorString = tr("Failed opening project '%1': Project is not a file")
+ .arg(fileName);
+ return 0;
+ }
+
return new CMakeProject(this, fileName);
}
diff --git a/src/plugins/coreplugin/actionmanager/actioncontainer.cpp b/src/plugins/coreplugin/actionmanager/actioncontainer.cpp
index 9562e73bdfd..1d7da8f5b45 100644
--- a/src/plugins/coreplugin/actionmanager/actioncontainer.cpp
+++ b/src/plugins/coreplugin/actionmanager/actioncontainer.cpp
@@ -173,12 +173,12 @@ ActionContainer::OnAllDisabledBehavior ActionContainerPrivate::onAllDisabledBeha
return m_onAllDisabledBehavior;
}
-void ActionContainerPrivate::appendGroup(const Id &groupId)
+void ActionContainerPrivate::appendGroup(Id groupId)
{
m_groups.append(Group(groupId));
}
-void ActionContainerPrivate::insertGroup(const Id &before, const Id &groupId)
+void ActionContainerPrivate::insertGroup(Id before, Id groupId)
{
QList<Group>::iterator it = m_groups.begin();
while (it != m_groups.end()) {
@@ -190,7 +190,7 @@ void ActionContainerPrivate::insertGroup(const Id &before, const Id &groupId)
}
}
-QList<Group>::const_iterator ActionContainerPrivate::findGroup(const Id &groupId) const
+QList<Group>::const_iterator ActionContainerPrivate::findGroup(Id groupId) const
{
QList<Group>::const_iterator it = m_groups.constBegin();
while (it != m_groups.constEnd()) {
@@ -202,7 +202,7 @@ QList<Group>::const_iterator ActionContainerPrivate::findGroup(const Id &groupId
}
-QAction *ActionContainerPrivate::insertLocation(const Id &groupId) const
+QAction *ActionContainerPrivate::insertLocation(Id groupId) const
{
QList<Group>::const_iterator it = findGroup(groupId);
QTC_ASSERT(it != m_groups.constEnd(), return 0);
@@ -230,7 +230,7 @@ QAction *ActionContainerPrivate::insertLocation(QList<Group>::const_iterator gro
return 0;
}
-void ActionContainerPrivate::addAction(Command *command, const Id &groupId)
+void ActionContainerPrivate::addAction(Command *command, Id groupId)
{
if (!canAddAction(command))
return;
@@ -248,7 +248,7 @@ void ActionContainerPrivate::addAction(Command *command, const Id &groupId)
scheduleUpdate();
}
-void ActionContainerPrivate::addMenu(ActionContainer *menu, const Id &groupId)
+void ActionContainerPrivate::addMenu(ActionContainer *menu, Id groupId)
{
ActionContainerPrivate *containerPrivate = static_cast<ActionContainerPrivate *>(menu);
if (!containerPrivate->canBeAddedToMenu())
@@ -266,7 +266,7 @@ void ActionContainerPrivate::addMenu(ActionContainer *menu, const Id &groupId)
scheduleUpdate();
}
-void ActionContainerPrivate::addMenu(ActionContainer *before, ActionContainer *menu, const Id &groupId)
+void ActionContainerPrivate::addMenu(ActionContainer *before, ActionContainer *menu, Id groupId)
{
ActionContainerPrivate *containerPrivate = static_cast<ActionContainerPrivate *>(menu);
if (!containerPrivate->canBeAddedToMenu())
@@ -293,7 +293,7 @@ void ActionContainerPrivate::addMenu(ActionContainer *before, ActionContainer *m
/*! \a context \a group \a outSeparator
* \internal
*/
-Command *ActionContainerPrivate::addSeparator(const Context &context, const Id &group, QAction **outSeparator)
+Command *ActionContainerPrivate::addSeparator(const Context &context, Id group, QAction **outSeparator)
{
static int separatorIdCount = 0;
QAction *separator = new QAction(this);
diff --git a/src/plugins/coreplugin/actionmanager/actioncontainer.h b/src/plugins/coreplugin/actionmanager/actioncontainer.h
index 1f45dea7bcb..5115521354b 100644
--- a/src/plugins/coreplugin/actionmanager/actioncontainer.h
+++ b/src/plugins/coreplugin/actionmanager/actioncontainer.h
@@ -63,13 +63,13 @@ public:
virtual QMenu *menu() const = 0;
virtual QMenuBar *menuBar() const = 0;
- virtual QAction *insertLocation(const Id &group) const = 0;
- virtual void appendGroup(const Id &group) = 0;
- virtual void insertGroup(const Id &before, const Id &group) = 0;
- virtual void addAction(Command *action, const Id &group = Id()) = 0;
- virtual void addMenu(ActionContainer *menu, const Id &group = Id()) = 0;
- virtual void addMenu(ActionContainer *before, ActionContainer *menu, const Id &group = Id()) = 0;
- virtual Command *addSeparator(const Context &context, const Id &group = Id(), QAction **outSeparator = 0) = 0;
+ virtual QAction *insertLocation(Id group) const = 0;
+ virtual void appendGroup(Id group) = 0;
+ virtual void insertGroup(Id before, Id group) = 0;
+ virtual void addAction(Command *action, Id group = Id()) = 0;
+ virtual void addMenu(ActionContainer *menu, Id group = Id()) = 0;
+ virtual void addMenu(ActionContainer *before, ActionContainer *menu, Id group = Id()) = 0;
+ virtual Command *addSeparator(const Context &context, Id group = Id(), QAction **outSeparator = 0) = 0;
// This clears this menu and submenus from all actions and submenus.
// It does not destroy the submenus and commands, just removes them from their parents.
diff --git a/src/plugins/coreplugin/actionmanager/actioncontainer_p.h b/src/plugins/coreplugin/actionmanager/actioncontainer_p.h
index f085dffd032..f0f360e7570 100644
--- a/src/plugins/coreplugin/actionmanager/actioncontainer_p.h
+++ b/src/plugins/coreplugin/actionmanager/actioncontainer_p.h
@@ -56,13 +56,13 @@ public:
void setOnAllDisabledBehavior(OnAllDisabledBehavior behavior);
ActionContainer::OnAllDisabledBehavior onAllDisabledBehavior() const;
- QAction *insertLocation(const Id &groupId) const;
- void appendGroup(const Id &id);
- void insertGroup(const Id &before, const Id &groupId);
- void addAction(Command *action, const Id &group = Id());
- void addMenu(ActionContainer *menu, const Id &group = Id());
- void addMenu(ActionContainer *before, ActionContainer *menu, const Id &group = Id());
- Command *addSeparator(const Context &context, const Id &group = Id(), QAction **outSeparator = 0);
+ QAction *insertLocation(Id groupId) const;
+ void appendGroup(Id id);
+ void insertGroup(Id before, Id groupId);
+ void addAction(Command *action, Id group = Id());
+ void addMenu(ActionContainer *menu, Id group = Id());
+ void addMenu(ActionContainer *before, ActionContainer *menu, Id group = Id());
+ Command *addSeparator(const Context &context, Id group = Id(), QAction **outSeparator = 0);
virtual void clear();
Id id() const;
@@ -92,7 +92,7 @@ private slots:
void itemDestroyed();
private:
- QList<Group>::const_iterator findGroup(const Id &groupId) const;
+ QList<Group>::const_iterator findGroup(Id groupId) const;
QAction *insertLocation(QList<Group>::const_iterator group) const;
OnAllDisabledBehavior m_onAllDisabledBehavior;
diff --git a/src/plugins/coreplugin/actionmanager/actionmanager.cpp b/src/plugins/coreplugin/actionmanager/actionmanager.cpp
index 2a71ba62972..b9d11a1f562 100644
--- a/src/plugins/coreplugin/actionmanager/actionmanager.cpp
+++ b/src/plugins/coreplugin/actionmanager/actionmanager.cpp
@@ -177,7 +177,7 @@ ActionManager *ActionManager::instance()
Add your menu to some other menu or a menu bar via the
ActionManager::actionContainer and ActionContainer::addMenu methods.
*/
-ActionContainer *ActionManager::createMenu(const Id &id)
+ActionContainer *ActionManager::createMenu(Id id)
{
const ActionManagerPrivate::IdContainerMap::const_iterator it = m_instance->d->m_idContainerMap.constFind(id);
if (it != m_instance->d->m_idContainerMap.constEnd())
@@ -202,7 +202,7 @@ ActionContainer *ActionManager::createMenu(const Id &id)
or to add menus to the menu bar. The ActionManager owns
the returned ActionContainer.
*/
-ActionContainer *ActionManager::createMenuBar(const Id &id)
+ActionContainer *ActionManager::createMenuBar(Id id)
{
const ActionManagerPrivate::IdContainerMap::const_iterator it = m_instance->d->m_idContainerMap.constFind(id);
if (it != m_instance->d->m_idContainerMap.constEnd())
@@ -231,7 +231,7 @@ ActionContainer *ActionManager::createMenuBar(const Id &id)
A scriptable action can be called from a script without the need for the user
to interact with it.
*/
-Command *ActionManager::registerAction(QAction *action, const Id &id, const Context &context, bool scriptable)
+Command *ActionManager::registerAction(QAction *action, Id id, const Context &context, bool scriptable)
{
Action *a = m_instance->d->overridableAction(id);
if (a) {
@@ -253,7 +253,7 @@ Command *ActionManager::registerAction(QAction *action, const Id &id, const Cont
A scriptable shortcut can be called from a script without the need for the user
to interact with it.
*/
-Command *ActionManager::registerShortcut(QShortcut *shortcut, const Id &id, const Context &context, bool scriptable)
+Command *ActionManager::registerShortcut(QShortcut *shortcut, Id id, const Context &context, bool scriptable)
{
QTC_CHECK(!context.isEmpty());
Shortcut *sc = 0;
@@ -297,7 +297,7 @@ Command *ActionManager::registerShortcut(QShortcut *shortcut, const Id &id, cons
\sa ActionManager::registerAction()
*/
-Command *ActionManager::command(const Id &id)
+Command *ActionManager::command(Id id)
{
const ActionManagerPrivate::IdCmdMap::const_iterator it = m_instance->d->m_idCmdMap.constFind(id);
if (it == m_instance->d->m_idCmdMap.constEnd()) {
@@ -316,7 +316,7 @@ Command *ActionManager::command(const Id &id)
\sa ActionManager::createMenu()
\sa ActionManager::createMenuBar()
*/
-ActionContainer *ActionManager::actionContainer(const Id &id)
+ActionContainer *ActionManager::actionContainer(Id id)
{
const ActionManagerPrivate::IdContainerMap::const_iterator it = m_instance->d->m_idContainerMap.constFind(id);
if (it == m_instance->d->m_idContainerMap.constEnd()) {
@@ -348,7 +348,7 @@ QList<Command *> ActionManager::commands()
filters. If the user removes such an action, it also has to be unregistered from the action manager,
to make it disappear from shortcut settings etc.
*/
-void ActionManager::unregisterAction(QAction *action, const Id &id)
+void ActionManager::unregisterAction(QAction *action, Id id)
{
Action *a = 0;
CommandPrivate *c = m_instance->d->m_idCmdMap.value(id, 0);
@@ -379,7 +379,7 @@ void ActionManager::unregisterAction(QAction *action, const Id &id)
a corresponding shortcut also has to be unregistered from the action manager,
to make it disappear from shortcut settings etc.
*/
-void ActionManager::unregisterShortcut(const Core::Id &id)
+void ActionManager::unregisterShortcut(Id id)
{
Shortcut *sc = 0;
CommandPrivate *c = m_instance->d->m_idCmdMap.value(id, 0);
@@ -525,7 +525,7 @@ void ActionManagerPrivate::showShortcutPopup(const QString &shortcut)
m_presentationLabelTimer.start();
}
-Action *ActionManagerPrivate::overridableAction(const Id &id)
+Action *ActionManagerPrivate::overridableAction(Id id)
{
Action *a = 0;
if (CommandPrivate *c = m_idCmdMap.value(id, 0)) {
diff --git a/src/plugins/coreplugin/actionmanager/actionmanager.h b/src/plugins/coreplugin/actionmanager/actionmanager.h
index 7a0a4c8fafb..e459d0061b4 100644
--- a/src/plugins/coreplugin/actionmanager/actionmanager.h
+++ b/src/plugins/coreplugin/actionmanager/actionmanager.h
@@ -58,19 +58,19 @@ class CORE_EXPORT ActionManager : public QObject
public:
static ActionManager *instance();
- static ActionContainer *createMenu(const Id &id);
- static ActionContainer *createMenuBar(const Id &id);
+ static ActionContainer *createMenu(Id id);
+ static ActionContainer *createMenuBar(Id id);
- static Command *registerAction(QAction *action, const Id &id, const Context &context, bool scriptable = false);
- static Command *registerShortcut(QShortcut *shortcut, const Id &id, const Context &context, bool scriptable = false);
+ static Command *registerAction(QAction *action, Id id, const Context &context, bool scriptable = false);
+ static Command *registerShortcut(QShortcut *shortcut, Id id, const Context &context, bool scriptable = false);
- static Command *command(const Id &id);
- static ActionContainer *actionContainer(const Id &id);
+ static Command *command(Id id);
+ static ActionContainer *actionContainer(Id id);
static QList<Command *> commands();
- static void unregisterAction(QAction *action, const Id &id);
- static void unregisterShortcut(const Id &id);
+ static void unregisterAction(QAction *action, Id id);
+ static void unregisterShortcut(Id id);
static void setPresentationModeEnabled(bool enabled);
static bool isPresentationModeEnabled();
diff --git a/src/plugins/coreplugin/actionmanager/actionmanager_p.h b/src/plugins/coreplugin/actionmanager/actionmanager_p.h
index 62f783c8d60..3a0b3320120 100644
--- a/src/plugins/coreplugin/actionmanager/actionmanager_p.h
+++ b/src/plugins/coreplugin/actionmanager/actionmanager_p.h
@@ -72,7 +72,7 @@ public:
void showShortcutPopup(const QString &shortcut);
bool hasContext(const Context &context) const;
- Action *overridableAction(const Id &id);
+ Action *overridableAction(Id id);
public slots:
void containerDestroyed();
diff --git a/src/plugins/coreplugin/coreplugin.qbs b/src/plugins/coreplugin/coreplugin.qbs
index fc98dfaa4c1..d48f09016e4 100644
--- a/src/plugins/coreplugin/coreplugin.qbs
+++ b/src/plugins/coreplugin/coreplugin.qbs
@@ -254,7 +254,7 @@ QtcPlugin {
]
}
- ProductModule {
+ Export {
Depends { name: "cpp" }
Depends { name: "Aggregation" }
Depends { name: "Utils" }
diff --git a/src/plugins/coreplugin/editormanager/ieditor.h b/src/plugins/coreplugin/editormanager/ieditor.h
index ad915eb02e5..d4203131362 100644
--- a/src/plugins/coreplugin/editormanager/ieditor.h
+++ b/src/plugins/coreplugin/editormanager/ieditor.h
@@ -42,8 +42,8 @@ class IDocument;
class CORE_EXPORT IEditor : public IContext
{
Q_OBJECT
-public:
+public:
IEditor(QObject *parent = 0) : IContext(parent) {}
virtual ~IEditor() {}
@@ -54,11 +54,11 @@ public:
virtual QString displayName() const = 0;
virtual void setDisplayName(const QString &title) = 0;
- virtual bool duplicateSupported() const = 0;
- virtual IEditor *duplicate(QWidget *parent) = 0;
+ virtual bool duplicateSupported() const { return false; }
+ virtual IEditor *duplicate(QWidget * /*parent*/) { return 0; }
- virtual QByteArray saveState() const = 0;
- virtual bool restoreState(const QByteArray &state) = 0;
+ virtual QByteArray saveState() const { return QByteArray(); }
+ virtual bool restoreState(const QByteArray &/*state*/) { return true; }
virtual int currentLine() const { return 0; }
virtual int currentColumn() const { return 0; }
diff --git a/src/plugins/coreplugin/mimetypemagicdialog.cpp b/src/plugins/coreplugin/mimetypemagicdialog.cpp
index 9444b9c7440..5ba467e0aff 100644
--- a/src/plugins/coreplugin/mimetypemagicdialog.cpp
+++ b/src/plugins/coreplugin/mimetypemagicdialog.cpp
@@ -45,18 +45,6 @@ MimeTypeMagicDialog::MimeTypeMagicDialog(QWidget *parent) :
connect(ui.buttonBox, SIGNAL(accepted()), this, SLOT(validateAccept()));
}
-void MimeTypeMagicDialog::changeEvent(QEvent *e)
-{
- QDialog::changeEvent(e);
- switch (e->type()) {
- case QEvent::LanguageChange:
- ui.retranslateUi(this);
- break;
- default:
- break;
- }
-}
-
void MimeTypeMagicDialog::applyRecommended(bool checked)
{
if (checked) {
diff --git a/src/plugins/coreplugin/mimetypemagicdialog.h b/src/plugins/coreplugin/mimetypemagicdialog.h
index 24673bf16e8..b2cced80461 100644
--- a/src/plugins/coreplugin/mimetypemagicdialog.h
+++ b/src/plugins/coreplugin/mimetypemagicdialog.h
@@ -62,9 +62,6 @@ public:
void setMagicData(const MagicData &data);
MagicData magicData() const;
-protected:
- void changeEvent(QEvent *e);
-
private slots:
void applyRecommended(bool checked);
void validateAccept();
diff --git a/src/plugins/coreplugin/progressmanager/progressmanager.cpp b/src/plugins/coreplugin/progressmanager/progressmanager.cpp
index 330737ca0ca..37c47799e1e 100644
--- a/src/plugins/coreplugin/progressmanager/progressmanager.cpp
+++ b/src/plugins/coreplugin/progressmanager/progressmanager.cpp
@@ -51,6 +51,10 @@
#include <QStyle>
#include <QStyleOption>
#include <QTimer>
+#include <QVariant>
+
+static const char kSettingsGroup[] = "Progress";
+static const char kDetailsPinned[] = "DetailsPinned";
using namespace Core;
using namespace Core::Internal;
@@ -283,8 +287,18 @@ ProgressManagerPrivate::~ProgressManagerPrivate()
cleanup();
}
+void ProgressManagerPrivate::readSettings()
+{
+ QSettings *settings = ICore::settings();
+ settings->beginGroup(QLatin1String(kSettingsGroup));
+ m_progressViewPinned = settings->value(QLatin1String(kDetailsPinned), true).toBool();
+ settings->endGroup();
+}
+
void ProgressManagerPrivate::init()
{
+ readSettings();
+
m_statusBarWidgetContainer = new Core::StatusBarWidget;
m_statusBarWidget = new QWidget;
QHBoxLayout *layout = new QHBoxLayout(m_statusBarWidget);
@@ -658,6 +672,11 @@ void ProgressManagerPrivate::progressDetailsToggled(bool checked)
{
m_progressViewPinned = checked;
updateVisibility();
+
+ QSettings *settings = ICore::settings();
+ settings->beginGroup(QLatin1String(kSettingsGroup));
+ settings->setValue(QLatin1String(kDetailsPinned), m_progressViewPinned);
+ settings->endGroup();
}
ToggleButton::ToggleButton(QWidget *parent)
diff --git a/src/plugins/coreplugin/progressmanager/progressmanager_p.h b/src/plugins/coreplugin/progressmanager/progressmanager_p.h
index 44b572d0f28..dabd525a792 100644
--- a/src/plugins/coreplugin/progressmanager/progressmanager_p.h
+++ b/src/plugins/coreplugin/progressmanager/progressmanager_p.h
@@ -87,6 +87,7 @@ private slots:
void slotRemoveTask();
private:
+ void readSettings();
void initInternal();
void stopFadeOfSummaryProgress();
diff --git a/src/plugins/coreplugin/removefiledialog.cpp b/src/plugins/coreplugin/removefiledialog.cpp
index bf72c6e1207..c643ad5be37 100644
--- a/src/plugins/coreplugin/removefiledialog.cpp
+++ b/src/plugins/coreplugin/removefiledialog.cpp
@@ -59,15 +59,3 @@ bool RemoveFileDialog::isDeleteFileChecked() const
{
return m_ui->deleteFileCheckBox->isChecked();
}
-
-void RemoveFileDialog::changeEvent(QEvent *e)
-{
- QDialog::changeEvent(e);
- switch (e->type()) {
- case QEvent::LanguageChange:
- m_ui->retranslateUi(this);
- break;
- default:
- break;
- }
-}
diff --git a/src/plugins/coreplugin/removefiledialog.h b/src/plugins/coreplugin/removefiledialog.h
index 9f5c6edb6ef..ebe5c86bec2 100644
--- a/src/plugins/coreplugin/removefiledialog.h
+++ b/src/plugins/coreplugin/removefiledialog.h
@@ -51,9 +51,6 @@ public:
void setDeleteFileVisible(bool visible);
bool isDeleteFileChecked() const;
-protected:
- virtual void changeEvent(QEvent *e);
-
private:
Ui::RemoveFileDialog *m_ui;
};
diff --git a/src/plugins/cpptools/cpptools.qbs b/src/plugins/cpptools/cpptools.qbs
index 059a3dfc7e2..6f7114b3703 100644
--- a/src/plugins/cpptools/cpptools.qbs
+++ b/src/plugins/cpptools/cpptools.qbs
@@ -123,7 +123,7 @@ QtcPlugin {
cpp.defines: outer.concat(['SRCDIR="' + FileInfo.path(filePath) + '"'])
}
- ProductModule {
+ Export {
Depends { name: "CPlusPlus" }
}
}
diff --git a/src/plugins/debugger/debugger.qbs b/src/plugins/debugger/debugger.qbs
index 77cedce2d96..688805e2141 100644
--- a/src/plugins/debugger/debugger.qbs
+++ b/src/plugins/debugger/debugger.qbs
@@ -303,7 +303,7 @@ QtcPlugin {
]
}
- ProductModule {
+ Export {
Depends { name: "cpp" }
Depends { name: "QtcSsh" }
cpp.includePaths: ["."]
diff --git a/src/plugins/debugger/debuggercore.h b/src/plugins/debugger/debuggercore.h
index ec5bd3c4f39..18787baa8bb 100644
--- a/src/plugins/debugger/debuggercore.h
+++ b/src/plugins/debugger/debuggercore.h
@@ -123,6 +123,7 @@ public:
virtual Utils::SavedAction *action(int code) const = 0;
virtual bool boolSetting(int code) const = 0;
virtual QString stringSetting(int code) const = 0;
+ virtual QStringList stringListSetting(int code) const = 0;
virtual void setThreads(const QStringList &list, int index) = 0;
virtual DebuggerToolTipManager *toolTipManager() const = 0;
diff --git a/src/plugins/debugger/debuggerplugin.cpp b/src/plugins/debugger/debuggerplugin.cpp
index 36079eb1ee1..f90354e2b78 100644
--- a/src/plugins/debugger/debuggerplugin.cpp
+++ b/src/plugins/debugger/debuggerplugin.cpp
@@ -604,7 +604,7 @@ private:
const char m_wordWidth;
};
-bool fillParameters(DebuggerStartParameters *sp, const Kit *kit /* = 0 */, QString *errorMessage /* = 0 */)
+bool fillParameters(DebuggerStartParameters *sp, const Kit *kit, QString *errorMessage /* = 0 */)
{
if (!kit) {
// This code can only be reached when starting via the command line
@@ -667,7 +667,9 @@ bool fillParameters(DebuggerStartParameters *sp, const Kit *kit /* = 0 */, QStri
IDevice::ConstPtr device = DeviceKitInformation::device(kit);
if (device) {
sp->connParams = device->sshParameters();
- sp->remoteChannel = sp->connParams.host + QLatin1Char(':') + QString::number(sp->connParams.port);
+ // Could have been set from command line.
+ if (sp->remoteChannel.isEmpty())
+ sp->remoteChannel = sp->connParams.host + QLatin1Char(':') + QString::number(sp->connParams.port);
}
return true;
}
@@ -1191,6 +1193,7 @@ public slots:
SavedAction *action(int code) const;
bool boolSetting(int code) const;
QString stringSetting(int code) const;
+ QStringList stringListSetting(int code) const;
void showModuleSymbols(const QString &moduleName, const Symbols &symbols);
void showModuleSections(const QString &moduleName, const Sections &sections);
@@ -3307,6 +3310,11 @@ QString DebuggerPluginPrivate::stringSetting(int code) const
return m_debuggerSettings->item(code)->value().toString();
}
+QStringList DebuggerPluginPrivate::stringListSetting(int code) const
+{
+ return m_debuggerSettings->item(code)->value().toStringList();
+}
+
void DebuggerPluginPrivate::showModuleSymbols(const QString &moduleName,
const Symbols &symbols)
{
diff --git a/src/plugins/debugger/debuggerrunner.cpp b/src/plugins/debugger/debuggerrunner.cpp
index 9f18893ff5d..1e45604c9ab 100644
--- a/src/plugins/debugger/debuggerrunner.cpp
+++ b/src/plugins/debugger/debuggerrunner.cpp
@@ -444,8 +444,8 @@ static bool fixupEngineTypes(DebuggerStartParameters &sp, RunConfiguration *rc,
if (const Target *target = rc->target())
if (!fillParameters(&sp, target->kit(), errorMessage))
return false;
- const bool useCppDebugger = aspect->useCppDebugger();
- const bool useQmlDebugger = aspect->useQmlDebugger();
+ const bool useCppDebugger = aspect->useCppDebugger() && (sp.languages & CppLanguage);
+ const bool useQmlDebugger = aspect->useQmlDebugger() && (sp.languages & QmlLanguage);
if (useQmlDebugger) {
if (useCppDebugger) {
sp.masterEngineType = QmlCppEngineType;
diff --git a/src/plugins/debugger/debuggerstartparameters.h b/src/plugins/debugger/debuggerstartparameters.h
index f492dbd3962..0e5f818f763 100644
--- a/src/plugins/debugger/debuggerstartparameters.h
+++ b/src/plugins/debugger/debuggerstartparameters.h
@@ -141,7 +141,7 @@ public:
namespace Internal {
-bool fillParameters(DebuggerStartParameters *sp, const ProjectExplorer::Kit *kit = 0, QString *errorMessage = 0);
+bool fillParameters(DebuggerStartParameters *sp, const ProjectExplorer::Kit *kit, QString *errorMessage = 0);
} // namespace Internal
} // namespace Debugger
diff --git a/src/plugins/debugger/gdb/gdbengine.cpp b/src/plugins/debugger/gdb/gdbengine.cpp
index 2b8e213d1ce..b9ce9a083ab 100644
--- a/src/plugins/debugger/gdb/gdbengine.cpp
+++ b/src/plugins/debugger/gdb/gdbengine.cpp
@@ -1592,7 +1592,7 @@ void GdbEngine::handleStop1(const GdbMi &data)
if (!m_systemDumpersLoaded) {
m_systemDumpersLoaded = true;
- if (debuggerCore()->boolSetting(LoadGdbDumpers))
+ if (m_gdbVersion >= 70400 && debuggerCore()->boolSetting(LoadGdbDumpers))
postCommand("importPlainDumpers");
}
diff --git a/src/plugins/debugger/images/qml/app-on-top.png b/src/plugins/debugger/images/qml/app-on-top.png
index ddec5400c69..e89026d1943 100644
--- a/src/plugins/debugger/images/qml/app-on-top.png
+++ b/src/plugins/debugger/images/qml/app-on-top.png
Binary files differ
diff --git a/src/plugins/debugger/images/qml/apply-on-save.png b/src/plugins/debugger/images/qml/apply-on-save.png
index 666382c06dd..19e75ab66d0 100644
--- a/src/plugins/debugger/images/qml/apply-on-save.png
+++ b/src/plugins/debugger/images/qml/apply-on-save.png
Binary files differ
diff --git a/src/plugins/debugger/images/qml/select.png b/src/plugins/debugger/images/qml/select.png
index 672285582b5..b120f79024d 100644
--- a/src/plugins/debugger/images/qml/select.png
+++ b/src/plugins/debugger/images/qml/select.png
Binary files differ
diff --git a/src/plugins/debugger/images/qml/zoom.png b/src/plugins/debugger/images/qml/zoom.png
index ebae877310c..7f54ec11911 100644
--- a/src/plugins/debugger/images/qml/zoom.png
+++ b/src/plugins/debugger/images/qml/zoom.png
Binary files differ
diff --git a/src/plugins/debugger/lldb/lldbengine.cpp b/src/plugins/debugger/lldb/lldbengine.cpp
index 5786fda6d13..119382b8781 100644
--- a/src/plugins/debugger/lldb/lldbengine.cpp
+++ b/src/plugins/debugger/lldb/lldbengine.cpp
@@ -664,7 +664,67 @@ void LldbEngine::updateWatchData(const WatchData &data, const WatchUpdateFlags &
Q_UNUSED(data);
Q_UNUSED(flags);
WatchHandler *handler = watchHandler();
- runCommand(Command("updateData").arg("expanded", handler->expansionRequests()));
+
+ Command cmd("updateData");
+ cmd.arg("expanded", handler->expansionRequests());
+ cmd.arg("typeformats", handler->typeFormatRequests());
+ cmd.arg("formats", handler->individualFormatRequests());
+
+ QList<QByteArray> watcherData;
+// const QString fileName = stackHandler()->currentFrame().file;
+// if (!fileName.isEmpty()) {
+// const QString function = stackHandler()->currentFrame().function;
+// typedef DebuggerToolTipManager::ExpressionInamePair ExpressionInamePair;
+// typedef DebuggerToolTipManager::ExpressionInamePairs ExpressionInamePairs;
+
+// // Re-create tooltip items that are not filters on existing local variables in
+// // the tooltip model.
+// ExpressionInamePairs toolTips = DebuggerToolTipManager::instance()
+// ->treeWidgetExpressions(fileName, objectName(), function);
+
+// const QString currentExpression = tooltipExpression();
+// if (!currentExpression.isEmpty()) {
+// int currentIndex = -1;
+// for (int i = 0; i < toolTips.size(); ++i) {
+// if (toolTips.at(i).first == currentExpression) {
+// currentIndex = i;
+// break;
+// }
+// }
+// if (currentIndex < 0)
+// toolTips.push_back(ExpressionInamePair(currentExpression, tooltipIName(currentExpression)));
+// }
+
+// foreach (const ExpressionInamePair &p, toolTips) {
+// if (p.second.startsWith("tooltip")) {
+// QHash<QByteArray, QByteArray> hash;
+// hash["exp"] = p.first.toLatin1();
+// hash["id"] = p.second;
+// watcherData.append(Command::toData(hash));
+// }
+// }
+// }
+
+ QHashIterator<QByteArray, int> it(handler->watcherNames());
+ while (it.hasNext()) {
+ it.next();
+ QHash<QByteArray, QByteArray> hash;
+ hash["exp"] = '\'' + it.key() + '\'';
+ hash["id"] = "'watch." + QByteArray::number(it.value()) + '\'';
+ watcherData.append(Command::toData(hash));
+ }
+ cmd.args.append("'watchers':" + Command::toData(watcherData) + ',');
+
+ const static bool alwaysVerbose = !qgetenv("QTC_DEBUGGER_PYTHON_VERBOSE").isEmpty();
+ cmd.arg("passexeptions", alwaysVerbose);
+ cmd.arg("fancy", debuggerCore()->boolSetting(UseDebuggingHelpers));
+ cmd.arg("autoderef", debuggerCore()->boolSetting(AutoDerefPointers));
+ cmd.arg("dyntype", debuggerCore()->boolSetting(UseDynamicType));
+ //cmd.arg("partial", ??)
+ //cmd.arg("tooltipOnly", ??)
+ //cmd.arg("resultvarname", m_resultVarName);
+
+ runCommand(cmd);
}
void LldbEngine::handleLldbError(QProcess::ProcessError error)
@@ -1047,6 +1107,30 @@ const LldbEngine::Command &LldbEngine::Command::argHelper(const char *name, cons
return *this;
}
+QByteArray LldbEngine::Command::toData(const QList<QByteArray> &value)
+{
+ QByteArray res;
+ foreach (const QByteArray &item, value) {
+ if (!res.isEmpty())
+ res.append(',');
+ res += item;
+ }
+ return '[' + res + ']';
+}
+
+QByteArray LldbEngine::Command::toData(const QHash<QByteArray, QByteArray> &value)
+{
+ QByteArray res;
+ QHashIterator<QByteArray, QByteArray> it(value);
+ while (it.hasNext()) {
+ it.next();
+ if (!res.isEmpty())
+ res.append(',');
+ res += '\'' + it.key() + "':" + it.value();
+ }
+ return '{' + res + '}';
+}
+
const LldbEngine::Command &LldbEngine::Command::arg(const char *name, int value) const
{
return argHelper(name, QByteArray::number(value));
diff --git a/src/plugins/debugger/lldb/lldbengine.h b/src/plugins/debugger/lldb/lldbengine.h
index 71ff6681790..818ee91ca64 100644
--- a/src/plugins/debugger/lldb/lldbengine.h
+++ b/src/plugins/debugger/lldb/lldbengine.h
@@ -78,6 +78,9 @@ private:
const Command &beginGroup(const char *name = 0) const;
void endGroup() const;
+ static QByteArray toData(const QList<QByteArray> &value);
+ static QByteArray toData(const QHash<QByteArray, QByteArray> &value);
+
QByteArray function;
mutable QByteArray args;
private:
diff --git a/src/plugins/debugger/loadcoredialog.cpp b/src/plugins/debugger/loadcoredialog.cpp
index 283d490b957..8d4a4879da5 100644
--- a/src/plugins/debugger/loadcoredialog.cpp
+++ b/src/plugins/debugger/loadcoredialog.cpp
@@ -289,6 +289,7 @@ int AttachCoreDialog::exec()
{
connect(d->selectRemoteCoreButton, SIGNAL(clicked()), SLOT(selectRemoteCoreFile()));
connect(d->remoteCoreFileName, SIGNAL(textChanged(QString)), SLOT(changed()));
+ connect(d->localExecFileName, SIGNAL(changed(QString)), SLOT(changed()));
connect(d->localCoreFileName, SIGNAL(changed(QString)), SLOT(changed()));
connect(d->forceLocalCheckBox, SIGNAL(stateChanged(int)), SLOT(changed()));
connect(d->kitChooser, SIGNAL(activated(int)), SLOT(changed()));
diff --git a/src/plugins/debugger/procinterrupt.cpp b/src/plugins/debugger/procinterrupt.cpp
index e93b3260146..0ad32373af7 100644
--- a/src/plugins/debugger/procinterrupt.cpp
+++ b/src/plugins/debugger/procinterrupt.cpp
@@ -103,6 +103,7 @@ bool Debugger::Internal::interruptProcess(int pID, int engineType, QString *erro
// GDB: not supported
const bool useDebugBreakApi= true;
Q_UNUSED(engineExecutableIs64Bit)
+ Q_UNUSED(engineType)
#else
// Qt-Creator compiled 32 bit:
diff --git a/src/plugins/designer/formwindoweditor.cpp b/src/plugins/designer/formwindoweditor.cpp
index 53e25edb0d5..6ed794e19cb 100644
--- a/src/plugins/designer/formwindoweditor.cpp
+++ b/src/plugins/designer/formwindoweditor.cpp
@@ -215,16 +215,6 @@ void FormWindowEditor::setDisplayName(const QString &title)
emit changed();
}
-bool FormWindowEditor::duplicateSupported() const
-{
- return false;
-}
-
-Core::IEditor *FormWindowEditor::duplicate(QWidget *)
-{
- return 0;
-}
-
QByteArray FormWindowEditor::saveState() const
{
return d->m_textEditor.saveState();
diff --git a/src/plugins/designer/formwindoweditor.h b/src/plugins/designer/formwindoweditor.h
index ffac23ea5fd..05f8f786fa7 100644
--- a/src/plugins/designer/formwindoweditor.h
+++ b/src/plugins/designer/formwindoweditor.h
@@ -74,9 +74,6 @@ public:
virtual QString displayName() const;
virtual void setDisplayName(const QString &title);
- virtual bool duplicateSupported() const;
- virtual IEditor *duplicate(QWidget *parent);
-
virtual QByteArray saveState() const;
virtual bool restoreState(const QByteArray &state);
diff --git a/src/plugins/diffeditor/diffeditoreditable.cpp b/src/plugins/diffeditor/diffeditoreditable.cpp
index c1018ae14bb..50f1f0f2e76 100644
--- a/src/plugins/diffeditor/diffeditoreditable.cpp
+++ b/src/plugins/diffeditor/diffeditoreditable.cpp
@@ -98,17 +98,6 @@ void DiffEditorEditable::setDisplayName(const QString &title)
emit changed();
}
-bool DiffEditorEditable::duplicateSupported() const
-{
- return false;
-}
-
-Core::IEditor *DiffEditorEditable::duplicate(QWidget *parent)
-{
- Q_UNUSED(parent)
- return 0;
-}
-
Core::Id DiffEditorEditable::id() const
{
return Constants::DIFF_EDITOR_ID;
@@ -236,15 +225,4 @@ void DiffEditorEditable::activateEntry(int index)
updateEntryToolTip();
}
-QByteArray DiffEditorEditable::saveState() const
-{
- return QByteArray();
-}
-
-bool DiffEditorEditable::restoreState(const QByteArray &state)
-{
- Q_UNUSED(state)
- return true;
-}
-
} // namespace DiffEditor
diff --git a/src/plugins/diffeditor/diffeditoreditable.h b/src/plugins/diffeditor/diffeditoreditable.h
index 859a543e86a..8a0aff264e2 100644
--- a/src/plugins/diffeditor/diffeditoreditable.h
+++ b/src/plugins/diffeditor/diffeditoreditable.h
@@ -65,16 +65,12 @@ public:
Core::IDocument *document();
QString displayName() const;
void setDisplayName(const QString &title);
- bool duplicateSupported() const;
- Core::IEditor *duplicate(QWidget *parent);
Core::Id id() const;
bool isTemporary() const { return true; }
DiffEditorWidget *editorWidget() const { return m_editorWidget; }
QWidget *toolBar();
- QByteArray saveState() const;
- bool restoreState(const QByteArray &state);
public slots:
void activateEntry(int index);
diff --git a/src/plugins/diffeditor/diffeditorwidget.cpp b/src/plugins/diffeditor/diffeditorwidget.cpp
index 7d9bba20014..c2579fdec8e 100644
--- a/src/plugins/diffeditor/diffeditorwidget.cpp
+++ b/src/plugins/diffeditor/diffeditorwidget.cpp
@@ -29,7 +29,6 @@
#include "diffeditorwidget.h"
#include <QPlainTextEdit>
-#include <QSplitter>
#include <QVBoxLayout>
#include <QPlainTextDocumentLayout>
#include <QTextBlock>
@@ -45,6 +44,8 @@
#include <texteditor/basetextdocument.h>
#include <texteditor/texteditorsettings.h>
+#include <coreplugin/minisplitter.h>
+
static const int BASE_LEVEL = 0;
static const int FILE_LEVEL = 1;
static const int CHUNK_LEVEL = 2;
@@ -100,11 +101,9 @@ class DiffViewEditorEditable : public BaseTextEditor
Q_OBJECT
public:
DiffViewEditorEditable(BaseTextEditorWidget *editorWidget) : BaseTextEditor(editorWidget) {}
- virtual Core::Id id() const { return "DiffViewEditor"; }
- virtual bool duplicateSupported() const { return false; }
- virtual IEditor *duplicate(QWidget *parent) { Q_UNUSED(parent) return 0; }
- virtual bool isTemporary() const { return false; }
+ Core::Id id() const { return "DiffViewEditor"; }
+ bool isTemporary() const { return false; }
};
@@ -529,6 +528,8 @@ DiffEditorWidget::DiffEditorWidget(QWidget *parent)
m_leftEditor->setReadOnly(true);
m_leftEditor->setHighlightCurrentLine(false);
m_leftEditor->setWordWrapMode(QTextOption::NoWrap);
+ connect(settings, SIGNAL(fontSettingsChanged(TextEditor::FontSettings)),
+ m_leftEditor, SLOT(setFontSettings(TextEditor::FontSettings)));
m_leftEditor->setFontSettings(settings->fontSettings());
m_leftEditor->setCodeStyle(settings->codeStyle());
@@ -537,6 +538,8 @@ DiffEditorWidget::DiffEditorWidget(QWidget *parent)
m_rightEditor->setReadOnly(true);
m_rightEditor->setHighlightCurrentLine(false);
m_rightEditor->setWordWrapMode(QTextOption::NoWrap);
+ connect(settings, SIGNAL(fontSettingsChanged(TextEditor::FontSettings)),
+ m_rightEditor, SLOT(setFontSettings(TextEditor::FontSettings)));
m_rightEditor->setFontSettings(settings->fontSettings());
m_rightEditor->setCodeStyle(settings->codeStyle());
@@ -570,7 +573,7 @@ DiffEditorWidget::DiffEditorWidget(QWidget *parent)
connect(m_rightEditor->document()->documentLayout(), SIGNAL(documentSizeChanged(QSizeF)),
this, SLOT(rightDocumentSizeChanged()));
- m_splitter = new QSplitter(this);
+ m_splitter = new Core::MiniSplitter(this);
m_splitter->addWidget(m_leftEditor);
m_splitter->addWidget(m_rightEditor);
QVBoxLayout *l = new QVBoxLayout(this);
diff --git a/src/plugins/genericprojectmanager/genericprojectmanager.cpp b/src/plugins/genericprojectmanager/genericprojectmanager.cpp
index 329eb9f682d..2ae768efa4f 100644
--- a/src/plugins/genericprojectmanager/genericprojectmanager.cpp
+++ b/src/plugins/genericprojectmanager/genericprojectmanager.cpp
@@ -51,21 +51,14 @@ QString Manager::mimeType() const
ProjectExplorer::Project *Manager::openProject(const QString &fileName, QString *errorString)
{
- if (!QFileInfo(fileName).isFile())
+ if (!QFileInfo(fileName).isFile()) {
+ if (errorString)
+ *errorString = tr("Failed opening project '%1': Project is not a file")
+ .arg(fileName);
return 0;
-
- ProjectExplorer::ProjectExplorerPlugin *projectExplorer = ProjectExplorer::ProjectExplorerPlugin::instance();
- foreach (ProjectExplorer::Project *pi, projectExplorer->session()->projects()) {
- if (fileName == pi->document()->fileName()) {
- if (errorString)
- *errorString = tr("Failed opening project '%1': Project already open")
- .arg(QDir::toNativeSeparators(fileName));
- return 0;
- }
}
- GenericProject *project = new GenericProject(this, fileName);
- return project;
+ return new GenericProject(this, fileName);
}
void Manager::registerProject(GenericProject *project)
diff --git a/src/plugins/git/branchdialog.cpp b/src/plugins/git/branchdialog.cpp
index 40574ef1c53..e57ff1bd0fb 100644
--- a/src/plugins/git/branchdialog.cpp
+++ b/src/plugins/git/branchdialog.cpp
@@ -189,14 +189,9 @@ void BranchDialog::checkout()
if (branchCheckoutDialog.makeStashOfCurrentBranch()
|| branchCheckoutDialog.moveLocalChangesToNextBranch()) {
- GitClient::StashGuard stashGuard(m_repository,
- currentBranch + QLatin1String("-AutoStash"),
- NoPrompt);
- if (stashGuard.stashingFailed())
+ if (!gitClient->beginStashScope(m_repository, currentBranch + QLatin1String("-AutoStash"), NoPrompt))
return;
- stashGuard.preventPop();
- stashMessage = stashGuard.stashMessage();
-
+ stashMessage = gitClient->stashInfo(m_repository).stashMessage();
} else if (branchCheckoutDialog.discardLocalChanges()) {
gitClient->synchronousReset(m_repository);
}
@@ -295,9 +290,9 @@ void BranchDialog::merge()
QTC_CHECK(idx != m_model->currentBranch()); // otherwise the button would not be enabled!
const QString branch = m_model->branchName(idx);
- GitClient::StashGuard stashGuard(m_repository, QLatin1String("merge"), AllowUnstashed);
- if (!GitPlugin::instance()->gitClient()->synchronousMerge(m_repository, branch))
- stashGuard.preventPop();
+ GitClient *client = GitPlugin::instance()->gitClient();
+ if (client->beginStashScope(m_repository, QLatin1String("merge"), AllowUnstashed))
+ client->synchronousMerge(m_repository, branch);
}
void BranchDialog::rebase()
@@ -307,21 +302,9 @@ void BranchDialog::rebase()
QTC_CHECK(idx != m_model->currentBranch()); // otherwise the button would not be enabled!
const QString baseBranch = m_model->branchName(idx);
- GitClient::StashGuard stashGuard(m_repository, QLatin1String("rebase"));
- if (!GitPlugin::instance()->gitClient()->synchronousRebase(m_repository, baseBranch))
- stashGuard.preventPop();
-}
-
-void BranchDialog::changeEvent(QEvent *e)
-{
- QDialog::changeEvent(e);
- switch (e->type()) {
- case QEvent::LanguageChange:
- m_ui->retranslateUi(this);
- break;
- default:
- break;
- }
+ GitClient *client = GitPlugin::instance()->gitClient();
+ if (client->beginStashScope(m_repository, QLatin1String("rebase")))
+ client->synchronousRebase(m_repository, baseBranch);
}
QModelIndex BranchDialog::selectedIndex()
diff --git a/src/plugins/git/branchdialog.h b/src/plugins/git/branchdialog.h
index 34afa8aa559..c1b38ac6195 100644
--- a/src/plugins/git/branchdialog.h
+++ b/src/plugins/git/branchdialog.h
@@ -33,7 +33,6 @@
#include <QDialog>
QT_BEGIN_NAMESPACE
-class QPushButton;
class QModelIndex;
QT_END_NAMESPACE
@@ -52,7 +51,8 @@ class BranchModel;
* branches below. Offers to checkout/delete local branches.
*
*/
-class BranchDialog : public QDialog {
+class BranchDialog : public QDialog
+{
Q_OBJECT
public:
@@ -74,16 +74,11 @@ private slots:
void merge();
void rebase();
-protected:
- void changeEvent(QEvent *e);
-
private:
QModelIndex selectedIndex();
Ui::BranchDialog *m_ui;
-
BranchModel *m_model;
-
QString m_repository;
};
diff --git a/src/plugins/git/gerrit/gerritdialog.cpp b/src/plugins/git/gerrit/gerritdialog.cpp
index 7b1f55e8cf8..78438801aed 100644
--- a/src/plugins/git/gerrit/gerritdialog.cpp
+++ b/src/plugins/git/gerrit/gerritdialog.cpp
@@ -162,9 +162,9 @@ GerritDialog::GerritDialog(const QSharedPointer<GerritParameters> &p,
detailsLayout->addLayout(repoPathLayout);
m_displayButton = addActionButton(QString(), SLOT(slotFetchDisplay()));
- m_applyButton = addActionButton(QString(), SLOT(slotFetchApply()));
+ m_cherryPickButton = addActionButton(QString(), SLOT(slotFetchCherryPick()));
m_checkoutButton = addActionButton(QString(), SLOT(slotFetchCheckout()));
- m_refreshButton = addActionButton(tr("Refresh"), SLOT(slotRefresh()));
+ m_refreshButton = addActionButton(tr("&Refresh"), SLOT(slotRefresh()));
connect(m_model, SIGNAL(refreshStateChanged(bool)),
m_refreshButton, SLOT(setDisabled(bool)));
@@ -202,13 +202,13 @@ void GerritDialog::displayRepositoryPath()
if (m_repositoryChooser->path().isEmpty())
m_repositoryChooser->setPath(m_parameters->repositoryPath);
if (m_parameters->promptPath) {
- m_displayButton->setText(tr("Diff..."));
- m_applyButton->setText(tr("Apply..."));
- m_checkoutButton->setText(tr("Checkout..."));
+ m_displayButton->setText(tr("&Diff..."));
+ m_cherryPickButton->setText(tr("Cherry &Pick..."));
+ m_checkoutButton->setText(tr("&Checkout..."));
} else {
- m_displayButton->setText(tr("Diff"));
- m_applyButton->setText(tr("Apply"));
- m_checkoutButton->setText(tr("Checkout"));
+ m_displayButton->setText(tr("&Diff"));
+ m_cherryPickButton->setText(tr("Cherry &Pick"));
+ m_checkoutButton->setText(tr("&Checkout"));
}
}
@@ -262,10 +262,10 @@ void GerritDialog::slotFetchDisplay()
emit fetchDisplay(m_model->change(item->row()));
}
-void GerritDialog::slotFetchApply()
+void GerritDialog::slotFetchCherryPick()
{
if (const QStandardItem *item = currentItem())
- emit fetchApply(m_model->change(item->row()));
+ emit fetchCherryPick(m_model->change(item->row()));
}
void GerritDialog::slotFetchCheckout()
@@ -304,7 +304,7 @@ void GerritDialog::updateButtons()
{
const bool enabled = !m_fetchRunning && m_treeView->selectionModel()->currentIndex().isValid();
m_displayButton->setEnabled(enabled);
- m_applyButton->setEnabled(enabled);
+ m_cherryPickButton->setEnabled(enabled);
m_checkoutButton->setEnabled(enabled);
}
@@ -328,7 +328,7 @@ void GerritDialog::fetchStarted(const QSharedPointer<Gerrit::Internal::GerritCha
updateButtons();
const QString toolTip = tr("Fetching \"%1\"...").arg(change->title);
m_displayButton->setToolTip(toolTip);
- m_applyButton->setToolTip(toolTip);
+ m_cherryPickButton->setToolTip(toolTip);
m_checkoutButton->setToolTip(toolTip);
}
@@ -337,7 +337,7 @@ void GerritDialog::fetchFinished()
m_fetchRunning = false;
updateButtons();
m_displayButton->setToolTip(QString());
- m_applyButton->setToolTip(QString());
+ m_cherryPickButton->setToolTip(QString());
m_checkoutButton->setToolTip(QString());
}
diff --git a/src/plugins/git/gerrit/gerritdialog.h b/src/plugins/git/gerrit/gerritdialog.h
index 2aa8d96ac1f..7d8d1275c31 100644
--- a/src/plugins/git/gerrit/gerritdialog.h
+++ b/src/plugins/git/gerrit/gerritdialog.h
@@ -83,7 +83,7 @@ public:
signals:
void fetchDisplay(const QSharedPointer<Gerrit::Internal::GerritChange> &);
- void fetchApply(const QSharedPointer<Gerrit::Internal::GerritChange> &);
+ void fetchCherryPick(const QSharedPointer<Gerrit::Internal::GerritChange> &);
void fetchCheckout(const QSharedPointer<Gerrit::Internal::GerritChange> &);
public slots:
@@ -98,7 +98,7 @@ private slots:
void slotDoubleClicked(const QModelIndex &);
void slotRefreshStateChanged(bool);
void slotFetchDisplay();
- void slotFetchApply();
+ void slotFetchCherryPick();
void slotFetchCheckout();
void slotRefresh();
void displayRepositoryPath();
@@ -121,7 +121,7 @@ private:
Utils::PathChooser *m_repositoryChooser;
QDialogButtonBox *m_buttonBox;
QPushButton *m_displayButton;
- QPushButton *m_applyButton;
+ QPushButton *m_cherryPickButton;
QPushButton *m_checkoutButton;
QPushButton *m_refreshButton;
QLabel *m_repositoryChooserLabel;
diff --git a/src/plugins/git/gerrit/gerritplugin.cpp b/src/plugins/git/gerrit/gerritplugin.cpp
index e3403ca91ee..511b92cdd8b 100644
--- a/src/plugins/git/gerrit/gerritplugin.cpp
+++ b/src/plugins/git/gerrit/gerritplugin.cpp
@@ -79,7 +79,7 @@ namespace Internal {
enum FetchMode
{
FetchDisplay,
- FetchApply,
+ FetchCherryPick,
FetchCheckout
};
@@ -202,9 +202,9 @@ void FetchContext::processFinished(int exitCode, QProcess::ExitStatus es)
m_state = WritePatchFileState;
startWritePatchFile();
break;
- case FetchApply:
+ case FetchCherryPick:
case FetchCheckout:
- if (m_fetchMode == FetchApply) {
+ if (m_fetchMode == FetchCherryPick) {
cherryPick();
} else {
Git::Internal::GitPlugin::instance()->gitClient()->synchronousCheckout(
@@ -425,8 +425,8 @@ void GerritPlugin::openView()
gd->setModal(false);
connect(gd, SIGNAL(fetchDisplay(QSharedPointer<Gerrit::Internal::GerritChange>)),
this, SLOT(fetchDisplay(QSharedPointer<Gerrit::Internal::GerritChange>)));
- connect(gd, SIGNAL(fetchApply(QSharedPointer<Gerrit::Internal::GerritChange>)),
- this, SLOT(fetchApply(QSharedPointer<Gerrit::Internal::GerritChange>)));
+ connect(gd, SIGNAL(fetchCherryPick(QSharedPointer<Gerrit::Internal::GerritChange>)),
+ this, SLOT(fetchCherryPick(QSharedPointer<Gerrit::Internal::GerritChange>)));
connect(gd, SIGNAL(fetchCheckout(QSharedPointer<Gerrit::Internal::GerritChange>)),
this, SLOT(fetchCheckout(QSharedPointer<Gerrit::Internal::GerritChange>)));
connect(this, SIGNAL(fetchStarted(QSharedPointer<Gerrit::Internal::GerritChange>)),
@@ -464,9 +464,9 @@ void GerritPlugin::fetchDisplay(const QSharedPointer<Gerrit::Internal::GerritCha
fetch(change, FetchDisplay);
}
-void GerritPlugin::fetchApply(const QSharedPointer<Gerrit::Internal::GerritChange> &change)
+void GerritPlugin::fetchCherryPick(const QSharedPointer<Gerrit::Internal::GerritChange> &change)
{
- fetch(change, FetchApply);
+ fetch(change, FetchCherryPick);
}
void GerritPlugin::fetchCheckout(const QSharedPointer<Gerrit::Internal::GerritChange> &change)
diff --git a/src/plugins/git/gerrit/gerritplugin.h b/src/plugins/git/gerrit/gerritplugin.h
index 167c9c9aa3a..aafb083dbd4 100644
--- a/src/plugins/git/gerrit/gerritplugin.h
+++ b/src/plugins/git/gerrit/gerritplugin.h
@@ -70,7 +70,7 @@ public:
public slots:
void fetchDisplay(const QSharedPointer<Gerrit::Internal::GerritChange> &change);
- void fetchApply(const QSharedPointer<Gerrit::Internal::GerritChange> &change);
+ void fetchCherryPick(const QSharedPointer<Gerrit::Internal::GerritChange> &change);
void fetchCheckout(const QSharedPointer<Gerrit::Internal::GerritChange> &change);
void updateActions(bool hasTopLevel);
diff --git a/src/plugins/git/gitclient.cpp b/src/plugins/git/gitclient.cpp
index e348c8de540..26b46292162 100644
--- a/src/plugins/git/gitclient.cpp
+++ b/src/plugins/git/gitclient.cpp
@@ -634,22 +634,28 @@ class ConflictHandler : public QObject
{
Q_OBJECT
public:
- ConflictHandler(QObject *parent,
+ ConflictHandler(VcsBase::Command *parentCommand,
const QString &workingDirectory,
const QString &command)
- : QObject(parent),
+ : QObject(parentCommand),
m_workingDirectory(workingDirectory),
m_command(command)
{
+ if (parentCommand) {
+ connect(parentCommand, SIGNAL(outputData(QByteArray)), this, SLOT(readStdOut(QByteArray)));
+ connect(parentCommand, SIGNAL(errorText(QString)), this, SLOT(readStdErr(QString)));
+ }
}
~ConflictHandler()
{
- if (m_commit.isEmpty())
+ if (m_commit.isEmpty()) {
GitPlugin::instance()->gitVersionControl()->emitRepositoryChanged(m_workingDirectory);
- else
+ GitPlugin::instance()->gitClient()->endStashScope(m_workingDirectory);
+ } else {
GitPlugin::instance()->gitClient()->handleMergeConflicts(
m_workingDirectory, m_commit, m_command);
+ }
}
void readStdOutString(const QString &data)
@@ -676,45 +682,6 @@ private:
QString m_commit;
};
-class RebaseManager : public QObject
-{
- Q_OBJECT
-
-public:
- RebaseManager(GitClient::StashGuard &stashGuard, QObject *parent) :
- QObject(parent),
- m_stashGuard(&stashGuard)
- {
- }
-
- ~RebaseManager()
- {
- delete m_stashGuard;
- }
-
-public slots:
- void readStdErr(const QString &error)
- {
- // rebase conflict is output to stdOut
- QRegExp conflictedCommit(QLatin1String("Could not apply ([^\\n]*)"));
- conflictedCommit.indexIn(error);
- m_commit = conflictedCommit.cap(1);
- }
-
- void finished(bool ok, int exitCode, const QVariant &workingDirectory)
- {
- Q_UNUSED(ok);
- if (exitCode != 0 && !m_commit.isEmpty()) {
- m_stashGuard->preventPop();
- GitPlugin::instance()->gitClient()->handleMergeConflicts(
- workingDirectory.toString(), m_commit, QLatin1String("rebase"));
- }
- }
-
-private:
- QString m_commit;
- GitClient::StashGuard *m_stashGuard;
-};
Core::IEditor *locateEditor(const char *property, const QString &entry)
{
@@ -2142,6 +2109,23 @@ QProcessEnvironment GitClient::processEnvironment() const
return environment;
}
+bool GitClient::beginStashScope(const QString &workingDirectory, const QString &keyword, StashFlag flag)
+{
+ StashInfo &stashInfo = m_stashInfo[workingDirectory];
+ return stashInfo.init(workingDirectory, keyword, flag);
+}
+
+GitClient::StashInfo &GitClient::stashInfo(const QString &workingDirectory)
+{
+ QTC_CHECK(m_stashInfo.contains(workingDirectory));
+ return m_stashInfo[workingDirectory];
+}
+
+void GitClient::endStashScope(const QString &workingDirectory)
+{
+ m_stashInfo[workingDirectory].end();
+}
+
bool GitClient::isValidRevision(const QString &revision) const
{
if (revision.length() < 1)
@@ -2339,9 +2323,7 @@ void GitClient::continuePreviousGitCommand(const QString &workingDirectory,
VcsBase::Command *command = createCommand(workingDirectory, 0, true);
command->addJob(arguments, -1);
command->execute();
- ConflictHandler *handler = new ConflictHandler(command, workingDirectory, gitCommand);
- connect(command, SIGNAL(outputData(QByteArray)), handler, SLOT(readStdOut(QByteArray)));
- connect(command, SIGNAL(errorText(QString)), handler, SLOT(readStdErr(QString)));
+ new ConflictHandler(command, workingDirectory, gitCommand);
} else {
GitPlugin::instance()->startCommit();
}
@@ -2880,7 +2862,8 @@ QString GitClient::synchronousTrackingBranch(const QString &workingDirectory, co
return remote + QLatin1Char('/') + rBranch;
}
-void GitClient::handleMergeConflicts(const QString &workingDir, const QString &commit, const QString &abortCommand)
+void GitClient::handleMergeConflicts(const QString &workingDir, const QString &commit,
+ const QString &abortCommand)
{
QString message = commit.isEmpty() ? tr("Conflicts detected")
: tr("Conflicts detected with commit %1").arg(commit);
@@ -3006,8 +2989,7 @@ bool GitClient::synchronousCherryPick(const QString &workingDirectory, const QSt
return executeAndHandleConflicts(workingDirectory, arguments, command);
}
-void GitClient::interactiveRebase(const QString &workingDirectory, const QString &commit,
- StashGuard &stashGuard, bool fixup)
+void GitClient::interactiveRebase(const QString &workingDirectory, const QString &commit, bool fixup)
{
QStringList arguments;
arguments << QLatin1String("rebase") << QLatin1String("-i");
@@ -3021,10 +3003,7 @@ void GitClient::interactiveRebase(const QString &workingDirectory, const QString
command->addJob(arguments, -1);
command->execute();
command->setCookie(workingDirectory);
- RebaseManager *rebaseManager = new RebaseManager(stashGuard, command);
- connect(command, SIGNAL(errorText(QString)), rebaseManager, SLOT(readStdErr(QString)));
- connect(command, SIGNAL(finished(bool,int,QVariant)),
- rebaseManager, SLOT(finished(bool,int,QVariant)));
+ new ConflictHandler(command, workingDirectory, QLatin1String("rebase"));
if (fixup)
m_disableEditor = false;
}
@@ -3299,50 +3278,45 @@ unsigned GitClient::synchronousGitVersion(QString *errorMessage) const
return version(major, minor, patch);
}
-GitClient::StashGuard::StashGuard(const QString &workingDirectory, const QString &keyword,
- StashFlag flag) :
- pop(true),
- workingDir(workingDirectory),
- flags(flag)
+GitClient::StashInfo::StashInfo() :
+ m_client(GitPlugin::instance()->gitClient())
{
- client = GitPlugin::instance()->gitClient();
- QString errorMessage;
- if (flags & NoPrompt)
- executeStash(keyword, &errorMessage);
- else
- stashPrompt(keyword, &errorMessage);
-
- if (stashResult == StashFailed)
- VcsBase::VcsBaseOutputWindow::instance()->appendError(errorMessage);
}
-GitClient::StashGuard::~StashGuard()
-{
- if (pop && stashResult == Stashed) {
- QString stashName;
- if (client->stashNameFromMessage(workingDir, message, &stashName))
- client->stashPop(workingDir, stashName);
- }
-}
-
-void GitClient::StashGuard::stashPrompt(const QString &keyword, QString *errorMessage)
+bool GitClient::StashInfo::init(const QString &workingDirectory, const QString &keyword,
+ StashFlag flag)
{
+ m_workingDir = workingDirectory;
+ m_flags = flag;
+ QString errorMessage;
QString statusOutput;
- switch (client->gitStatus(workingDir, StatusMode(NoUntracked | NoSubmodules),
- &statusOutput, errorMessage)) {
+ switch (m_client->gitStatus(m_workingDir, StatusMode(NoUntracked | NoSubmodules),
+ &statusOutput, &errorMessage)) {
case GitClient::StatusChanged:
+ if (m_flags & NoPrompt)
+ executeStash(keyword, &errorMessage);
+ else
+ stashPrompt(keyword, statusOutput, &errorMessage);
break;
case GitClient::StatusUnchanged:
- stashResult = StashUnchanged;
- return;
+ m_stashResult = StashUnchanged;
+ break;
case GitClient::StatusFailed:
- stashResult = StashFailed;
- return;
+ m_stashResult = StashFailed;
+ break;
}
+ if (m_stashResult == StashFailed)
+ VcsBase::VcsBaseOutputWindow::instance()->appendError(errorMessage);
+ return !stashingFailed();
+}
+
+void GitClient::StashInfo::stashPrompt(const QString &keyword, const QString &statusOutput,
+ QString *errorMessage)
+{
QMessageBox msgBox(QMessageBox::Question, tr("Uncommitted Changes Found"),
tr("What would you like to do with local changes in:")
- + QLatin1String("\n\n\"") + workingDir + QLatin1Char('\"'),
+ + QLatin1String("\n\n\"") + m_workingDir + QLatin1Char('\"'),
QMessageBox::NoButton, Core::ICore::mainWindow());
msgBox.setDetailedText(statusOutput);
@@ -3354,7 +3328,7 @@ void GitClient::StashGuard::stashPrompt(const QString &keyword, QString *errorMe
discardButton->setToolTip(tr("Discard (reset) local changes and continue."));
QPushButton *ignoreButton = 0;
- if (flags & AllowUnstashed) {
+ if (m_flags & AllowUnstashed) {
ignoreButton = msgBox.addButton(QMessageBox::Ignore);
ignoreButton->setToolTip(tr("Continue with local changes in working directory."));
}
@@ -3365,46 +3339,50 @@ void GitClient::StashGuard::stashPrompt(const QString &keyword, QString *errorMe
msgBox.exec();
if (msgBox.clickedButton() == discardButton) {
- if (!client->synchronousReset(workingDir, QStringList(), errorMessage))
- stashResult = StashFailed;
+ if (!m_client->synchronousReset(m_workingDir, QStringList(), errorMessage))
+ m_stashResult = StashFailed;
else
- stashResult = StashUnchanged;
+ m_stashResult = StashUnchanged;
} else if (msgBox.clickedButton() == ignoreButton) { // At your own risk, so.
- stashResult = NotStashed;
+ m_stashResult = NotStashed;
} else if (msgBox.clickedButton() == cancelButton) {
- stashResult = StashCanceled;
+ m_stashResult = StashCanceled;
} else if (msgBox.clickedButton() == stashButton) {
executeStash(keyword, errorMessage);
}
}
-void GitClient::StashGuard::executeStash(const QString &keyword, QString *errorMessage)
+void GitClient::StashInfo::executeStash(const QString &keyword, QString *errorMessage)
{
- message = creatorStashMessage(keyword);
- if (!client->executeSynchronousStash(workingDir, message, errorMessage))
- stashResult = StashFailed;
+ m_message = creatorStashMessage(keyword);
+ if (!m_client->executeSynchronousStash(m_workingDir, m_message, errorMessage))
+ m_stashResult = StashFailed;
else
- stashResult = Stashed;
+ m_stashResult = Stashed;
}
-void GitClient::StashGuard::preventPop()
+bool GitClient::StashInfo::stashingFailed() const
{
- pop = false;
-}
-
-bool GitClient::StashGuard::stashingFailed() const
-{
- switch (stashResult) {
+ switch (m_stashResult) {
case StashCanceled:
case StashFailed:
return true;
case NotStashed:
- return !(flags & AllowUnstashed);
+ return !(m_flags & AllowUnstashed);
default:
return false;
}
}
+void GitClient::StashInfo::end()
+{
+ if (m_stashResult == Stashed) {
+ QString stashName;
+ if (m_client->stashNameFromMessage(m_workingDir, m_message, &stashName))
+ m_client->stashPop(m_workingDir, stashName);
+ }
+ m_stashResult = NotStashed;
+}
} // namespace Internal
} // namespace Git
diff --git a/src/plugins/git/gitclient.h b/src/plugins/git/gitclient.h
index b1b81c89b0b..d71b47ac888 100644
--- a/src/plugins/git/gitclient.h
+++ b/src/plugins/git/gitclient.h
@@ -94,31 +94,28 @@ public:
enum CommandInProgress { NoCommand, Revert, CherryPick,
Rebase, Merge, RebaseMerge };
- class StashGuard
+ class StashInfo
{
public:
+ StashInfo();
enum StashResult { StashUnchanged, StashCanceled, StashFailed,
Stashed, NotStashed /* User did not want it */ };
- StashGuard(const QString &workingDirectory, const QString &keyword,
- StashFlag flag = Default);
- ~StashGuard();
-
- void preventPop();
+ bool init(const QString &workingDirectory, const QString &keyword, StashFlag flag = Default);
bool stashingFailed() const;
- StashResult result() const { return stashResult; }
- QString stashMessage() const { return message; }
+ void end();
+ StashResult result() const { return m_stashResult; }
+ QString stashMessage() const { return m_message; }
private:
- void stashPrompt(const QString &keyword, QString *errorMessage);
+ void stashPrompt(const QString &keyword, const QString &statusOutput, QString *errorMessage);
void executeStash(const QString &keyword, QString *errorMessage);
- bool pop;
- StashResult stashResult;
- QString message;
- QString workingDir;
- GitClient *client;
- StashFlag flags;
+ StashResult m_stashResult;
+ QString m_message;
+ QString m_workingDir;
+ GitClient *m_client;
+ StashFlag m_flags;
};
static const char *stashNamePrefix;
@@ -241,8 +238,7 @@ public:
const QString &topicBranch = QString());
bool synchronousRevert(const QString &workingDirectory, const QString &commit);
bool synchronousCherryPick(const QString &workingDirectory, const QString &commit);
- void interactiveRebase(const QString &workingDirectory, const QString &commit,
- StashGuard &stashGuard, bool fixup);
+ void interactiveRebase(const QString &workingDirectory, const QString &commit, bool fixup);
void synchronousAbortCommand(const QString &workingDir, const QString &abortCommand);
QString synchronousTrackingBranch(const QString &workingDirectory,
const QString &branch = QString());
@@ -302,6 +298,9 @@ public:
QProcessEnvironment processEnvironment() const;
+ bool beginStashScope(const QString &workingDirectory, const QString &keyword, StashFlag flag = Default);
+ StashInfo &stashInfo(const QString &workingDirectory);
+ void endStashScope(const QString &workingDirectory);
bool isValidRevision(const QString &revision) const;
void handleMergeConflicts(const QString &workingDir, const QString &commit, const QString &abortCommand);
@@ -386,6 +385,7 @@ private:
QSignalMapper *m_repositoryChangedSignalMapper;
GitSettings *m_settings;
QString m_gitQtcEditor;
+ QMap<QString, StashInfo> m_stashInfo;
bool m_disableEditor;
};
diff --git a/src/plugins/git/gitorious/gitorioushostwidget.cpp b/src/plugins/git/gitorious/gitorioushostwidget.cpp
index 22622f1a708..4c67c425a84 100644
--- a/src/plugins/git/gitorious/gitorioushostwidget.cpp
+++ b/src/plugins/git/gitorious/gitorioushostwidget.cpp
@@ -297,17 +297,5 @@ void GitoriousHostWidget::slotError(const QString &e)
m_errorClearTimer->start();
}
-void GitoriousHostWidget::changeEvent(QEvent *e)
-{
- QWidget::changeEvent(e);
- switch (e->type()) {
- case QEvent::LanguageChange:
- ui->retranslateUi(this);
- break;
- default:
- break;
- }
-}
-
} // namespace Internal
} // namespace Gitorious
diff --git a/src/plugins/git/gitorious/gitorioushostwidget.h b/src/plugins/git/gitorious/gitorioushostwidget.h
index c00cd07dcba..a96f564caed 100644
--- a/src/plugins/git/gitorious/gitorioushostwidget.h
+++ b/src/plugins/git/gitorious/gitorioushostwidget.h
@@ -54,8 +54,10 @@ namespace Ui {
* it receives the projects. As soon as there are projects, isValid() becomes
* true. */
-class GitoriousHostWidget : public QWidget {
+class GitoriousHostWidget : public QWidget
+{
Q_OBJECT
+
public:
GitoriousHostWidget(QWidget *parent = 0);
~GitoriousHostWidget();
@@ -72,9 +74,6 @@ signals:
public slots:
void selectRow(int);
-protected:
- void changeEvent(QEvent *e);
-
private slots:
void slotBrowse();
void slotDelete();
diff --git a/src/plugins/git/gitorious/gitoriousprojectwidget.cpp b/src/plugins/git/gitorious/gitoriousprojectwidget.cpp
index b374910f0e8..6c7d128dbbc 100644
--- a/src/plugins/git/gitorious/gitoriousprojectwidget.cpp
+++ b/src/plugins/git/gitorious/gitoriousprojectwidget.cpp
@@ -281,17 +281,5 @@ QSharedPointer<GitoriousProject> GitoriousProjectWidget::project() const
return QSharedPointer<GitoriousProject>(new GitoriousProject);
}
-void GitoriousProjectWidget::changeEvent(QEvent *e)
-{
- QWidget::changeEvent(e);
- switch (e->type()) {
- case QEvent::LanguageChange:
- ui->retranslateUi(this);
- break;
- default:
- break;
- }
-}
-
} // namespace Internal
} // namespace Gitorious
diff --git a/src/plugins/git/gitorious/gitoriousprojectwidget.h b/src/plugins/git/gitorious/gitoriousprojectwidget.h
index b9dc6422355..b55aaacf106 100644
--- a/src/plugins/git/gitorious/gitoriousprojectwidget.h
+++ b/src/plugins/git/gitorious/gitoriousprojectwidget.h
@@ -56,8 +56,10 @@ namespace Ui {
* it receives the projects. isValid() and signal validChanged are
* provided for use in a QWizardPage. Host matching happens via name as the
* hostIndex might change due to deleting hosts. */
-class GitoriousProjectWidget : public QWidget {
+class GitoriousProjectWidget : public QWidget
+{
Q_OBJECT
+
public:
explicit GitoriousProjectWidget(int hostIndex,
QWidget *parent = 0);
@@ -91,9 +93,6 @@ private slots:
void slotUpdateProjects(int hostIndex);
void slotUpdateCheckBoxChanged(int);
-protected:
- void changeEvent(QEvent *e);
-
private:
QStandardItem *itemFromIndex(const QModelIndex &idx) const;
QStandardItem *currentItem() const;
@@ -107,7 +106,7 @@ private:
bool m_valid;
};
-
} // namespace Internal
} // namespace Gitorious
+
#endif // GITORIOUSPROJECTWIDGET_H
diff --git a/src/plugins/git/gitorious/gitoriousrepositorywizardpage.cpp b/src/plugins/git/gitorious/gitoriousrepositorywizardpage.cpp
index da6ecd25ea7..d90719e5c2d 100644
--- a/src/plugins/git/gitorious/gitoriousrepositorywizardpage.cpp
+++ b/src/plugins/git/gitorious/gitoriousrepositorywizardpage.cpp
@@ -237,17 +237,5 @@ bool GitoriousRepositoryWizardPage::isComplete() const
return m_valid;
}
-void GitoriousRepositoryWizardPage::changeEvent(QEvent *e)
-{
- QWizardPage::changeEvent(e);
- switch (e->type()) {
- case QEvent::LanguageChange:
- ui->retranslateUi(this);
- break;
- default:
- break;
- }
-}
-
} // namespace Internal
} // namespace Gitorious
diff --git a/src/plugins/git/gitorious/gitoriousrepositorywizardpage.h b/src/plugins/git/gitorious/gitoriousrepositorywizardpage.h
index be6b4d39534..647887a9331 100644
--- a/src/plugins/git/gitorious/gitoriousrepositorywizardpage.h
+++ b/src/plugins/git/gitorious/gitoriousrepositorywizardpage.h
@@ -51,8 +51,10 @@ namespace Ui {
// A wizard page listing Gitorious repositories in a tree, by repository type.
-class GitoriousRepositoryWizardPage : public QWizardPage {
+class GitoriousRepositoryWizardPage : public QWizardPage
+{
Q_OBJECT
+
public:
explicit GitoriousRepositoryWizardPage(const GitoriousProjectWizardPage *projectPage,
QWidget *parent = 0);
@@ -67,9 +69,6 @@ public:
public slots:
void slotCurrentChanged(const QModelIndex &current, const QModelIndex &previous);
-protected:
- void changeEvent(QEvent *e);
-
private:
// return the repository (column 0) item.
QStandardItem *currentItem0() const;
diff --git a/src/plugins/git/gitplugin.cpp b/src/plugins/git/gitplugin.cpp
index ea8ca19f4cb..4ce7508d3dc 100644
--- a/src/plugins/git/gitplugin.cpp
+++ b/src/plugins/git/gitplugin.cpp
@@ -769,14 +769,14 @@ void GitPlugin::startRebase()
QString workingDirectory = currentState().currentDirectoryOrTopLevel();
if (workingDirectory.isEmpty() || !m_gitClient->canRebase(workingDirectory))
return;
- QScopedPointer<GitClient::StashGuard> stashGuard(
- new GitClient::StashGuard(workingDirectory, QLatin1String("Rebase-i")));
- if (stashGuard->stashingFailed())
+ if (!m_gitClient->beginStashScope(workingDirectory, QLatin1String("Rebase-i")))
return;
LogChangeDialog dialog(false);
dialog.setWindowTitle(tr("Interactive Rebase"));
if (dialog.runDialog(workingDirectory, QString(), false))
- m_gitClient->interactiveRebase(workingDirectory, dialog.commit(), *stashGuard.take(), false);
+ m_gitClient->interactiveRebase(workingDirectory, dialog.commit(), false);
+ else
+ m_gitClient->endStashScope(workingDirectory);
}
void GitPlugin::startChangeRelatedAction()
@@ -822,12 +822,10 @@ void GitPlugin::startChangeRelatedAction()
return;
}
- GitClient::StashGuard stashGuard(workingDirectory, command);
- if (stashGuard.stashingFailed())
+ if (!m_gitClient->beginStashScope(workingDirectory, command))
return;
- if (!(m_gitClient->*commandFunction)(workingDirectory, change))
- stashGuard.preventPop();
+ (m_gitClient->*commandFunction)(workingDirectory, change);
}
void GitPlugin::stageFile()
@@ -1035,12 +1033,9 @@ bool GitPlugin::submitEditorAboutToClose()
if (closeEditor) {
cleanCommitMessageFile();
if (commitType == FixupCommit) {
- QScopedPointer<GitClient::StashGuard> stashGuard(
- new GitClient::StashGuard(m_submitRepository, QLatin1String("Rebase-fixup"),
- NoPrompt));
- if (stashGuard->stashingFailed())
+ if (!m_gitClient->beginStashScope(m_submitRepository, QLatin1String("Rebase-fixup"), NoPrompt))
return false;
- m_gitClient->interactiveRebase(m_submitRepository, amendSHA1, *stashGuard.take(), true);
+ m_gitClient->interactiveRebase(m_submitRepository, amendSHA1, true);
} else {
m_gitClient->continueCommandIfNeeded(m_submitRepository);
}
@@ -1069,12 +1064,9 @@ void GitPlugin::pull()
}
}
- GitClient::StashGuard stashGuard(topLevel, QLatin1String("Pull"),
- rebase ? Default : AllowUnstashed);
- if (stashGuard.stashingFailed())
+ if (!m_gitClient->beginStashScope(topLevel, QLatin1String("Pull"), rebase ? Default : AllowUnstashed))
return;
- if (!m_gitClient->synchronousPull(topLevel, rebase))
- stashGuard.preventPop();
+ m_gitClient->synchronousPull(topLevel, rebase);
}
void GitPlugin::push()
@@ -1222,8 +1214,7 @@ void GitPlugin::promptApplyPatch()
void GitPlugin::applyPatch(const QString &workingDirectory, QString file)
{
// Ensure user has been notified about pending changes
- GitClient::StashGuard stashGuard(workingDirectory, QLatin1String("Apply-Patch"), AllowUnstashed);
- if (stashGuard.stashingFailed())
+ if (!m_gitClient->beginStashScope(workingDirectory, QLatin1String("Apply-Patch"), AllowUnstashed))
return;
// Prompt for file
if (file.isEmpty()) {
@@ -1231,8 +1222,10 @@ void GitPlugin::applyPatch(const QString &workingDirectory, QString file)
file = QFileDialog::getOpenFileName(Core::ICore::mainWindow(),
tr("Choose Patch"),
QString(), filter);
- if (file.isEmpty())
+ if (file.isEmpty()) {
+ m_gitClient->endStashScope(workingDirectory);
return;
+ }
}
// Run!
VcsBase::VcsBaseOutputWindow *outwin = VcsBase::VcsBaseOutputWindow::instance();
@@ -1245,6 +1238,7 @@ void GitPlugin::applyPatch(const QString &workingDirectory, QString file)
} else {
outwin->appendError(errorMessage);
}
+ m_gitClient->endStashScope(workingDirectory);
}
void GitPlugin::stash()
@@ -1253,11 +1247,10 @@ void GitPlugin::stash()
const VcsBase::VcsBasePluginState state = currentState();
QTC_ASSERT(state.hasTopLevel(), return);
- GitClient::StashGuard stashGuard(state.topLevel(), QString(), NoPrompt);
- if (stashGuard.stashingFailed())
+ QString topLevel = state.topLevel();
+ if (!m_gitClient->beginStashScope(topLevel, QString(), NoPrompt))
return;
- stashGuard.preventPop();
- if (stashGuard.result() == GitClient::StashGuard::Stashed && m_stashDialog)
+ if (m_gitClient->stashInfo(topLevel).result() == GitClient::StashInfo::Stashed && m_stashDialog)
m_stashDialog->refresh(state.topLevel(), true);
}
diff --git a/src/plugins/git/remotedialog.cpp b/src/plugins/git/remotedialog.cpp
index 4488719f73f..a027d62bf2d 100644
--- a/src/plugins/git/remotedialog.cpp
+++ b/src/plugins/git/remotedialog.cpp
@@ -198,17 +198,5 @@ void RemoteDialog::updateButtonState()
m_ui->removeButton->setEnabled(haveSelection);
}
-void RemoteDialog::changeEvent(QEvent *e)
-{
- QDialog::changeEvent(e);
- switch (e->type()) {
- case QEvent::LanguageChange:
- m_ui->retranslateUi(this);
- break;
- default:
- break;
- }
-}
-
} // namespace Internal
} // namespace Git
diff --git a/src/plugins/git/remotedialog.h b/src/plugins/git/remotedialog.h
index 92ecdbdc94a..7a8d00900b9 100644
--- a/src/plugins/git/remotedialog.h
+++ b/src/plugins/git/remotedialog.h
@@ -68,7 +68,8 @@ private:
// RemoteDialog:
// --------------------------------------------------------------------------
-class RemoteDialog : public QDialog {
+class RemoteDialog : public QDialog
+{
Q_OBJECT
public:
@@ -86,11 +87,6 @@ public slots:
void updateButtonState();
-private slots:
-
-protected:
- void changeEvent(QEvent *e);
-
private:
Ui::RemoteDialog *m_ui;
diff --git a/src/plugins/git/stashdialog.cpp b/src/plugins/git/stashdialog.cpp
index 1447230d39b..137a6ed9211 100644
--- a/src/plugins/git/stashdialog.cpp
+++ b/src/plugins/git/stashdialog.cpp
@@ -150,18 +150,6 @@ StashDialog::~StashDialog()
delete ui;
}
-void StashDialog::changeEvent(QEvent *e)
-{
- QDialog::changeEvent(e);
- switch (e->type()) {
- case QEvent::LanguageChange:
- ui->retranslateUi(this);
- break;
- default:
- break;
- }
-}
-
QString StashDialog::msgRepositoryLabel(const QString &repository)
{
return repository.isEmpty() ?
diff --git a/src/plugins/git/stashdialog.h b/src/plugins/git/stashdialog.h
index 37bfc77592f..15f24fc04b4 100644
--- a/src/plugins/git/stashdialog.h
+++ b/src/plugins/git/stashdialog.h
@@ -51,8 +51,10 @@ class StashModel;
* (in case restore fails due to conflicts) on current and
* delete on selection/all. */
-class StashDialog : public QDialog {
+class StashDialog : public QDialog
+{
Q_OBJECT
+
public:
explicit StashDialog(QWidget *parent = 0);
~StashDialog();
@@ -62,9 +64,6 @@ public:
public slots:
void refresh(const QString &repository, bool force);
-protected:
- void changeEvent(QEvent *e);
-
private slots:
void deleteAll();
void deleteSelection();
diff --git a/src/plugins/glsleditor/glsleditoreditable.cpp b/src/plugins/glsleditor/glsleditoreditable.cpp
index f999ca68258..c5586110f0d 100644
--- a/src/plugins/glsleditor/glsleditoreditable.cpp
+++ b/src/plugins/glsleditor/glsleditoreditable.cpp
@@ -50,10 +50,5 @@ GLSLEditorEditable::GLSLEditorEditable(GLSLTextEditorWidget *editor)
TextEditor::Constants::C_TEXTEDITOR));
}
-Core::Id GLSLEditorEditable::preferredModeType() const
-{
- return Core::Id();
-}
-
} // namespace Internal
} // namespace GLSLEditor
diff --git a/src/plugins/glsleditor/glsleditoreditable.h b/src/plugins/glsleditor/glsleditoreditable.h
index 9ef2ec797b4..3e6ce0a5292 100644
--- a/src/plugins/glsleditor/glsleditoreditable.h
+++ b/src/plugins/glsleditor/glsleditoreditable.h
@@ -49,7 +49,6 @@ public:
Core::Id id() const;
bool isTemporary() const { return false; }
bool open(QString *errorString, const QString &fileName, const QString &realFileName);
- Core::Id preferredModeType() const;
};
} // namespace Internal
diff --git a/src/plugins/imageviewer/images/pause-small.png b/src/plugins/imageviewer/images/pause-small.png
index 114d89b12bd..66d1f46d3db 100644
--- a/src/plugins/imageviewer/images/pause-small.png
+++ b/src/plugins/imageviewer/images/pause-small.png
Binary files differ
diff --git a/src/plugins/imageviewer/images/play-small.png b/src/plugins/imageviewer/images/play-small.png
index 011598a746f..3a7a99fb247 100644
--- a/src/plugins/imageviewer/images/play-small.png
+++ b/src/plugins/imageviewer/images/play-small.png
Binary files differ
diff --git a/src/plugins/imageviewer/imageviewer.cpp b/src/plugins/imageviewer/imageviewer.cpp
index 6ff625f3a64..58a4e77e8a2 100644
--- a/src/plugins/imageviewer/imageviewer.cpp
+++ b/src/plugins/imageviewer/imageviewer.cpp
@@ -163,38 +163,6 @@ void ImageViewer::setDisplayName(const QString &title)
emit changed();
}
-bool ImageViewer::duplicateSupported() const
-{
- return false;
-}
-
-Core::IEditor *ImageViewer::duplicate(QWidget *parent)
-{
- Q_UNUSED(parent);
- return 0;
-}
-
-QByteArray ImageViewer::saveState() const
-{
- return QByteArray();
-}
-
-bool ImageViewer::restoreState(const QByteArray &state)
-{
- Q_UNUSED(state);
- return true;
-}
-
-int ImageViewer::currentLine() const
-{
- return 0;
-}
-
-int ImageViewer::currentColumn() const
-{
- return 0;
-}
-
bool ImageViewer::isTemporary() const
{
return false;
diff --git a/src/plugins/imageviewer/imageviewer.h b/src/plugins/imageviewer/imageviewer.h
index f2a4cdd7fd4..b5a20689217 100644
--- a/src/plugins/imageviewer/imageviewer.h
+++ b/src/plugins/imageviewer/imageviewer.h
@@ -60,18 +60,7 @@ public:
Core::Id id() const;
QString displayName() const;
void setDisplayName(const QString &title);
-
- bool duplicateSupported() const;
- IEditor *duplicate(QWidget *parent);
-
- QByteArray saveState() const;
- bool restoreState(const QByteArray &state);
-
- int currentLine() const;
- int currentColumn() const;
-
bool isTemporary() const;
-
QWidget *toolBar();
public slots:
diff --git a/src/plugins/imageviewer/imageviewerfile.cpp b/src/plugins/imageviewer/imageviewerfile.cpp
index 9334fc349a0..0f3850f8961 100644
--- a/src/plugins/imageviewer/imageviewerfile.cpp
+++ b/src/plugins/imageviewer/imageviewerfile.cpp
@@ -31,35 +31,15 @@
#include "imageviewerfile.h"
#include "imageviewer.h"
-#include <coreplugin/icore.h>
-#include <coreplugin/id.h>
-
-#include <utils/reloadpromptutils.h>
-
-#include <QMap>
#include <QFileInfo>
-#include <QDebug>
namespace ImageViewer {
namespace Internal {
-struct ImageViewerFilePrivate
-{
- QString fileName;
- QString mimeType;
- ImageViewer *editor;
-};
-
ImageViewerFile::ImageViewerFile(ImageViewer *parent)
- : Core::IDocument(parent),
- d(new ImageViewerFilePrivate)
-{
- d->editor = parent;
-}
-
-ImageViewerFile::~ImageViewerFile()
+ : Core::IDocument(parent)
{
- delete d;
+ m_editor = parent;
}
Core::IDocument::ReloadBehavior ImageViewerFile::reloadBehavior(ChangeTrigger state, ChangeType type) const
@@ -81,7 +61,7 @@ bool ImageViewerFile::reload(QString *errorString,
emit changed();
return true;
}
- return d->editor->open(errorString, d->fileName, d->fileName);
+ return m_editor->open(errorString, m_fileName, m_fileName);
}
bool ImageViewerFile::save(QString *errorString, const QString &fileName, bool autoSave)
@@ -94,16 +74,16 @@ bool ImageViewerFile::save(QString *errorString, const QString &fileName, bool a
void ImageViewerFile::rename(const QString &newName)
{
- const QString oldFilename = d->fileName;
- d->fileName = newName;
- d->editor->setDisplayName(QFileInfo(d->fileName).fileName());
+ const QString oldFilename = m_fileName;
+ m_fileName = newName;
+ m_editor->setDisplayName(QFileInfo(m_fileName).fileName());
emit fileNameChanged(oldFilename, newName);
emit changed();
}
QString ImageViewerFile::fileName() const
{
- return d->fileName;
+ return m_fileName;
}
QString ImageViewerFile::defaultPath() const
@@ -118,7 +98,7 @@ QString ImageViewerFile::suggestedFileName() const
QString ImageViewerFile::mimeType() const
{
- return d->mimeType;
+ return m_mimeType;
}
bool ImageViewerFile::isModified() const
@@ -133,13 +113,13 @@ bool ImageViewerFile::isSaveAsAllowed() const
void ImageViewerFile::setMimetype(const QString &mimetype)
{
- d->mimeType = mimetype;
+ m_mimeType = mimetype;
emit changed();
}
void ImageViewerFile::setFileName(const QString &filename)
{
- d->fileName = filename;
+ m_fileName = filename;
emit changed();
}
diff --git a/src/plugins/imageviewer/imageviewerfile.h b/src/plugins/imageviewer/imageviewerfile.h
index e762f2a10a4..ab913de68ae 100644
--- a/src/plugins/imageviewer/imageviewerfile.h
+++ b/src/plugins/imageviewer/imageviewerfile.h
@@ -33,8 +33,6 @@
#include <coreplugin/idocument.h>
-#include <QScopedPointer>
-
namespace ImageViewer {
namespace Internal {
@@ -43,9 +41,9 @@ class ImageViewer;
class ImageViewerFile : public Core::IDocument
{
Q_OBJECT
+
public:
explicit ImageViewerFile(ImageViewer *parent = 0);
- ~ImageViewerFile();
bool save(QString *errorString, const QString &fileName, bool autoSave);
void rename(const QString &newName);
@@ -58,14 +56,16 @@ public:
bool isModified() const;
bool isSaveAsAllowed() const;
- virtual ReloadBehavior reloadBehavior(ChangeTrigger state, ChangeType type) const;
+ ReloadBehavior reloadBehavior(ChangeTrigger state, ChangeType type) const;
bool reload(QString *errorString, ReloadFlag flag, ChangeType type);
void setMimetype(const QString &mimetype);
void setFileName(const QString &filename);
private:
- struct ImageViewerFilePrivate *d;
+ QString m_fileName;
+ QString m_mimeType;
+ ImageViewer *m_editor;
};
} // namespace Internal
diff --git a/src/plugins/mercurial/revertdialog.cpp b/src/plugins/mercurial/revertdialog.cpp
index 2137140361d..16b5dc06f93 100644
--- a/src/plugins/mercurial/revertdialog.cpp
+++ b/src/plugins/mercurial/revertdialog.cpp
@@ -43,18 +43,6 @@ RevertDialog::~RevertDialog()
delete m_ui;
}
-void RevertDialog::changeEvent(QEvent *e)
-{
- QDialog::changeEvent(e);
- switch (e->type()) {
- case QEvent::LanguageChange:
- m_ui->retranslateUi(this);
- break;
- default:
- break;
- }
-}
-
QString RevertDialog::revision() const
{
return m_ui->revisionLineEdit->text();
diff --git a/src/plugins/mercurial/revertdialog.h b/src/plugins/mercurial/revertdialog.h
index 77a5d0a1329..ce9520b57dc 100644
--- a/src/plugins/mercurial/revertdialog.h
+++ b/src/plugins/mercurial/revertdialog.h
@@ -47,9 +47,6 @@ public:
QString revision() const;
-protected:
- void changeEvent(QEvent *e);
-
private:
Ui::RevertDialog *m_ui;
};
diff --git a/src/plugins/mercurial/srcdestdialog.cpp b/src/plugins/mercurial/srcdestdialog.cpp
index 3d80f7215b2..7ca90565457 100644
--- a/src/plugins/mercurial/srcdestdialog.cpp
+++ b/src/plugins/mercurial/srcdestdialog.cpp
@@ -59,15 +59,3 @@ QString SrcDestDialog::getRepositoryString() const
return m_ui->localPathChooser->path();
return m_ui->urlLineEdit->text();
}
-
-void SrcDestDialog::changeEvent(QEvent *e)
-{
- QDialog::changeEvent(e);
- switch (e->type()) {
- case QEvent::LanguageChange:
- m_ui->retranslateUi(this);
- break;
- default:
- break;
- }
-}
diff --git a/src/plugins/mercurial/srcdestdialog.h b/src/plugins/mercurial/srcdestdialog.h
index a9e70c14a35..ffe42d04229 100644
--- a/src/plugins/mercurial/srcdestdialog.h
+++ b/src/plugins/mercurial/srcdestdialog.h
@@ -45,12 +45,10 @@ class SrcDestDialog : public QDialog
public:
SrcDestDialog(QWidget *parent = 0);
~SrcDestDialog();
+
void setPathChooserKind(Utils::PathChooser::Kind kind);
QString getRepositoryString() const;
-protected:
- void changeEvent(QEvent *e);
-
private:
Ui::SrcDestDialog *m_ui;
};
diff --git a/src/plugins/projectexplorer/customwizard/customwizardparameters.cpp b/src/plugins/projectexplorer/customwizard/customwizardparameters.cpp
index d44da8dcd86..98badd342cf 100644
--- a/src/plugins/projectexplorer/customwizard/customwizardparameters.cpp
+++ b/src/plugins/projectexplorer/customwizard/customwizardparameters.cpp
@@ -894,7 +894,7 @@ bool replaceFieldHelper(ValueStringTransformation transform,
if (!replacement.isEmpty())
nonEmptyReplacements = true;
// Apply transformation to empty values as well.
- s->replace(pos, nextPos - pos, transform(replacement));
+ s->replace(pos, nextPos - pos + 1, transform(replacement));
nonEmptyReplacements = true;
pos += replacement.size();
}
diff --git a/src/plugins/projectexplorer/doubletabwidget.cpp b/src/plugins/projectexplorer/doubletabwidget.cpp
index 0e467de3e09..08bd1eb0dc0 100644
--- a/src/plugins/projectexplorer/doubletabwidget.cpp
+++ b/src/plugins/projectexplorer/doubletabwidget.cpp
@@ -503,18 +503,6 @@ void DoubleTabWidget::paintEvent(QPaintEvent *event)
}
}
-void DoubleTabWidget::changeEvent(QEvent *e)
-{
- QWidget::changeEvent(e);
- switch (e->type()) {
- case QEvent::LanguageChange:
- ui->retranslateUi(this);
- break;
- default:
- break;
- }
-}
-
bool DoubleTabWidget::event(QEvent *event)
{
if (event->type() == QEvent::ToolTip) {
diff --git a/src/plugins/projectexplorer/doubletabwidget.h b/src/plugins/projectexplorer/doubletabwidget.h
index 7d60b3d10c9..a7ce2d9da67 100644
--- a/src/plugins/projectexplorer/doubletabwidget.h
+++ b/src/plugins/projectexplorer/doubletabwidget.h
@@ -67,7 +67,6 @@ signals:
protected:
void paintEvent(QPaintEvent *event);
void mousePressEvent(QMouseEvent *event);
- void changeEvent(QEvent *e);
bool event(QEvent *event);
QSize minimumSizeHint() const;
diff --git a/src/plugins/projectexplorer/iprojectmanager.h b/src/plugins/projectexplorer/iprojectmanager.h
index a85108a7827..3b7cd301b9c 100644
--- a/src/plugins/projectexplorer/iprojectmanager.h
+++ b/src/plugins/projectexplorer/iprojectmanager.h
@@ -50,6 +50,7 @@ public:
IProjectManager() {}
virtual QString mimeType() const = 0;
+ // fileName is a canonical path!
virtual Project *openProject(const QString &fileName, QString *errorString) = 0;
};
diff --git a/src/plugins/projectexplorer/projectexplorer.cpp b/src/plugins/projectexplorer/projectexplorer.cpp
index 29ed06b897c..ece65886ff3 100644
--- a/src/plugins/projectexplorer/projectexplorer.cpp
+++ b/src/plugins/projectexplorer/projectexplorer.cpp
@@ -1334,6 +1334,16 @@ static inline QList<IProjectManager*> allProjectManagers()
return ExtensionSystem::PluginManager::getObjects<IProjectManager>();
}
+static void appendError(QString *errorString, const QString &error)
+{
+ if (!errorString || error.isEmpty())
+ return;
+
+ if (!errorString->isEmpty())
+ errorString->append(QLatin1Char('\n'));
+ errorString->append(error);
+}
+
QList<Project *> ProjectExplorerPlugin::openProjects(const QStringList &fileNames, QString *errorString)
{
if (debug)
@@ -1343,11 +1353,29 @@ QList<Project *> ProjectExplorerPlugin::openProjects(const QStringList &fileName
QList<Project*> openedPro;
foreach (const QString &fileName, fileNames) {
+ QTC_ASSERT(!fileName.isEmpty(), continue);
+
+ QFileInfo fi = QFileInfo(fileName);
+ QString canonicalFilePath = fi.canonicalFilePath();
+ bool found = false;
+ foreach (ProjectExplorer::Project *pi, session()->projects()) {
+ if (canonicalFilePath == pi->document()->fileName()) {
+ found = true;
+ break;
+ }
+ }
+ if (found) {
+ appendError(errorString, tr("Failed opening project '%1': Project already open")
+ .arg(QDir::toNativeSeparators(fileName)));
+ d->m_session->reportProjectLoadingProgress();
+ continue;
+ }
+
if (const Core::MimeType mt = Core::ICore::mimeDatabase()->findByFile(QFileInfo(fileName))) {
foreach (IProjectManager *manager, projectManagers) {
if (manager->mimeType() == mt.type()) {
QString tmp;
- if (Project *pro = manager->openProject(fileName, &tmp)) {
+ if (Project *pro = manager->openProject(canonicalFilePath, &tmp)) {
if (pro->restoreSettings()) {
connect(pro, SIGNAL(fileListChanged()), this, SIGNAL(fileListChanged()));
d->m_session->addProject(pro);
@@ -1359,16 +1387,13 @@ QList<Project *> ProjectExplorerPlugin::openProjects(const QStringList &fileName
delete pro;
}
}
- if (errorString) {
- if (!errorString->isEmpty() && !tmp.isEmpty())
- errorString->append(QLatin1Char('\n'));
- errorString->append(tmp);
- }
- d->m_session->reportProjectLoadingProgress();
+ if (!tmp.isEmpty())
+ appendError(errorString, tmp);
break;
}
}
}
+ d->m_session->reportProjectLoadingProgress();
}
updateActions();
diff --git a/src/plugins/projectexplorer/projectexplorer.qbs b/src/plugins/projectexplorer/projectexplorer.qbs
index dd76e03c3f5..3b9252f26d4 100644
--- a/src/plugins/projectexplorer/projectexplorer.qbs
+++ b/src/plugins/projectexplorer/projectexplorer.qbs
@@ -354,7 +354,7 @@ QtcPlugin {
files: ["outputparser_test.h", "outputparser_test.cpp"]
}
- ProductModule {
+ Export {
Depends { name: "Qt.network" }
}
}
diff --git a/src/plugins/projectexplorer/projectwelcomepage.cpp b/src/plugins/projectexplorer/projectwelcomepage.cpp
index 7dc9d497773..3faa2c603c1 100644
--- a/src/plugins/projectexplorer/projectwelcomepage.cpp
+++ b/src/plugins/projectexplorer/projectwelcomepage.cpp
@@ -139,6 +139,8 @@ void SessionModel::cloneSession(const QString &session)
void SessionModel::deleteSession(const QString &session)
{
+ if (!m_manager->confirmSessionDelete(session))
+ return;
beginResetModel();
m_manager->deleteSession(session);
endResetModel();
diff --git a/src/plugins/projectexplorer/projectwizardpage.cpp b/src/plugins/projectexplorer/projectwizardpage.cpp
index c6c4b3edacf..d6d4df06311 100644
--- a/src/plugins/projectexplorer/projectwizardpage.cpp
+++ b/src/plugins/projectexplorer/projectwizardpage.cpp
@@ -127,18 +127,6 @@ void ProjectWizardPage::setVersionControlIndex(int idx)
m_ui->addToVersionControlComboBox->setCurrentIndex(idx);
}
-void ProjectWizardPage::changeEvent(QEvent *e)
-{
- QWizardPage::changeEvent(e);
- switch (e->type()) {
- case QEvent::LanguageChange:
- m_ui->retranslateUi(this);
- break;
- default:
- break;
- }
-}
-
// Alphabetically, and files in sub-directories first
static bool generatedFilePathLessThan(const QString &filePath1, const QString &filePath2)
{
diff --git a/src/plugins/projectexplorer/projectwizardpage.h b/src/plugins/projectexplorer/projectwizardpage.h
index f10224753e8..657dc4fa47e 100644
--- a/src/plugins/projectexplorer/projectwizardpage.h
+++ b/src/plugins/projectexplorer/projectwizardpage.h
@@ -69,15 +69,12 @@ public:
void setProjectComoBoxVisible(bool visible);
-protected:
- virtual void changeEvent(QEvent *e);
-
private slots:
void slotProjectChanged(int);
void slotManageVcs();
private:
- inline void setProjectToolTip(const QString &);
+ void setProjectToolTip(const QString &);
Ui::WizardPage *m_ui;
QStringList m_projectToolTips;
diff --git a/src/plugins/projectexplorer/session.cpp b/src/plugins/projectexplorer/session.cpp
index 0116f3578b1..445db5f031a 100644
--- a/src/plugins/projectexplorer/session.cpp
+++ b/src/plugins/projectexplorer/session.cpp
@@ -673,6 +673,18 @@ bool SessionManager::renameSession(const QString &original, const QString &newNa
return deleteSession(original);
}
+
+/*!
+ \brief Shows a dialog asking the user to confirm deleting the session \p session
+*/
+bool SessionManager::confirmSessionDelete(const QString &session)
+{
+ return QMessageBox::question(Core::ICore::mainWindow(),
+ tr("Delete Session"),
+ tr("Delete session %1?").arg(session),
+ QMessageBox::Yes | QMessageBox::No) == QMessageBox::Yes;
+}
+
/*!
\brief Deletes session name from session list and file from disk.
*/
diff --git a/src/plugins/projectexplorer/session.h b/src/plugins/projectexplorer/session.h
index 2f0a72bea77..bfbc6cf4935 100644
--- a/src/plugins/projectexplorer/session.h
+++ b/src/plugins/projectexplorer/session.h
@@ -73,6 +73,7 @@ public:
bool createSession(const QString &session);
+ bool confirmSessionDelete(const QString &session);
bool deleteSession(const QString &session);
bool cloneSession(const QString &original, const QString &clone);
diff --git a/src/plugins/projectexplorer/sessiondialog.cpp b/src/plugins/projectexplorer/sessiondialog.cpp
index 8e751e89ce7..75ac0a6af23 100644
--- a/src/plugins/projectexplorer/sessiondialog.cpp
+++ b/src/plugins/projectexplorer/sessiondialog.cpp
@@ -244,7 +244,11 @@ void SessionDialog::clone()
void SessionDialog::remove()
{
- m_sessionManager->deleteSession(m_ui.sessionList->currentItem()->text());
+ const QString name = m_ui.sessionList->currentItem()->text();
+
+ if (!m_sessionManager->confirmSessionDelete(name))
+ return;
+ m_sessionManager->deleteSession(name);
m_ui.sessionList->clear();
addItems(false);
markItems();
diff --git a/src/plugins/projectexplorer/targetsettingswidget.cpp b/src/plugins/projectexplorer/targetsettingswidget.cpp
index 7e28a0126c5..88c53616a02 100644
--- a/src/plugins/projectexplorer/targetsettingswidget.cpp
+++ b/src/plugins/projectexplorer/targetsettingswidget.cpp
@@ -147,15 +147,3 @@ int TargetSettingsWidget::currentSubIndex() const
{
return m_targetSelector->currentSubIndex();
}
-
-void TargetSettingsWidget::changeEvent(QEvent *e)
-{
- QWidget::changeEvent(e);
- switch (e->type()) {
- case QEvent::LanguageChange:
- ui->retranslateUi(this);
- break;
- default:
- break;
- }
-}
diff --git a/src/plugins/projectexplorer/targetsettingswidget.h b/src/plugins/projectexplorer/targetsettingswidget.h
index c48fa5ad49a..1b678c4a20e 100644
--- a/src/plugins/projectexplorer/targetsettingswidget.h
+++ b/src/plugins/projectexplorer/targetsettingswidget.h
@@ -49,6 +49,7 @@ namespace Ui {
class TargetSettingsWidget : public QWidget
{
Q_OBJECT
+
public:
explicit TargetSettingsWidget(QWidget *parent = 0);
~TargetSettingsWidget();
@@ -77,9 +78,6 @@ signals:
void toolTipRequested(const QPoint &globalPosition, int targetIndex);
void menuShown(int targetIndex);
-protected:
- void changeEvent(QEvent *e);
-
private:
Ui::TargetSettingsWidget *ui;
diff --git a/src/plugins/pythoneditor/pythoneditor.cpp b/src/plugins/pythoneditor/pythoneditor.cpp
index c66e1fe393f..629e326e2f8 100644
--- a/src/plugins/pythoneditor/pythoneditor.cpp
+++ b/src/plugins/pythoneditor/pythoneditor.cpp
@@ -74,11 +74,6 @@ Core::Id PythonEditor::id() const
return Core::Id(Constants::C_PYTHONEDITOR_ID);
}
-Core::Id PythonEditor::preferredModeType() const
-{
- return Core::Id();
-}
-
bool PythonEditor::open(QString *errorString,
const QString &fileName,
const QString &realFileName)
diff --git a/src/plugins/pythoneditor/pythoneditor.h b/src/plugins/pythoneditor/pythoneditor.h
index 1ca117458fb..435fb08560d 100644
--- a/src/plugins/pythoneditor/pythoneditor.h
+++ b/src/plugins/pythoneditor/pythoneditor.h
@@ -50,7 +50,6 @@ public:
Core::Id id() const;
bool isTemporary() const { return false; }
- Core::Id preferredModeType() const;
/**
Opens file for editing, actual work performed by base class
diff --git a/src/plugins/pythoneditor/pythoneditorwidget.cpp b/src/plugins/pythoneditor/pythoneditorwidget.cpp
index ddd6fe9da4a..15010ffa52a 100644
--- a/src/plugins/pythoneditor/pythoneditorwidget.cpp
+++ b/src/plugins/pythoneditor/pythoneditorwidget.cpp
@@ -49,9 +49,9 @@ namespace PythonEditor {
EditorWidget::EditorWidget(QWidget *parent)
:TextEditor::BaseTextEditorWidget(parent)
{
- m_commentDefinition.setMultiLineStart(QString());
- m_commentDefinition.setMultiLineEnd(QString());
- m_commentDefinition.setSingleLine(QLatin1String("#"));
+ m_commentDefinition.multiLineStart.clear();
+ m_commentDefinition.multiLineEnd.clear();
+ m_commentDefinition.singleLine = QLatin1Char('#');
setParenthesesMatchingEnabled(true);
setMarksVisible(true);
diff --git a/src/plugins/qbsprojectmanager/qbsbuildstep.cpp b/src/plugins/qbsprojectmanager/qbsbuildstep.cpp
index 0f3da1fdf65..2a1126b3bdf 100644
--- a/src/plugins/qbsprojectmanager/qbsbuildstep.cpp
+++ b/src/plugins/qbsprojectmanager/qbsbuildstep.cpp
@@ -65,6 +65,7 @@ QbsBuildStep::QbsBuildStep(ProjectExplorer::BuildStepList *bsl) :
m_job(0), m_parser(0)
{
setDisplayName(tr("Qbs Build"));
+ setQbsConfiguration(QVariantMap());
}
QbsBuildStep::QbsBuildStep(ProjectExplorer::BuildStepList *bsl, const QbsBuildStep *other) :
@@ -281,6 +282,7 @@ void QbsBuildStep::handleProcessResultReport(const qbs::ProcessResult &result)
m_parser->stdOutput(line);
addOutput(line, NormalOutput);
}
+ m_parser->flush();
}
void QbsBuildStep::createTaskAndOutput(ProjectExplorer::Task::TaskType type, const QString &message,
@@ -379,13 +381,13 @@ void QbsBuildStepConfigWidget::updateState()
const int idx = (buildVariant == QLatin1String(Constants::QBS_VARIANT_DEBUG)) ? 0 : 1;
m_ui->buildVariantComboBox->setCurrentIndex(idx);
- QString command = QLatin1String("qbs ");
+ QString command = QLatin1String("qbs build ");
if (m_step->dryRun())
command += QLatin1String("--dry-run ");
if (m_step->keepGoing())
command += QLatin1String("--keep-going ");
command += QString::fromLatin1("--jobs %1 ").arg(m_step->maxJobs());
- command += QString::fromLatin1("build profile:%1 %2").arg(m_step->profile(), buildVariant);
+ command += QString::fromLatin1("profile:%1 %2").arg(m_step->profile(), buildVariant);
QString summary = tr("<b>Qbs:</b> %1").arg(command);
if (m_summary != summary) {
diff --git a/src/plugins/qbsprojectmanager/qbsprojectmanager.cpp b/src/plugins/qbsprojectmanager/qbsprojectmanager.cpp
index 2d84008a9e2..38e8ea749eb 100644
--- a/src/plugins/qbsprojectmanager/qbsprojectmanager.cpp
+++ b/src/plugins/qbsprojectmanager/qbsprojectmanager.cpp
@@ -93,12 +93,15 @@ QbsManager::QbsManager(Internal::QbsProjectManagerPlugin *plugin) :
int level = qbs::LoggerWarning;
const QString levelEnv = QString::fromLocal8Bit(qgetenv("QBS_LOG_LEVEL"));
if (!levelEnv.isEmpty()) {
- int tmp = levelEnv.toInt();
- if (tmp < static_cast<int>(qbs::LoggerMinLevel))
- tmp = static_cast<int>(qbs::LoggerMinLevel);
- if (tmp > static_cast<int>(qbs::LoggerMaxLevel))
- tmp = static_cast<int>(qbs::LoggerMaxLevel);
- level = tmp;
+ bool ok = false;
+ int tmp = levelEnv.toInt(&ok);
+ if (ok) {
+ if (tmp < static_cast<int>(qbs::LoggerMinLevel))
+ tmp = static_cast<int>(qbs::LoggerMinLevel);
+ if (tmp > static_cast<int>(qbs::LoggerMaxLevel))
+ tmp = static_cast<int>(qbs::LoggerMaxLevel);
+ level = tmp;
+ }
}
m_logSink->setLogLevel(static_cast<qbs::LoggerLevel>(level));
}
@@ -115,9 +118,13 @@ QString QbsManager::mimeType() const
ProjectExplorer::Project *QbsManager::openProject(const QString &fileName, QString *errorString)
{
- Q_UNUSED(errorString);
+ if (!QFileInfo(fileName).isFile()) {
+ if (errorString)
+ *errorString = tr("Failed opening project '%1': Project is not a file")
+ .arg(fileName);
+ return 0;
+ }
- // FIXME: This is way too simplistic!
return new Internal::QbsProject(this, fileName);
}
diff --git a/src/plugins/qmldesigner/components/formeditor/transform.png b/src/plugins/qmldesigner/components/formeditor/transform.png
index e9e7662b3a3..65483921774 100644
--- a/src/plugins/qmldesigner/components/formeditor/transform.png
+++ b/src/plugins/qmldesigner/components/formeditor/transform.png
Binary files differ
diff --git a/src/plugins/qmldesigner/componentsplugin/images/busyindicator.png b/src/plugins/qmldesigner/componentsplugin/images/busyindicator.png
index 89d0283f260..3cf3c11ddbe 100644
--- a/src/plugins/qmldesigner/componentsplugin/images/busyindicator.png
+++ b/src/plugins/qmldesigner/componentsplugin/images/busyindicator.png
Binary files differ
diff --git a/src/plugins/qmldesigner/componentsplugin/images/busyindicator16.png b/src/plugins/qmldesigner/componentsplugin/images/busyindicator16.png
index 7e3b2d31587..15e7f442a6b 100644
--- a/src/plugins/qmldesigner/componentsplugin/images/busyindicator16.png
+++ b/src/plugins/qmldesigner/componentsplugin/images/busyindicator16.png
Binary files differ
diff --git a/src/plugins/qmldesigner/componentsplugin/images/busyindicatora.png b/src/plugins/qmldesigner/componentsplugin/images/busyindicatora.png
index 433f4d426b9..4cd7ad590a4 100644
--- a/src/plugins/qmldesigner/componentsplugin/images/busyindicatora.png
+++ b/src/plugins/qmldesigner/componentsplugin/images/busyindicatora.png
Binary files differ
diff --git a/src/plugins/qmldesigner/componentsplugin/images/busyindicatora16.png b/src/plugins/qmldesigner/componentsplugin/images/busyindicatora16.png
index 82de5b0a1bc..2e6083c1c81 100644
--- a/src/plugins/qmldesigner/componentsplugin/images/busyindicatora16.png
+++ b/src/plugins/qmldesigner/componentsplugin/images/busyindicatora16.png
Binary files differ
diff --git a/src/plugins/qmldesigner/componentsplugin/images/button.png b/src/plugins/qmldesigner/componentsplugin/images/button.png
index 828af210acd..96e45e7233a 100644
--- a/src/plugins/qmldesigner/componentsplugin/images/button.png
+++ b/src/plugins/qmldesigner/componentsplugin/images/button.png
Binary files differ
diff --git a/src/plugins/qmldesigner/componentsplugin/images/button16.png b/src/plugins/qmldesigner/componentsplugin/images/button16.png
index 8d95760b27a..5f550f968e5 100644
--- a/src/plugins/qmldesigner/componentsplugin/images/button16.png
+++ b/src/plugins/qmldesigner/componentsplugin/images/button16.png
Binary files differ
diff --git a/src/plugins/qmldesigner/componentsplugin/images/buttoncolumn.png b/src/plugins/qmldesigner/componentsplugin/images/buttoncolumn.png
index 17fe6ca5335..b58d81bc0e6 100644
--- a/src/plugins/qmldesigner/componentsplugin/images/buttoncolumn.png
+++ b/src/plugins/qmldesigner/componentsplugin/images/buttoncolumn.png
Binary files differ
diff --git a/src/plugins/qmldesigner/componentsplugin/images/buttoncolumn16.png b/src/plugins/qmldesigner/componentsplugin/images/buttoncolumn16.png
index 0f9ac406529..9fb324bf8af 100644
--- a/src/plugins/qmldesigner/componentsplugin/images/buttoncolumn16.png
+++ b/src/plugins/qmldesigner/componentsplugin/images/buttoncolumn16.png
Binary files differ
diff --git a/src/plugins/qmldesigner/componentsplugin/images/buttonrow.png b/src/plugins/qmldesigner/componentsplugin/images/buttonrow.png
index 9cb606e6111..298be98fb43 100644
--- a/src/plugins/qmldesigner/componentsplugin/images/buttonrow.png
+++ b/src/plugins/qmldesigner/componentsplugin/images/buttonrow.png
Binary files differ
diff --git a/src/plugins/qmldesigner/componentsplugin/images/buttonrow16.png b/src/plugins/qmldesigner/componentsplugin/images/buttonrow16.png
index 82804f3c9cb..0966da85595 100644
--- a/src/plugins/qmldesigner/componentsplugin/images/buttonrow16.png
+++ b/src/plugins/qmldesigner/componentsplugin/images/buttonrow16.png
Binary files differ
diff --git a/src/plugins/qmldesigner/componentsplugin/images/checkbox.png b/src/plugins/qmldesigner/componentsplugin/images/checkbox.png
index f0b569f88c9..586167f65af 100644
--- a/src/plugins/qmldesigner/componentsplugin/images/checkbox.png
+++ b/src/plugins/qmldesigner/componentsplugin/images/checkbox.png
Binary files differ
diff --git a/src/plugins/qmldesigner/componentsplugin/images/checkbox16.png b/src/plugins/qmldesigner/componentsplugin/images/checkbox16.png
index 36387db78c5..569ec6e2f6e 100644
--- a/src/plugins/qmldesigner/componentsplugin/images/checkbox16.png
+++ b/src/plugins/qmldesigner/componentsplugin/images/checkbox16.png
Binary files differ
diff --git a/src/plugins/qmldesigner/componentsplugin/images/combobox.png b/src/plugins/qmldesigner/componentsplugin/images/combobox.png
index 3fd9876ada4..ba363fd3ce5 100644
--- a/src/plugins/qmldesigner/componentsplugin/images/combobox.png
+++ b/src/plugins/qmldesigner/componentsplugin/images/combobox.png
Binary files differ
diff --git a/src/plugins/qmldesigner/componentsplugin/images/combobox16.png b/src/plugins/qmldesigner/componentsplugin/images/combobox16.png
index 602b28229eb..09d74c8c20d 100644
--- a/src/plugins/qmldesigner/componentsplugin/images/combobox16.png
+++ b/src/plugins/qmldesigner/componentsplugin/images/combobox16.png
Binary files differ
diff --git a/src/plugins/qmldesigner/componentsplugin/images/progressbar.png b/src/plugins/qmldesigner/componentsplugin/images/progressbar.png
index d5382b40c65..b9c3ebf2448 100644
--- a/src/plugins/qmldesigner/componentsplugin/images/progressbar.png
+++ b/src/plugins/qmldesigner/componentsplugin/images/progressbar.png
Binary files differ
diff --git a/src/plugins/qmldesigner/componentsplugin/images/progressbar16.png b/src/plugins/qmldesigner/componentsplugin/images/progressbar16.png
index c4295f23442..77ce17a4783 100644
--- a/src/plugins/qmldesigner/componentsplugin/images/progressbar16.png
+++ b/src/plugins/qmldesigner/componentsplugin/images/progressbar16.png
Binary files differ
diff --git a/src/plugins/qmldesigner/componentsplugin/images/radiobutton.png b/src/plugins/qmldesigner/componentsplugin/images/radiobutton.png
index a4d82fa6e52..2b9aa4793b4 100644
--- a/src/plugins/qmldesigner/componentsplugin/images/radiobutton.png
+++ b/src/plugins/qmldesigner/componentsplugin/images/radiobutton.png
Binary files differ
diff --git a/src/plugins/qmldesigner/componentsplugin/images/radiobutton16.png b/src/plugins/qmldesigner/componentsplugin/images/radiobutton16.png
index 96670207ac2..923297a3ff4 100644
--- a/src/plugins/qmldesigner/componentsplugin/images/radiobutton16.png
+++ b/src/plugins/qmldesigner/componentsplugin/images/radiobutton16.png
Binary files differ
diff --git a/src/plugins/qmldesigner/componentsplugin/images/slider.png b/src/plugins/qmldesigner/componentsplugin/images/slider.png
index 746ed519323..d62d0b7af9d 100644
--- a/src/plugins/qmldesigner/componentsplugin/images/slider.png
+++ b/src/plugins/qmldesigner/componentsplugin/images/slider.png
Binary files differ
diff --git a/src/plugins/qmldesigner/componentsplugin/images/slider16.png b/src/plugins/qmldesigner/componentsplugin/images/slider16.png
index 10c4928b3ce..104f648fe19 100644
--- a/src/plugins/qmldesigner/componentsplugin/images/slider16.png
+++ b/src/plugins/qmldesigner/componentsplugin/images/slider16.png
Binary files differ
diff --git a/src/plugins/qmldesigner/componentsplugin/images/sliderh.png b/src/plugins/qmldesigner/componentsplugin/images/sliderh.png
index 87cd55678f1..c0bb24596db 100644
--- a/src/plugins/qmldesigner/componentsplugin/images/sliderh.png
+++ b/src/plugins/qmldesigner/componentsplugin/images/sliderh.png
Binary files differ
diff --git a/src/plugins/qmldesigner/componentsplugin/images/sliderh16.png b/src/plugins/qmldesigner/componentsplugin/images/sliderh16.png
index c4199113364..94df1a03375 100644
--- a/src/plugins/qmldesigner/componentsplugin/images/sliderh16.png
+++ b/src/plugins/qmldesigner/componentsplugin/images/sliderh16.png
Binary files differ
diff --git a/src/plugins/qmldesigner/componentsplugin/images/tabbutton.png b/src/plugins/qmldesigner/componentsplugin/images/tabbutton.png
index d9f5fdb3f94..28cca263260 100644
--- a/src/plugins/qmldesigner/componentsplugin/images/tabbutton.png
+++ b/src/plugins/qmldesigner/componentsplugin/images/tabbutton.png
Binary files differ
diff --git a/src/plugins/qmldesigner/componentsplugin/images/tabbutton16.png b/src/plugins/qmldesigner/componentsplugin/images/tabbutton16.png
index 8e279cff657..aee09a0a344 100644
--- a/src/plugins/qmldesigner/componentsplugin/images/tabbutton16.png
+++ b/src/plugins/qmldesigner/componentsplugin/images/tabbutton16.png
Binary files differ
diff --git a/src/plugins/qmldesigner/componentsplugin/images/textarea.png b/src/plugins/qmldesigner/componentsplugin/images/textarea.png
index 86f2969d001..388a5c5786b 100644
--- a/src/plugins/qmldesigner/componentsplugin/images/textarea.png
+++ b/src/plugins/qmldesigner/componentsplugin/images/textarea.png
Binary files differ
diff --git a/src/plugins/qmldesigner/componentsplugin/images/textarea16.png b/src/plugins/qmldesigner/componentsplugin/images/textarea16.png
index 899a4bca2ee..736f6468039 100644
--- a/src/plugins/qmldesigner/componentsplugin/images/textarea16.png
+++ b/src/plugins/qmldesigner/componentsplugin/images/textarea16.png
Binary files differ
diff --git a/src/plugins/qmldesigner/componentsplugin/images/textfield.png b/src/plugins/qmldesigner/componentsplugin/images/textfield.png
index b0f13da50d2..a5c77b3a720 100644
--- a/src/plugins/qmldesigner/componentsplugin/images/textfield.png
+++ b/src/plugins/qmldesigner/componentsplugin/images/textfield.png
Binary files differ
diff --git a/src/plugins/qmldesigner/componentsplugin/images/textfield16.png b/src/plugins/qmldesigner/componentsplugin/images/textfield16.png
index 7feb8c71584..d3a8a52bd11 100644
--- a/src/plugins/qmldesigner/componentsplugin/images/textfield16.png
+++ b/src/plugins/qmldesigner/componentsplugin/images/textfield16.png
Binary files differ
diff --git a/src/plugins/qmldesigner/designercore/model/texttomodelmerger.cpp b/src/plugins/qmldesigner/designercore/model/texttomodelmerger.cpp
index 7fe45f1b27b..50120f9fa4f 100644
--- a/src/plugins/qmldesigner/designercore/model/texttomodelmerger.cpp
+++ b/src/plugins/qmldesigner/designercore/model/texttomodelmerger.cpp
@@ -793,7 +793,7 @@ bool TextToModelMerger::load(const QString &data, DifferenceHandler &differenceH
return false;
}
- if (!warnings.isEmpty() && differenceHandler.isValidator()) {
+ if (!warnings.isEmpty() && differenceHandler.isValidator() && !m_rewriterView->inErrorState()) {
QString title = QCoreApplication::translate("QmlDesigner::TextToModelMerger", "This .qml file contains features "
"which are not supported by Qt Quick Designer");
diff --git a/src/plugins/qmljseditor/qmljseditor.qbs b/src/plugins/qmljseditor/qmljseditor.qbs
index 3e140130da9..8ee25012060 100644
--- a/src/plugins/qmljseditor/qmljseditor.qbs
+++ b/src/plugins/qmljseditor/qmljseditor.qbs
@@ -85,7 +85,7 @@ QtcPlugin {
"images/qmlfile.png",
]
- ProductModule {
+ Export {
Depends { name: "QmlJSTools" }
}
}
diff --git a/src/plugins/qmljstools/qmljstools.qbs b/src/plugins/qmljstools/qmljstools.qbs
index d787c842b1c..3848531bd52 100644
--- a/src/plugins/qmljstools/qmljstools.qbs
+++ b/src/plugins/qmljstools/qmljstools.qbs
@@ -78,7 +78,7 @@ QtcPlugin {
files: ["qmljstools_test.cpp"]
}
- ProductModule {
+ Export {
Depends { name: "CppTools" }
Depends { name: "QmlDebug" }
}
diff --git a/src/plugins/qmlprojectmanager/qmlprojectmanager.cpp b/src/plugins/qmlprojectmanager/qmlprojectmanager.cpp
index 233a0095213..210e6436938 100644
--- a/src/plugins/qmlprojectmanager/qmlprojectmanager.cpp
+++ b/src/plugins/qmlprojectmanager/qmlprojectmanager.cpp
@@ -49,22 +49,14 @@ QString Manager::mimeType() const
ProjectExplorer::Project *Manager::openProject(const QString &fileName, QString *errorString)
{
- QFileInfo fileInfo(fileName);
- ProjectExplorer::ProjectExplorerPlugin *projectExplorer = ProjectExplorer::ProjectExplorerPlugin::instance();
-
- foreach (ProjectExplorer::Project *pi, projectExplorer->session()->projects()) {
- if (fileName == pi->document()->fileName()) {
- if (errorString)
- *errorString = tr("Failed opening project '%1': Project already open") .arg(QDir::toNativeSeparators(fileName));
- return 0;
- }
+ if (!QFileInfo(fileName).isFile()) {
+ if (errorString)
+ *errorString = tr("Failed opening project '%1': Project is not a file")
+ .arg(fileName);
+ return 0;
}
- if (fileInfo.isFile())
- return new QmlProject(this, fileName);
-
- *errorString = tr("Failed opening project '%1': Project file is not a file").arg(QDir::toNativeSeparators(fileName));
- return 0;
+ return new QmlProject(this, fileName);
}
void Manager::registerProject(QmlProject *project)
diff --git a/src/plugins/qnx/bardescriptoreditor.cpp b/src/plugins/qnx/bardescriptoreditor.cpp
index e6f2b809961..a33dab4a31d 100644
--- a/src/plugins/qnx/bardescriptoreditor.cpp
+++ b/src/plugins/qnx/bardescriptoreditor.cpp
@@ -118,28 +118,6 @@ void BarDescriptorEditor::setDisplayName(const QString &title)
emit changed();
}
-bool BarDescriptorEditor::duplicateSupported() const
-{
- return false;
-}
-
-Core::IEditor *BarDescriptorEditor::duplicate(QWidget *parent)
-{
- Q_UNUSED(parent);
- return 0;
-}
-
-QByteArray BarDescriptorEditor::saveState() const
-{
- return QByteArray(); // Not supported
-}
-
-bool BarDescriptorEditor::restoreState(const QByteArray &state)
-{
- Q_UNUSED(state);
- return false; // Not supported
-}
-
bool BarDescriptorEditor::isTemporary() const
{
return false;
diff --git a/src/plugins/qnx/bardescriptoreditor.h b/src/plugins/qnx/bardescriptoreditor.h
index 9697f69aa7f..b8bd6bfd9f7 100644
--- a/src/plugins/qnx/bardescriptoreditor.h
+++ b/src/plugins/qnx/bardescriptoreditor.h
@@ -69,15 +69,7 @@ public:
Core::Id id() const;
QString displayName() const;
void setDisplayName(const QString &title);
-
- bool duplicateSupported() const;
- Core::IEditor *duplicate(QWidget *parent);
-
- QByteArray saveState() const;
- bool restoreState(const QByteArray &state);
-
bool isTemporary() const;
-
QWidget *toolBar();
EditorPage activePage() const;
diff --git a/src/plugins/qt4projectmanager/customwidgetwizard/customwidgetpluginwizardpage.cpp b/src/plugins/qt4projectmanager/customwidgetwizard/customwidgetpluginwizardpage.cpp
index bf2342bb35b..910a145e742 100644
--- a/src/plugins/qt4projectmanager/customwidgetwizard/customwidgetpluginwizardpage.cpp
+++ b/src/plugins/qt4projectmanager/customwidgetwizard/customwidgetpluginwizardpage.cpp
@@ -138,17 +138,5 @@ bool CustomWidgetPluginWizardPage::isComplete() const
return m_complete;
}
-void CustomWidgetPluginWizardPage::changeEvent(QEvent *e)
-{
- QWizardPage::changeEvent(e);
- switch (e->type()) {
- case QEvent::LanguageChange:
- m_ui->retranslateUi(this);
- break;
- default:
- break;
- }
-}
-
} // namespace Internal
} // namespace Qt4ProjectManager
diff --git a/src/plugins/qt4projectmanager/customwidgetwizard/customwidgetpluginwizardpage.h b/src/plugins/qt4projectmanager/customwidgetwizard/customwidgetpluginwizardpage.h
index a807be36c11..1605b2a507c 100644
--- a/src/plugins/qt4projectmanager/customwidgetwizard/customwidgetpluginwizardpage.h
+++ b/src/plugins/qt4projectmanager/customwidgetwizard/customwidgetpluginwizardpage.h
@@ -45,8 +45,10 @@ namespace Ui {
class CustomWidgetPluginWizardPage;
}
-class CustomWidgetPluginWizardPage : public QWizardPage {
+class CustomWidgetPluginWizardPage : public QWizardPage
+{
Q_OBJECT
+
public:
explicit CustomWidgetPluginWizardPage(QWidget *parent = 0);
virtual ~CustomWidgetPluginWizardPage();
@@ -61,9 +63,6 @@ public:
// Fills the plugin fields, excluding widget list.
QSharedPointer<PluginOptions> basicPluginOptions() const;
-protected:
- void changeEvent(QEvent *e);
-
private slots:
void on_collectionClassEdit_textChanged();
void on_collectionHeaderEdit_textChanged();
@@ -82,4 +81,5 @@ private:
} // namespace Internal
} // namespace Qt4ProjectManager
+
#endif // CUSTOMWIDGETPLUGINWIZARDPAGE_H
diff --git a/src/plugins/qt4projectmanager/profileeditor.cpp b/src/plugins/qt4projectmanager/profileeditor.cpp
index c9d3f0a5995..0ed797d372e 100644
--- a/src/plugins/qt4projectmanager/profileeditor.cpp
+++ b/src/plugins/qt4projectmanager/profileeditor.cpp
@@ -85,7 +85,7 @@ ProFileEditorWidget::ProFileEditorWidget(QWidget *parent, ProFileEditorFactory *
baseTextDocument()->setSyntaxHighlighter(new ProFileHighlighter);
m_commentDefinition.clearCommentStyles();
- m_commentDefinition.setSingleLine(QString(QLatin1Char('#')));
+ m_commentDefinition.singleLine = QLatin1Char('#');
}
void ProFileEditorWidget::unCommentSelection()
diff --git a/src/plugins/qt4projectmanager/qt4projectmanager.cpp b/src/plugins/qt4projectmanager/qt4projectmanager.cpp
index be93686f5a2..33926d23636 100644
--- a/src/plugins/qt4projectmanager/qt4projectmanager.cpp
+++ b/src/plugins/qt4projectmanager/qt4projectmanager.cpp
@@ -176,28 +176,14 @@ QString Qt4Manager::mimeType() const
ProjectExplorer::Project *Qt4Manager::openProject(const QString &fileName, QString *errorString)
{
- // TODO Make all file paths relative & remove this hack
- // We convert the path to an absolute one here because qt4project.cpp
- // && profileevaluator use absolute/canonical file paths all over the place
- // Correct fix would be to remove these calls ...
- QString canonicalFilePath = QFileInfo(fileName).canonicalFilePath();
-
- if (canonicalFilePath.isEmpty()) {
+ if (!QFileInfo(fileName).isFile()) {
if (errorString)
- *errorString = tr("Failed opening project '%1': Project file does not exist").arg(QDir::toNativeSeparators(fileName));
+ *errorString = tr("Failed opening project '%1': Project is not a file")
+ .arg(fileName);
return 0;
}
- foreach (ProjectExplorer::Project *pi, projectExplorer()->session()->projects()) {
- if (canonicalFilePath == pi->document()->fileName()) {
- if (errorString)
- *errorString = tr("Failed opening project '%1': Project already open").arg(QDir::toNativeSeparators(canonicalFilePath));
- return 0;
- }
- }
-
- Qt4Project *pro = new Qt4Project(this, canonicalFilePath);
- return pro;
+ return new Qt4Project(this, fileName);
}
ProjectExplorer::ProjectExplorerPlugin *Qt4Manager::projectExplorer() const
diff --git a/src/plugins/qt4projectmanager/wizards/testwizardpage.cpp b/src/plugins/qt4projectmanager/wizards/testwizardpage.cpp
index c9d2de1af8e..f1f211370b5 100644
--- a/src/plugins/qt4projectmanager/wizards/testwizardpage.cpp
+++ b/src/plugins/qt4projectmanager/wizards/testwizardpage.cpp
@@ -133,17 +133,5 @@ void TestWizardPage::slotUpdateValid()
}
}
-void TestWizardPage::changeEvent(QEvent *e)
-{
- QWizardPage::changeEvent(e);
- switch (e->type()) {
- case QEvent::LanguageChange:
- ui->retranslateUi(this);
- break;
- default:
- break;
- }
-}
-
} // namespace Internal
} // namespace Qt4ProjectManager
diff --git a/src/plugins/qt4projectmanager/wizards/testwizardpage.h b/src/plugins/qt4projectmanager/wizards/testwizardpage.h
index 960043e8467..69b0ae77b4c 100644
--- a/src/plugins/qt4projectmanager/wizards/testwizardpage.h
+++ b/src/plugins/qt4projectmanager/wizards/testwizardpage.h
@@ -44,8 +44,10 @@ struct TestWizardParameters;
/* TestWizardPage: Let's the user input test class name, slot
* (for which a CLassNameValidatingLineEdit is abused) and file name. */
-class TestWizardPage : public QWizardPage {
+class TestWizardPage : public QWizardPage
+{
Q_OBJECT
+
public:
explicit TestWizardPage(QWidget *parent = 0);
~TestWizardPage();
@@ -62,18 +64,15 @@ private slots:
void slotFileNameEdited();
void slotUpdateValid();
-protected:
- void changeEvent(QEvent *e);
-
private:
const QString m_sourceSuffix;
const bool m_lowerCaseFileNames;
Ui::TestWizardPage *ui;
bool m_fileNameEdited;
bool m_valid;
-
};
} // namespace Internal
} // namespace Qt4ProjectManager
+
#endif // TESTWIZARDPAGE_H
diff --git a/src/plugins/qtsupport/qtsupport.qbs b/src/plugins/qtsupport/qtsupport.qbs
index df1b1e5fd8a..841c171015b 100644
--- a/src/plugins/qtsupport/qtsupport.qbs
+++ b/src/plugins/qtsupport/qtsupport.qbs
@@ -109,8 +109,7 @@ QtcPlugin {
"QtSupport.mimetypes.xml",
]
-
- ProductModule {
+ Export {
Depends { name: "cpp" }
cpp.includePaths: "../../shared"
cpp.defines: [
diff --git a/src/plugins/remotelinux/remotelinux.qbs b/src/plugins/remotelinux/remotelinux.qbs
index 16cd3eaa8ff..36336e6d65a 100644
--- a/src/plugins/remotelinux/remotelinux.qbs
+++ b/src/plugins/remotelinux/remotelinux.qbs
@@ -113,7 +113,7 @@ QtcPlugin {
"images/embeddedtarget.png",
]
- ProductModule {
+ Export {
Depends { name: "Core" }
Depends { name: "QtcSsh" }
}
diff --git a/src/plugins/resourceeditor/resourceeditorw.h b/src/plugins/resourceeditor/resourceeditorw.h
index 4d7026286fe..22d71f69c88 100644
--- a/src/plugins/resourceeditor/resourceeditorw.h
+++ b/src/plugins/resourceeditor/resourceeditorw.h
@@ -83,15 +83,11 @@ public:
// IEditor
bool createNew(const QString &contents);
bool open(QString *errorString, const QString &fileName, const QString &realFileName);
- bool duplicateSupported() const { return false; }
- Core::IEditor *duplicate(QWidget *) { return 0; }
Core::IDocument *document() { return m_resourceDocument; }
Core::Id id() const;
QString displayName() const { return m_displayName; }
void setDisplayName(const QString &title) { m_displayName = title; emit changed(); }
QWidget *toolBar();
- QByteArray saveState() const { return QByteArray(); }
- bool restoreState(const QByteArray &/*state*/) { return true; }
void setSuggestedFileName(const QString &fileName);
bool isTemporary() const { return false; }
diff --git a/src/plugins/texteditor/basetexteditor.cpp b/src/plugins/texteditor/basetexteditor.cpp
index 3e3da710ac9..2b3f5eef3ab 100644
--- a/src/plugins/texteditor/basetexteditor.cpp
+++ b/src/plugins/texteditor/basetexteditor.cpp
@@ -104,39 +104,38 @@
\internal
*/
-using namespace TextEditor;
-using namespace TextEditor::Internal;
using namespace Utils;
namespace TextEditor {
namespace Internal {
-class TextEditExtraArea : public QWidget {
- BaseTextEditorWidget *textEdit;
+class TextEditExtraArea : public QWidget
+{
public:
- TextEditExtraArea(BaseTextEditorWidget *edit):QWidget(edit) {
+ TextEditExtraArea(BaseTextEditorWidget *edit)
+ : QWidget(edit)
+ {
textEdit = edit;
setAutoFillBackground(true);
}
-public:
+protected:
QSize sizeHint() const {
return QSize(textEdit->extraAreaWidth(), 0);
}
-protected:
- void paintEvent(QPaintEvent *event){
+ void paintEvent(QPaintEvent *event) {
textEdit->extraAreaPaintEvent(event);
}
- void mousePressEvent(QMouseEvent *event){
+ void mousePressEvent(QMouseEvent *event) {
textEdit->extraAreaMouseEvent(event);
}
- void mouseMoveEvent(QMouseEvent *event){
+ void mouseMoveEvent(QMouseEvent *event) {
textEdit->extraAreaMouseEvent(event);
}
- void mouseReleaseEvent(QMouseEvent *event){
+ void mouseReleaseEvent(QMouseEvent *event) {
textEdit->extraAreaMouseEvent(event);
}
- void leaveEvent(QEvent *event){
+ void leaveEvent(QEvent *event) {
textEdit->extraAreaLeaveEvent(event);
}
void contextMenuEvent(QContextMenuEvent *event) {
@@ -146,13 +145,17 @@ protected:
void wheelEvent(QWheelEvent *event) {
QCoreApplication::sendEvent(textEdit->viewport(), event);
}
+
+private:
+ BaseTextEditorWidget *textEdit;
};
} // namespace Internal
-} // namespace TextEditor
+
+using namespace Internal;
Core::IEditor *BaseTextEditorWidget::openEditorAt(const QString &fileName, int line, int column,
- const Core::Id &editorKind,
+ Core::Id editorKind,
Core::EditorManager::OpenEditorFlags flags,
bool *newEditor)
{
@@ -294,7 +297,7 @@ void BaseTextEditorWidget::setMimeType(const QString &mt)
void BaseTextEditorWidget::print(QPrinter *printer)
{
- const bool oldFullPage = printer->fullPage();
+ const bool oldFullPage = printer->fullPage();
printer->setFullPage(true);
QPrintDialog *dlg = new QPrintDialog(printer, this);
dlg->setWindowTitle(tr("Print Document"));
@@ -307,7 +310,7 @@ void BaseTextEditorWidget::print(QPrinter *printer)
static int foldBoxWidth(const QFontMetrics &fm)
{
const int lineSpacing = fm.lineSpacing();
- return lineSpacing + lineSpacing%2 + 1;
+ return lineSpacing + lineSpacing % 2 + 1;
}
static void printPage(int index, QPainter *painter, const QTextDocument *doc,
@@ -381,7 +384,7 @@ void BaseTextEditorWidgetPrivate::print(QPrinter *printer)
QList<QTextLayout::FormatRange> formatList = srcBlock.layout()->additionalFormats();
if (backgroundIsDark) {
// adjust syntax highlighting colors for better contrast
- for (int i = formatList.count() - 1; i >=0; --i) {
+ for (int i = formatList.count() - 1; i >= 0; --i) {
QTextCharFormat &format = formatList[i].format;
if (format.background().color() == background) {
QBrush brush = format.foreground();
@@ -423,7 +426,7 @@ void BaseTextEditorWidgetPrivate::print(QPrinter *printer)
int docCopies;
int pageCopies;
- if (printer->collateCopies() == true){
+ if (printer->collateCopies() == true) {
docCopies = 1;
pageCopies = printer->numCopies();
} else {
@@ -631,8 +634,6 @@ const Utils::ChangeSet &BaseTextEditorWidget::changeSet() const
void BaseTextEditorWidget::setChangeSet(const Utils::ChangeSet &changeSet)
{
- using namespace Utils;
-
d->m_changeSet = changeSet;
foreach (const ChangeSet::EditOp &op, changeSet.operationList()) {
@@ -1057,7 +1058,6 @@ void BaseTextEditorWidget::uppercaseSelection()
transformSelection(&QString::toUpper);
}
-
void BaseTextEditorWidget::lowercaseSelection()
{
transformSelection(&QString::toLower);
@@ -1173,18 +1173,18 @@ void BaseTextEditorWidget::moveLineUpDown(bool up)
d->m_refactorOverlay->setMarkers(nonAffectedMarkers + affectedMarkers);
bool shouldReindent = true;
- const Utils::CommentDefinition* commentDefinition(editor()->commentDefinition());
+ const CommentDefinition *commentDefinition(editor()->commentDefinition());
if (commentDefinition) {
QString trimmedText(text.trimmed());
if (commentDefinition->hasSingleLineStyle()) {
- if (trimmedText.startsWith(commentDefinition->singleLine()))
+ if (trimmedText.startsWith(commentDefinition->singleLine))
shouldReindent = false;
}
if (shouldReindent && commentDefinition->hasMultiLineStyle()) {
// Don't have any single line comments; try multi line.
- if (trimmedText.startsWith(commentDefinition->multiLineStart())
- && trimmedText.endsWith(commentDefinition->multiLineEnd())) {
+ if (trimmedText.startsWith(commentDefinition->multiLineStart)
+ && trimmedText.endsWith(commentDefinition->multiLineEnd)) {
shouldReindent = false;
}
}
@@ -2825,19 +2825,6 @@ void BaseTextEditorWidgetPrivate::highlightSearchResults(const QTextBlock &block
}
}
-
-namespace TextEditor {
- namespace Internal {
- struct BlockSelectionData {
- int selectionIndex;
- int selectionStart;
- int selectionEnd;
- int firstColumn;
- int lastColumn;
- };
- }
-}
-
void BaseTextEditorWidgetPrivate::clearBlockSelection()
{
if (m_inBlockSelectionMode) {
@@ -6281,9 +6268,9 @@ void BaseTextEditorWidget::appendStandardContextMenuActions(QMenu *menu)
BaseTextEditor::BaseTextEditor(BaseTextEditorWidget *editor)
- : e(editor)
+ : m_editorWidget(editor)
{
- setWidget(e);
+ setWidget(m_editorWidget);
using namespace Find;
Aggregation::Aggregate *aggregate = new Aggregation::Aggregate;
BaseTextFind *baseTextFind = new BaseTextFind(editor);
@@ -6318,7 +6305,7 @@ BaseTextEditor::BaseTextEditor(BaseTextEditorWidget *editor)
BaseTextEditor::~BaseTextEditor()
{
delete m_toolBar;
- delete e;
+ delete m_editorWidget;
}
QWidget *BaseTextEditor::toolBar()
@@ -6343,74 +6330,74 @@ void BaseTextEditor::insertExtraToolBarWidget(BaseTextEditor::Side side,
int BaseTextEditor::currentLine() const
{
- return e->textCursor().blockNumber() + 1;
+ return m_editorWidget->textCursor().blockNumber() + 1;
}
int BaseTextEditor::currentColumn() const
{
- QTextCursor cursor = e->textCursor();
+ QTextCursor cursor = m_editorWidget->textCursor();
return cursor.position() - cursor.block().position() + 1;
}
int BaseTextEditor::columnCount() const
{
- return e->columnCount();
+ return m_editorWidget->columnCount();
}
int BaseTextEditor::rowCount() const
{
- return e->rowCount();
+ return m_editorWidget->rowCount();
}
QRect BaseTextEditor::cursorRect(int pos) const
{
- QTextCursor tc = e->textCursor();
+ QTextCursor tc = m_editorWidget->textCursor();
if (pos >= 0)
tc.setPosition(pos);
- QRect result = e->cursorRect(tc);
- result.moveTo(e->viewport()->mapToGlobal(result.topLeft()));
+ QRect result = m_editorWidget->cursorRect(tc);
+ result.moveTo(m_editorWidget->viewport()->mapToGlobal(result.topLeft()));
return result;
}
QString BaseTextEditor::selectedText() const
{
- if (e->textCursor().hasSelection())
- return e->textCursor().selectedText();
+ if (m_editorWidget->textCursor().hasSelection())
+ return m_editorWidget->textCursor().selectedText();
return QString();
}
void BaseTextEditor::remove(int length)
{
- QTextCursor tc = e->textCursor();
+ QTextCursor tc = m_editorWidget->textCursor();
tc.setPosition(tc.position() + length, QTextCursor::KeepAnchor);
tc.removeSelectedText();
}
void BaseTextEditor::insert(const QString &string)
{
- QTextCursor tc = e->textCursor();
+ QTextCursor tc = m_editorWidget->textCursor();
tc.insertText(string);
}
void BaseTextEditor::replace(int length, const QString &string)
{
- QTextCursor tc = e->textCursor();
+ QTextCursor tc = m_editorWidget->textCursor();
tc.setPosition(tc.position() + length, QTextCursor::KeepAnchor);
tc.insertText(string);
}
void BaseTextEditor::setCursorPosition(int pos)
{
- QTextCursor tc = e->textCursor();
+ QTextCursor tc = m_editorWidget->textCursor();
tc.setPosition(pos);
- e->setTextCursor(tc);
+ m_editorWidget->setTextCursor(tc);
}
void BaseTextEditor::select(int toPos)
{
- QTextCursor tc = e->textCursor();
+ QTextCursor tc = m_editorWidget->textCursor();
tc.setPosition(toPos, QTextCursor::KeepAnchor);
- e->setTextCursor(tc);
+ m_editorWidget->setTextCursor(tc);
}
const CommentDefinition *BaseTextEditor::commentDefinition() const
@@ -6420,16 +6407,16 @@ const CommentDefinition *BaseTextEditor::commentDefinition() const
void BaseTextEditor::updateCursorPosition()
{
- const QTextCursor cursor = e->textCursor();
+ const QTextCursor cursor = m_editorWidget->textCursor();
const QTextBlock block = cursor.block();
const int line = block.blockNumber() + 1;
const int column = cursor.position() - block.position();
- m_cursorPositionLabel->setText(tr("Line: %1, Col: %2").arg(line).arg(e->tabSettings().columnAt(block.text(), column)+1),
+ m_cursorPositionLabel->setText(tr("Line: %1, Col: %2").arg(line).arg(m_editorWidget->tabSettings().columnAt(block.text(), column)+1),
tr("Line: 9999, Col: 999"));
m_contextHelpId.clear();
if (!block.isVisible())
- e->ensureCursorVisible();
+ m_editorWidget->ensureCursorVisible();
}
@@ -6456,8 +6443,8 @@ void BaseTextEditor::setFileEncodingLabelText(const QString &text)
QString BaseTextEditor::contextHelpId() const
{
if (m_contextHelpId.isEmpty())
- emit const_cast<BaseTextEditor*>(this)->contextHelpIdRequested(e->editor(),
- e->textCursor().position());
+ emit const_cast<BaseTextEditor*>(this)->contextHelpIdRequested(m_editorWidget->editor(),
+ m_editorWidget->textCursor().position());
return m_contextHelpId;
}
@@ -6754,3 +6741,10 @@ QString TextEditor::BaseTextEditorWidget::foldReplacementText(const QTextBlock &
{
return QLatin1String("...");
}
+
+bool BaseTextEditor::open(QString *errorString, const QString &fileName, const QString &realFileName)
+{
+ return m_editorWidget->open(errorString, fileName, realFileName);
+}
+
+} // namespace TextEditor
diff --git a/src/plugins/texteditor/basetexteditor.h b/src/plugins/texteditor/basetexteditor.h
index 9fce8894931..c109bc43960 100644
--- a/src/plugins/texteditor/basetexteditor.h
+++ b/src/plugins/texteditor/basetexteditor.h
@@ -126,12 +126,13 @@ class TEXTEDITOR_EXPORT BaseTextEditorWidget : public QPlainTextEdit
Q_OBJECT
Q_PROPERTY(int verticalBlockSelectionFirstColumn READ verticalBlockSelectionFirstColumn)
Q_PROPERTY(int verticalBlockSelectionLastColumn READ verticalBlockSelectionLastColumn)
+
public:
BaseTextEditorWidget(QWidget *parent);
~BaseTextEditorWidget();
static Core::IEditor *openEditorAt(const QString &fileName, int line, int column = 0,
- const Core::Id &editorId = Core::Id(),
+ Core::Id editorId = Core::Id(),
Core::EditorManager::OpenEditorFlags flags = Core::EditorManager::IgnoreNavigationHistory,
bool *newEditor = 0);
@@ -146,13 +147,10 @@ public:
bool restoreState(const QByteArray &state);
QString displayName() const;
- // ITextEditor
-
void gotoLine(int line, int column = 0);
- int position(
- ITextEditor::PositionOperation posOp = ITextEditor::Current
- , int at = -1) const;
+ int position(ITextEditor::PositionOperation posOp = ITextEditor::Current,
+ int at = -1) const;
void convertPosition(int pos, int *line, int *column) const;
BaseTextEditor *editor() const;
@@ -164,7 +162,7 @@ public:
QString mimeType() const;
virtual void setMimeType(const QString &mt);
- void appendMenuActionsFromContext(QMenu *menu, const Core::Id menuContextId);
+ void appendMenuActionsFromContext(QMenu *menu, Core::Id menuContextId);
void appendStandardContextMenuActions(QMenu *menu);
// Works only in conjunction with a syntax highlighter that puts
@@ -217,7 +215,7 @@ public:
int columnCount() const;
int rowCount() const;
- void setActionHack(QObject *);
+ void setActionHack(QObject *hack);
QObject *actionHack() const;
void setTextCodec(QTextCodec *codec);
@@ -617,17 +615,17 @@ public:
~BaseTextEditor();
friend class BaseTextEditorWidget;
- BaseTextEditorWidget *editorWidget() const { return e; }
+ BaseTextEditorWidget *editorWidget() const { return m_editorWidget; }
// IEditor
- Core::IDocument * document() { return e->editorDocument(); }
- bool createNew(const QString &contents) { return e->createNew(contents); }
- bool open(QString *errorString, const QString &fileName, const QString &realFileName) { return e->open(errorString, fileName, realFileName); }
- QString displayName() const { return e->displayName(); }
- void setDisplayName(const QString &title) { e->setDisplayName(title); emit changed(); }
-
- QByteArray saveState() const { return e->saveState(); }
- bool restoreState(const QByteArray &state) { return e->restoreState(state); }
+ Core::IDocument *document() { return m_editorWidget->editorDocument(); }
+ bool createNew(const QString &contents) { return m_editorWidget->createNew(contents); }
+ bool open(QString *errorString, const QString &fileName, const QString &realFileName);
+ QString displayName() const { return m_editorWidget->displayName(); }
+ void setDisplayName(const QString &title) { m_editorWidget->setDisplayName(title); emit changed(); }
+
+ QByteArray saveState() const { return m_editorWidget->saveState(); }
+ bool restoreState(const QByteArray &state) { return m_editorWidget->restoreState(state); }
QWidget *toolBar();
enum Side { Left, Right };
@@ -636,25 +634,24 @@ public:
// ITextEditor
int currentLine() const;
int currentColumn() const;
- void gotoLine(int line, int column = 0) { e->gotoLine(line, column); }
+ void gotoLine(int line, int column = 0) { m_editorWidget->gotoLine(line, column); }
int columnCount() const;
int rowCount() const;
int position(PositionOperation posOp = Current, int at = -1) const
- { return e->position(posOp, at); }
+ { return m_editorWidget->position(posOp, at); }
void convertPosition(int pos, int *line, int *column) const
- { e->convertPosition(pos, line, column); }
+ { m_editorWidget->convertPosition(pos, line, column); }
QRect cursorRect(int pos = -1) const;
QString selectedText() const;
- inline ITextMarkable *markableInterface() { return e->markableInterface(); }
+ ITextMarkable *markableInterface() { return m_editorWidget->markableInterface(); }
QString contextHelpId() const; // from IContext
- inline void setTextCodec(QTextCodec *codec, TextCodecReason = TextCodecOtherReason) { e->setTextCodec(codec); }
- inline QTextCodec *textCodec() const { return e->textCodec(); }
-
+ void setTextCodec(QTextCodec *codec, TextCodecReason = TextCodecOtherReason) { m_editorWidget->setTextCodec(codec); }
+ QTextCodec *textCodec() const { return m_editorWidget->textCodec(); }
// ITextEditor
void remove(int length);
@@ -662,7 +659,7 @@ public:
void replace(int length, const QString &string);
void setCursorPosition(int pos);
void select(int toPos);
- const Utils::CommentDefinition* commentDefinition() const;
+ const Utils::CommentDefinition *commentDefinition() const;
private slots:
void updateCursorPosition();
@@ -671,7 +668,9 @@ private slots:
void setFileEncodingLabelText(const QString &text);
private:
- BaseTextEditorWidget *e;
+ // Note: This is always a copy of IContext::m_widget.
+ BaseTextEditorWidget *m_editorWidget;
+
QToolBar *m_toolBar;
QWidget *m_stretchWidget;
QAction *m_cursorPositionLabelAction;
diff --git a/src/plugins/texteditor/generichighlighter/managedefinitionsdialog.cpp b/src/plugins/texteditor/generichighlighter/managedefinitionsdialog.cpp
index 2267f4e5484..6c1f3454ddf 100644
--- a/src/plugins/texteditor/generichighlighter/managedefinitionsdialog.cpp
+++ b/src/plugins/texteditor/generichighlighter/managedefinitionsdialog.cpp
@@ -136,15 +136,3 @@ void ManageDefinitionsDialog::invertSelection()
ui.definitionsTable->selectionModel()->select(itemSelection, QItemSelectionModel::Toggle);
ui.definitionsTable->setFocus();
}
-
-void ManageDefinitionsDialog::changeEvent(QEvent *e)
-{
- QDialog::changeEvent(e);
- switch (e->type()) {
- case QEvent::LanguageChange:
- ui.retranslateUi(this);
- break;
- default:
- break;
- }
-}
diff --git a/src/plugins/texteditor/generichighlighter/managedefinitionsdialog.h b/src/plugins/texteditor/generichighlighter/managedefinitionsdialog.h
index af24f12b81e..054c4eb7c77 100644
--- a/src/plugins/texteditor/generichighlighter/managedefinitionsdialog.h
+++ b/src/plugins/texteditor/generichighlighter/managedefinitionsdialog.h
@@ -41,14 +41,12 @@ namespace Internal {
class ManageDefinitionsDialog : public QDialog
{
Q_OBJECT
+
public:
explicit ManageDefinitionsDialog(const QList<HighlightDefinitionMetaData> &metaDataList,
const QString &path,
QWidget *parent = 0);
-protected:
- void changeEvent(QEvent *e);
-
private slots:
void downloadDefinitions();
void selectAll();
diff --git a/src/plugins/texteditor/plaintexteditor.cpp b/src/plugins/texteditor/plaintexteditor.cpp
index c0a8982208c..322113738f4 100644
--- a/src/plugins/texteditor/plaintexteditor.cpp
+++ b/src/plugins/texteditor/plaintexteditor.cpp
@@ -167,10 +167,10 @@ void PlainTextEditorWidget::configure(const Core::MimeType &mimeType)
if (!definition.isNull() && definition->isValid()) {
highlighter->setDefaultContext(definition->initialContext());
- m_commentDefinition.setAfterWhiteSpaces(definition->isCommentAfterWhiteSpaces());
- m_commentDefinition.setSingleLine(definition->singleLineComment());
- m_commentDefinition.setMultiLineStart(definition->multiLineCommentStart());
- m_commentDefinition.setMultiLineEnd(definition->multiLineCommentEnd());
+ m_commentDefinition.isAfterWhiteSpaces = definition->isCommentAfterWhiteSpaces();
+ m_commentDefinition.singleLine = definition->singleLineComment();
+ m_commentDefinition.multiLineStart = definition->multiLineCommentStart();
+ m_commentDefinition.multiLineEnd = definition->multiLineCommentEnd();
setCodeFoldingSupported(true);
}
diff --git a/src/plugins/texteditor/tabsettingswidget.cpp b/src/plugins/texteditor/tabsettingswidget.cpp
index 428f76250c4..2ce5756437e 100644
--- a/src/plugins/texteditor/tabsettingswidget.cpp
+++ b/src/plugins/texteditor/tabsettingswidget.cpp
@@ -121,16 +121,4 @@ void TabSettingsWidget::setCodingStyleWarningVisible(bool visible)
ui->codingStyleWarning->setVisible(visible);
}
-void TabSettingsWidget::changeEvent(QEvent *e)
-{
- QWidget::changeEvent(e);
- switch (e->type()) {
- case QEvent::LanguageChange:
- ui->retranslateUi(this);
- break;
- default:
- break;
- }
-}
-
} // namespace TextEditor
diff --git a/src/plugins/texteditor/tabsettingswidget.h b/src/plugins/texteditor/tabsettingswidget.h
index d4074ba589b..802a7933ca9 100644
--- a/src/plugins/texteditor/tabsettingswidget.h
+++ b/src/plugins/texteditor/tabsettingswidget.h
@@ -66,9 +66,6 @@ signals:
void settingsChanged(const TextEditor::TabSettings &);
void codingStyleLinkClicked(TextEditor::TabSettingsWidget::CodingStyleLink link);
-protected:
- void changeEvent(QEvent *e);
-
private slots:
void slotSettingsChanged();
void codingStyleLinkActivated(const QString &linkString);
diff --git a/src/plugins/texteditor/texteditor.qbs b/src/plugins/texteditor/texteditor.qbs
index 099937ad0e2..28451cae8df 100644
--- a/src/plugins/texteditor/texteditor.qbs
+++ b/src/plugins/texteditor/texteditor.qbs
@@ -268,7 +268,7 @@ QtcPlugin {
]
}
- ProductModule {
+ Export {
Depends { name: "Find" }
Depends { name: "Locator" }
}
diff --git a/src/plugins/vcsbase/basecheckoutwizardpage.cpp b/src/plugins/vcsbase/basecheckoutwizardpage.cpp
index efceff420ff..9091829b269 100644
--- a/src/plugins/vcsbase/basecheckoutwizardpage.cpp
+++ b/src/plugins/vcsbase/basecheckoutwizardpage.cpp
@@ -230,18 +230,6 @@ void BaseCheckoutWizardPage::slotDirectoryEdited()
slotChanged();
}
-void BaseCheckoutWizardPage::changeEvent(QEvent *e)
-{
- QWizardPage::changeEvent(e);
- switch (e->type()) {
- case QEvent::LanguageChange:
- d->ui.retranslateUi(this);
- break;
- default:
- break;
- }
-}
-
bool BaseCheckoutWizardPage::isComplete() const
{
return d->m_valid;
diff --git a/src/plugins/vcsbase/basecheckoutwizardpage.h b/src/plugins/vcsbase/basecheckoutwizardpage.h
index 70cb25bd545..d68293d4ac9 100644
--- a/src/plugins/vcsbase/basecheckoutwizardpage.h
+++ b/src/plugins/vcsbase/basecheckoutwizardpage.h
@@ -75,8 +75,6 @@ public:
bool isBranchSelectorVisible() const;
protected:
- void changeEvent(QEvent *e);
-
void setRepositoryLabel(const QString &l);
void setDirectoryVisible(bool v);
void setBranchSelectorVisible(bool v);
diff --git a/src/plugins/vcsbase/checkoutprogresswizardpage.cpp b/src/plugins/vcsbase/checkoutprogresswizardpage.cpp
index da8e500bb86..9266a309e4a 100644
--- a/src/plugins/vcsbase/checkoutprogresswizardpage.cpp
+++ b/src/plugins/vcsbase/checkoutprogresswizardpage.cpp
@@ -124,17 +124,5 @@ bool CheckoutProgressWizardPage::isComplete() const
return m_state == Succeeded;
}
-void CheckoutProgressWizardPage::changeEvent(QEvent *e)
-{
- QWizardPage::changeEvent(e);
- switch (e->type()) {
- case QEvent::LanguageChange:
- ui->retranslateUi(this);
- break;
- default:
- break;
- }
-}
-
} // namespace Internal
} // namespace VcsBase
diff --git a/src/plugins/vcsbase/checkoutprogresswizardpage.h b/src/plugins/vcsbase/checkoutprogresswizardpage.h
index fde7a6e784a..87136507ed6 100644
--- a/src/plugins/vcsbase/checkoutprogresswizardpage.h
+++ b/src/plugins/vcsbase/checkoutprogresswizardpage.h
@@ -64,9 +64,6 @@ private slots:
void slotFailed(const QString &);
void slotSucceeded();
-protected:
- void changeEvent(QEvent *e);
-
private:
Ui::CheckoutProgressWizardPage *ui;
QSharedPointer<AbstractCheckoutJob> m_job;
diff --git a/src/plugins/vcsbase/cleandialog.cpp b/src/plugins/vcsbase/cleandialog.cpp
index fd921e2e2f2..ed8a46bd78f 100644
--- a/src/plugins/vcsbase/cleandialog.cpp
+++ b/src/plugins/vcsbase/cleandialog.cpp
@@ -308,18 +308,6 @@ void CleanDialog::updateSelectAllCheckBox()
}
}
-void CleanDialog::changeEvent(QEvent *e)
-{
- QDialog::changeEvent(e);
- switch (e->type()) {
- case QEvent::LanguageChange:
- d->ui.retranslateUi(this);
- break;
- default:
- break;
- }
-}
-
} // namespace VcsBase
#include "cleandialog.moc"
diff --git a/src/plugins/vcsbase/cleandialog.h b/src/plugins/vcsbase/cleandialog.h
index 374131d0875..4078030c8f6 100644
--- a/src/plugins/vcsbase/cleandialog.h
+++ b/src/plugins/vcsbase/cleandialog.h
@@ -55,9 +55,6 @@ public:
public slots:
void accept();
-protected:
- void changeEvent(QEvent *e);
-
private slots:
void slotDoubleClicked(const QModelIndex &);
void selectAllItems(bool checked);
diff --git a/src/plugins/vcsbase/submiteditorwidget.cpp b/src/plugins/vcsbase/submiteditorwidget.cpp
index 2ceb8770bc6..928a8110f24 100644
--- a/src/plugins/vcsbase/submiteditorwidget.cpp
+++ b/src/plugins/vcsbase/submiteditorwidget.cpp
@@ -517,18 +517,6 @@ QString SubmitEditorWidget::cleanupDescription(const QString &input) const
return input;
}
-void SubmitEditorWidget::changeEvent(QEvent *e)
-{
- QWidget::changeEvent(e);
- switch (e->type()) {
- case QEvent::LanguageChange:
- d->m_ui.retranslateUi(this);
- break;
- default:
- break;
- }
-}
-
void SubmitEditorWidget::insertTopWidget(QWidget *w)
{
d->m_ui.vboxLayout->insertWidget(0, w);
diff --git a/src/plugins/vcsbase/submiteditorwidget.h b/src/plugins/vcsbase/submiteditorwidget.h
index 1da9e9cd573..7860eb42c04 100644
--- a/src/plugins/vcsbase/submiteditorwidget.h
+++ b/src/plugins/vcsbase/submiteditorwidget.h
@@ -119,7 +119,6 @@ private slots:
protected:
virtual QString cleanupDescription(const QString &) const;
- virtual void changeEvent(QEvent *e);
virtual QString commitName() const;
void insertTopWidget(QWidget *w);
void hideDescription();
diff --git a/src/plugins/vcsbase/vcsbaseeditor.cpp b/src/plugins/vcsbase/vcsbaseeditor.cpp
index 105daaceaf4..ecf43b20056 100644
--- a/src/plugins/vcsbase/vcsbaseeditor.cpp
+++ b/src/plugins/vcsbase/vcsbaseeditor.cpp
@@ -145,8 +145,6 @@ class VcsBaseEditor : public TextEditor::BaseTextEditor
public:
VcsBaseEditor(VcsBaseEditorWidget *, const VcsBaseEditorParameters *type);
- bool duplicateSupported() const { return false; }
- Core::IEditor *duplicate(QWidget * /*parent*/) { return 0; }
Core::Id id() const { return m_id; }
bool isTemporary() const { return m_temporary; }
diff --git a/src/plugins/vcsbase/vcsbasesubmiteditor.cpp b/src/plugins/vcsbase/vcsbasesubmiteditor.cpp
index 3383b72f357..d71c8866f9a 100644
--- a/src/plugins/vcsbase/vcsbasesubmiteditor.cpp
+++ b/src/plugins/vcsbase/vcsbasesubmiteditor.cpp
@@ -400,16 +400,6 @@ void VcsBaseSubmitEditor::setCheckScriptWorkingDirectory(const QString &s)
d->m_checkScriptWorkingDirectory = s;
}
-bool VcsBaseSubmitEditor::duplicateSupported() const
-{
- return false;
-}
-
-Core::IEditor *VcsBaseSubmitEditor::duplicate(QWidget * /*parent*/)
-{
- return 0;
-}
-
Core::Id VcsBaseSubmitEditor::id() const
{
return d->m_parameters->id;
@@ -447,16 +437,6 @@ QWidget *VcsBaseSubmitEditor::toolBar()
return d->m_toolWidget;
}
-QByteArray VcsBaseSubmitEditor::saveState() const
-{
- return QByteArray();
-}
-
-bool VcsBaseSubmitEditor::restoreState(const QByteArray &/*state*/)
-{
- return true;
-}
-
QStringList VcsBaseSubmitEditor::checkedFiles() const
{
return d->m_widget->checkedFiles();
diff --git a/src/plugins/vcsbase/vcsbasesubmiteditor.h b/src/plugins/vcsbase/vcsbasesubmiteditor.h
index a12e9e7c625..adf27dd39bc 100644
--- a/src/plugins/vcsbase/vcsbasesubmiteditor.h
+++ b/src/plugins/vcsbase/vcsbasesubmiteditor.h
@@ -116,16 +116,11 @@ public:
Core::IDocument *document();
QString displayName() const;
void setDisplayName(const QString &title);
- bool duplicateSupported() const;
- Core::IEditor *duplicate(QWidget *parent);
Core::Id id() const;
bool isTemporary() const { return true; }
QWidget *toolBar();
- QByteArray saveState() const;
- bool restoreState(const QByteArray &state);
-
QStringList checkedFiles() const;
void setFileModel(SubmitFileModel *m, const QString &repositoryDirectory = QString());