Commit Graph

1054 Commits

Author SHA1 Message Date
Alessandro Portale
b8bdc6f669 Icon refresh: First step towards the new Qt Creator themes
http://blog.qt.io/blog/author/didesous/ announced new designs/themes
for Qt Creator. This patch replaces many of the existing toolbar icons
with recolorizable masks for better theming support.

Change-Id: I557aa485205fe2624f33724226f698c303342b40
Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
Reviewed-by: Alessandro Portale <alessandro.portale@theqtcompany.com>
2015-10-23 16:04:52 +00:00
hjk
525c33f999 Debugger: Infrastructure for reworked native mixed debugging
- Remove old experimental native mixed approach.
- Move some common stack parsing to Stackhandler.
- Mark gdbbridge.py debug output explicitly to remove it
  from actual reponse handling

New native mixed needs QtDeclarative changes and
QTC_DEBUGGER_NATIVE_MIXED=1 for now.

Change-Id: I09eed1da51cea878636d36756015b7bfaed34203
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2015-10-09 05:19:45 +00:00
hjk
1f380798b6 Debugger: Allow terminals for sessions started from command line
Change-Id: I43751fa90e54cd1d93b97822568d21c90118fb23
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2015-09-04 10:05:51 +00:00
hjk
129ea2119f Debugger: Pass system environment to sessions started on command line
Processes started with 'qtcreator -debug binary' got an empty
environment at startup, including no DISPLAY etc.

Change-Id: I0c574a3fa25faf18ddf10a6448b0b82c4f04f751
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2015-09-04 10:05:11 +00:00
Eike Ziller
3b1a966cc8 Merge remote-tracking branch 'origin/3.5'
Change-Id: Iebaabfc2f724cd493b7cab025406531cea5cd2dc
2015-09-01 12:57:51 +02:00
Daniel Teske
b82311024d Open Project: Don't show a error dialog for duplicated projects
Instead, switch to edit mode, show sidebar, scroll to project,
and show a tooltip next to the project.

The tooltip is somewhat easy to miss, but this is a clear improvement
in most cases.

Change-Id: Icd27f76e7d434f33e731b6fd56473ff913986a89
Task-number: QTCREATORBUG-8422
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
2015-08-24 11:29:09 +00:00
hjk
9bd066cb94 Debugger: Always disable wait indicator when switching engines
The spinning wait indicator in the Locals view could go on infinitely
when the running debugger engine did not get a 'notifyUpdateFinished'
signal (e.g. if the engine quits between beginning and ending an update
cycle).

Change-Id: Ib3d7a88d3b89ed423b2d41e85a632ff01f91c155
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
2015-08-24 10:21:32 +00:00
hjk
e863393355 Debugger: Suggest a non-empty name when saving scratch buffers
The user needs some clue what buffer is about to be saved,
even if this is not a real file name.

Task-number: QTCREATORBUG-14602
Change-Id: I7d81a50079d8aa1a3b2ba63130d54515667a6663
Reviewed-by: Niels Weber <niels.weber@theqtcompany.com>
Reviewed-by: Robert Loehning <robert.loehning@theqtcompany.com>
2015-07-22 13:41:01 +00:00
hjk
d765cd73a2 Debugger: Recognize source data within disassembler view
... and use it to toggle breakpoints by file and line,
and for jumping to file and line.

Task-number: QTCREATORBUG-14278
Change-Id: I799d085eb53339905ea3608022aeae5a9aef1fda
Reviewed-by: Niels Weber <niels.weber@theqtcompany.com>
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2015-07-22 11:46:32 +00:00
hjk
e5f76153b9 Debugger: Fix use of server start script
... when using Debug->Start->Attach to Running Debug Server

Task-number: QTCREATORBUG-14747
Task-number: QTCREATORBUG-7459
Change-Id: I98c3d4f2d565d972369f2716ff2b72b4d3d04b2b
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2015-07-21 09:35:45 +00:00
hjk
db80d20f30 Debugger: Restrict LocationMark dragging
... to engines that actually support JumpToLine and make it
work in disassembler views.

Change-Id: I10368ea719587caa7c4f33665eff57c2bf300d84
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2015-07-21 07:38:19 +00:00
BogDan Vatra
2182ded57b ProjectExplorer: Use Core::Id as RunMode "enum values"
This provides a way for third-party plugins to implement run
modes without the need to add a value to the central enum or
using manual workarounds like RunMode(*(int*)&someUniqueObject).

Instead of centrally defined enum values this uses Core::Id that could
be defined anywhere.

Change-Id: Ic350e3d8dbb8042c61b2d4ffec993ca151f53099
Reviewed-by: Daniel Teske <daniel.teske@theqtcompany.com>
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
2015-06-30 06:20:54 +00:00
hjk
1538dca81a Debugger: Continue DebuggerStartParameter cleanup
- Move sysRoot, debuggerCommand, targetAbi to DebuggerRunParameters,
  they are always the one coming from the kit.
- Move projectSource{Directory,Files} to DebuggerRunParameters,
  they are alway coming from the runConfiguration's project
- Pass RunConfiguration always as separate parameter, that's
  what related code does.

Change-Id: I9965a052237af53fa2d170701bc88b552cab12ed
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
2015-06-26 18:14:57 +00:00
Daniel Teske
59b57518f3 DebuggerRunParameters: Remove remoteSourcesDir, [remote|local]MountPoint
Those variables are unused except for debugging output since more than
1 year.

ed1483741e

Change-Id: I052fd042901401641c784eb66ab017a8f31f844e
Reviewed-by: hjk <hjk@theqtcompany.com>
2015-06-26 12:37:27 +00:00
hjk
60a8442d8c Debugger: Rework start parameter completion.
It's again a linear process now, with explicit entrance point for
all users.

Task-number: QTCREATORBUG-14618
Change-Id: I96c08947270ce34d7bc6c8be1d7f350dbfa14794
Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2015-06-25 12:13:35 +00:00
Jarek Kobus
684267179e Properly delete plugins dependent on failed plugin
Init all class member pointers to NULL.
This fixes possible crash on exit when dependent
plugin was not loaded (e.g. TextEditor was missing).
In this case plugin's constructor gets called,
initialize() method is _not_ called
and destructor gets called -> crash.

Properly delete dependent plugins on
a plugin which failed to initialize properly.

Fix labels of deleted plugins inside an error dialog
after pressing "Error Details" from "Installed Plugins"
dialog.

Change-Id: Iddc029a0f07dcba2501d734d142fb0e69e9383d3
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
2015-06-17 17:00:56 +00:00
hjk
ad6451bbe4 Debugger: Remove the InferiorExited state
There are now several possible orders of events between sending a 'kill'
and receiving something that indicated a properly shut down inferior.
Coordinating the InferiorExited state during engine ramp down is not
worthwhile as that state had only a forced transition to InferiorShutdownOk
anyway. For the user (and user code), only the fact that ramp down is
finished is interesting.

Change-Id: Ic22131d5a1066dc62bd069f532c28b773f231088
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2015-06-17 06:26:24 +00:00
hjk
5c054dd24a Debugger: Use TreeModel for threads
In preparation of the introduction of thread groups.

Change-Id: Iadac9203eb4d60d0bc930113c2776e65352ed304
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
Reviewed-by: David Schulz <david.schulz@theqtcompany.com>
2015-06-15 13:45:27 +00:00
hjk
77a9b6d875 Debugger: Hide the reverse debugging feature
It's still available with QTC_DEBUGGER_ENABLE_REVERSE=1, but
since it rarely ever does something useful, it's better not
exposed in the gui.

Change-Id: If571fcfd01579c53f792d799027dd9d9a93c1cf4
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2015-06-11 10:52:45 +00:00
hjk
f5548f4018 Debugger: Unexport DebuggerRunControlFactory
Change-Id: I0d7c3ba312f7242d14b9c7cf4fe7174325b518ca
Reviewed-by: David Schulz <david.schulz@theqtcompany.com>
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2015-05-29 09:49:39 +00:00
hjk
244cdb7804 Debugger: Split off runtime-only items from DebuggerStartParameters
Right now, DebuggerStartParameter is part of the debugger plugin
external interface. Better not make it fatter than necessary.

Change-Id: I3b9205089f971dd314ccba1335b5ca2d4d9fe7c6
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
Reviewed-by: David Schulz <david.schulz@theqtcompany.com>
2015-05-28 08:54:48 +00:00
Daniel Teske
7bc1af275d Debugger/Android: Add the Qt's qml directory as a search path
Change-Id: I5244eda989220aa2e2f8a225294d3c1dd0d97a2a
Task-number: QTCREATORBUG-13245
Reviewed-by: hjk <hjk@theqtcompany.com>
Reviewed-by: Daniel Teske <daniel.teske@theqtcompany.com>
2015-04-24 09:49:04 +00:00
hjk
b0977f8322 Debugger: Don't update watch view needlessly
Column width computation is not cheap.

Change-Id: I615e1f9888f32171c478bfa2be565a91d669e8a2
Reviewed-by: hjk <hjk@theqtcompany.com>
2015-03-27 10:05:06 +00:00
hjk
4b0731624f Debugger: Inline DebuggerPluginPrivate::{isDockVisible,mainWindow}
Change-Id: I1494d5ed0635768095ff78b61341b2339e885b3f
Reviewed-by: hjk <hjk@theqtcompany.com>
2015-03-20 13:15:31 +00:00
Orgad Shaneh
d9135665f0 Debugger: Fix removal of expression that ends with whitespace
* Start a debugging session
* Add an evaluated expression "(char*)foo "
* Delete the expression
* Press F10
* It reappears

Change-Id: I5c54ca6ab2f4be6c613880a2747e4aff653d15be
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2015-03-20 11:36:23 +00:00
hjk
13d425b972 Debugger: Re-enable watchers after ending a debugger run
In that state one should be able to remove them.

Change-Id: I9c1383decb087971cdc01607c32801f6ac22f99d
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2015-03-19 06:58:51 +00:00
Kai Koehne
3bf81efbe7 QML: Remove Apply on Save functionality
The feature has been actually been disabled since commit ac771eb552,
but now it's time to also remove the dead code ...

Fixing the feature and bringing it out of the experimental state
would require quite some effort that apparently nobody is willing
to spend. So it's better to remove it.

The enablers in the qmldebug library, as well as the QmlJSDelta utility
class in qmljs library, are left in though.

Change-Id: Idf98a2f946d0db86bef2f20d2349d6ffedba219c
Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
2015-03-18 11:24:41 +00:00
hjk
7d6fd6ce5e Debugger: inline DebuggerPluginPrivate::updateWatchersWindow
... into its only caller.

Change-Id: I5521bc92351eecea5154070d0ee0f229edafc51b
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2015-03-16 12:54:22 +00:00
Orgad Shaneh
17f2af5082 Fix parsing of filename with position when -client is used
Instead of transforming to absolute paths in the client, pass the
working directory and leave it to the target.

Change-Id: I4f8724c8857e89a7ee77116c78cf8b25c56795fa
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
2015-03-09 16:10:03 +00:00
Orgad Shaneh
7dd4093b18 Debugger: Remove dead store
Change-Id: I162d8db39755df1fe4b94b2dedfa83680f87a786
Reviewed-by: hjk <hjk@theqtcompany.com>
2015-03-09 08:36:12 +00:00
hjk
e79808a8f7 Debugger: Don't show a location marker in the mixed master engine
Task-number: QTCREATORBUG-14087
Change-Id: I7e8f116c97cdea0bd8234d060d068435229e6fc2
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2015-03-05 07:23:02 +00:00
Friedemann Kleint
54da18eaaa Clean exported headers of the Core plugin.
Change-Id: I26472d568844d5fee62323e01f5c5c12082d5450
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2015-03-05 07:18:14 +00:00
hjk
6288d2833b Debugger: Remove 'Remote' qualification from 'Debug Server'
While using the Debug Server typically does involve a remotely running
debug server (GDBServer or other stub) it's also possible and sometimes
useful to use it locally.

Change-Id: I7b041b14cc09d15ae3e6b501c9298f78764e256d
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@theqtcompany.com>
2015-03-03 14:10:25 +00:00
Nikita Baryshnikov
436ed7843d EditorManager: add optional uniqueId parameter
to return existent IEditor matching this uniqueId

Change-Id: I8199c39182d88d5496b0277d08896dfe32a52790
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
2015-02-27 13:48:41 +00:00
hjk
a66fe4b29e Core: Add an ActionContainer::addSeparator(Id) overload
This basically makes the Context parameter optional and default
to C_GLOBAL. Less noise on the user side.

Change-Id: Idaf1b83eabaf912450ab20bd5a8b613844bf69a2
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
2015-02-26 14:09:03 +00:00
Friedemann Kleint
fe2addf515 Clean exported headers of the TextEditor plugin.
Change-Id: I1e7dd34ba5a51fb0b34d137dc03add4457b32ed1
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2015-02-26 13:15:29 +00:00
hjk
7f001dab1b Core: Make Context parameter to registerAction optional
... and default to C_GLOBAL. A rather common case.
Similar for ActionContainer::addSeparator().

Change-Id: I7f9ba573af201c0a472132d5a494ad17cc4175b7
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
2015-02-26 10:09:03 +00:00
hjk
bf87fc9640 Debugger: Rework 'Attach to unstarted application' startup
Change-Id: I42c7ce8e413c850e05b02f5d6fe1b83376436c65
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2015-02-26 07:05:32 +00:00
hjk
592ffe7377 SettingsDialog: Remove CategoryId parameter from callers
PageIds are supposed to be unique, so the CategoryId can be determined
from the PageId. Look for PageIds in the already expanded categories
first before searching through expensive categories.

Change-Id: I006beb0df6183453163ac1810fe59a306a0f52b1
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
2015-02-24 13:52:00 +00:00
hjk
54ce123a26 ProjectExplorer: Add runStartupProject() convenience function
The usage pattern seems to be used often enough to justify a function.

Change-Id: Iecdeb2b42879f419154902e685d0d13e8cae8b33
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
Reviewed-by: Daniel Teske <daniel.teske@theqtcompany.com>
2015-02-23 11:01:56 +00:00
hjk
289e660fb7 Debugger: Simplify code to open disassembler view from context menu
Also, correct an off-by-one in column "computation" that always
resulted in "no function" here from the C++ model which assumes
column count starting at 1.

Change-Id: I9a34d4ffaaa25131d5a130c57ec10f1ce8e8a184
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2015-02-19 12:53:06 +00:00
Eike Ziller
5a3a940ad3 Use new mime database
Change-Id: I4305872b6b11ef3e8a364280ffa5209a5a793600
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
2015-02-17 13:00:07 +00:00
Eike Ziller
9926fc2ab1 Merge commit '3c85058694ee2e41658d17f524fb48f0b187d2fe'
Conflicts:
	src/libs/utils/tooltip/tipcontents.cpp
	src/libs/utils/tooltip/tipcontents.h
	src/plugins/android/androiddeployqtstep.cpp
	src/plugins/baremetal/baremetalconstants.h
	src/plugins/baremetal/baremetaldevice.cpp
	src/plugins/baremetal/baremetaldevice.h
	src/plugins/baremetal/baremetaldeviceconfigurationwidget.cpp
	src/plugins/baremetal/baremetaldeviceconfigurationwidget.h
	src/plugins/baremetal/baremetaldeviceconfigurationwizard.cpp
	src/plugins/baremetal/baremetaldeviceconfigurationwizardpages.cpp
	src/plugins/baremetal/baremetaldeviceconfigurationwizardpages.h
	src/plugins/baremetal/baremetalplugin.cpp
	src/plugins/baremetal/baremetalplugin.h
	src/plugins/baremetal/baremetalruncontrolfactory.cpp
	src/plugins/baremetal/baremetalruncontrolfactory.h
	src/plugins/cppeditor/cppcodemodelinspectordialog.cpp
	src/plugins/cppeditor/cppdoxygen_test.cpp
	src/plugins/cppeditor/cppdoxygen_test.h
	src/plugins/debugger/breakpointmarker.cpp
	src/plugins/debugger/debuggeritemmodel.cpp
	src/plugins/debugger/debuggeritemmodel.h
	src/plugins/debugger/loadcoredialog.cpp
	src/plugins/genericprojectmanager/cppmodelmanagerhelper.cpp
	src/plugins/projectexplorer/addnewmodel.cpp
	src/plugins/projectexplorer/addnewmodel.h
	src/plugins/projectexplorer/jsonwizard/jsonfieldpage.cpp
	src/plugins/qmlprofiler/abstracttimelinemodel.cpp
	src/plugins/qmlprofiler/abstracttimelinemodel.h
	src/plugins/qmlprofiler/notesmodel.cpp
	src/plugins/qmlprofiler/qml/CategoryLabel.qml
	src/plugins/qmlprofiler/qml/MainView.qml
	src/plugins/qmlprofiler/qml/Overview.js
	src/plugins/qmlprofiler/qml/Overview.qml
	src/plugins/qmlprofiler/qml/TimeDisplay.qml
	src/plugins/qmlprofiler/qml/TimeMarks.qml
	src/plugins/qmlprofiler/qmlprofilertimelinemodelproxy.cpp
	src/plugins/qmlprofiler/sortedtimelinemodel.cpp
	src/plugins/qmlprofiler/sortedtimelinemodel.h
	src/plugins/qmlprofiler/timelinemodelaggregator.cpp
	src/plugins/qmlprofiler/timelinemodelaggregator.h
	src/plugins/qmlprofiler/timelinerenderer.cpp
	src/plugins/qmlprofiler/timelinerenderer.h
	src/plugins/qmlprojectmanager/QmlProjectManager.json.in
	src/plugins/texteditor/findinfiles.cpp
	src/plugins/vcsbase/vcsconfigurationpage.cpp
	src/shared/qbs
	src/shared/scriptwrapper/interface_wrap_helpers.h
	src/shared/scriptwrapper/wrap_helpers.h
	tests/auto/qmlprofiler/abstracttimelinemodel/tst_abstracttimelinemodel.cpp
	tests/system/suite_debugger/tst_debug_empty_main/test.py
	tests/system/suite_debugger/tst_qml_js_console/test.py
	tests/system/suite_debugger/tst_qml_locals/test.py

Change-Id: I67540b648f8b162496f4aa606b04d50c7c9125c6
2015-02-12 17:29:21 +01:00
hjk
f1c5889e77 Debugger: Some code modernization
Qt 5 signal/slot, a few auto.

Change-Id: Ia17f1b3dcd41dfe0a373c14e7c1d34d210d084f1
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2015-02-12 15:14:55 +00:00
Orgad Shaneh
4e8e75d88e Debugger: Remove unneeded qualifications
Mostly done using the following ruby script:
Dir.glob('**/*.cpp').each { |file|
  next if file =~ %r{src/shared/qbs|/qmljs/}
  s = File.read(file)
  s.scan(/^using namespace (.*);$/) {
    ns = $1
    t = s.gsub(/^(.*)\b#{ns}::((?!Const)[A-Z])/) { |m|
      before = $1
      char = $2
      if before =~ /"|\/\/|\\|using|SIGNAL|SLOT|Q_/
        m
      else
        before + char
      end
    }
    if t != s
      puts file
      File.open(file, 'w').write(t)
    end
  }
}

Change-Id: I1aa1a2b6ccbafeb1a8f3053fffa39b3f96992591
Reviewed-by: hjk <hjk@theqtcompany.com>
2015-02-04 08:52:39 +00:00
Orgad Shaneh
8b5dcc13c5 Replace QFileInfo::fileName() with FileName::fileName()
Change-Id: I4852ff215abf25649fc5eac1e922ae901839ca3d
Reviewed-by: hjk <hjk@theqtcompany.com>
2015-01-29 11:15:43 +00:00
Eike Ziller
3c85058694 Update License
Change-Id: I711d5fb475ef814a1dc9d2822740e827f3f67125
Reviewed-by: Alessandro Portale <alessandro.portale@digia.com>
2015-01-16 12:37:56 +01:00
hjk
3b2d2eae17 Debugger: Re-work breakpoint storage handling
The actual data is now in a TreeModel. As interface to
individual breakpoints there's a new Breakpoint class
essentially providing a checked handle.

On the user code side breakHandler()->foo(bpId) is
replaced by bp.foo().

Change-Id: I82f435bad6301fce85a1d82bf6bf39e9ddba511e
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2015-01-15 12:19:33 +01:00
Orgad Shaneh
c6a983d271 Core: Use FileName for file path in IDocument
Change-Id: I85f7398aee59d0d36f0e5c3bf88ff3c96002e394
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
2015-01-12 10:23:37 +01:00
Christian Stenger
082a4836ff Debugger: Further cleanup
Change-Id: I9c744202efe3af56f60fe5f09358d9b39e0eaafe
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-12-19 13:06:44 +01:00