These re-implementations are conceptually "too specific". Rather let
the indiviual tools handle there expectations themselves.
Change-Id: I0bbea407b2241816a40d19eb1dbb0a7589cbda7b
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
Instead, use the one in its (Standard)Runnable.
The change is mechanical except to the fallback to the project directory
which was introduced in 8150209f to keep some compatibility with the previous
setup of the Android runner which created and copied the fallback value around
and ignored it in the end. Not producing the fallback value is less effort.
Change-Id: Ie04da570f0f9fbc1d048f2eacaed522f7253afa3
Reviewed-by: hjk <hjk@theqtcompany.com>
... with a lot potential to code consolidation.
Change-Id: I4d3a7fcc1cc6ae8763799f18cf9701695f387791
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
The functionality can be provided by producing a suitable Runnable
in the derived classes directly.
Change-Id: I7b8e8fe33fffd2b00176b6cf6633eca4e152e466
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
We want to do acquiringDone(), no matter if the app died or not.
Otherwise we wait forever for more data to arrive if the app has not
died.
Change-Id: Iad807ad75d7b8aba899211497586e5324124d16a
Reviewed-by: hjk <hjk@theqtcompany.com>
Most of them need a run configuration. It's better to pass the
right one than to use various hacky ways to work around it.
Change-Id: Ic21b0ef33bdd79b526b1e1a1ead5ca87d9f32c4d
Reviewed-by: hjk <hjk@theqtcompany.com>
Remove unneeded function arguments, Qt 5 connects etc.
Change-Id: I95faf80e7b5ccc574e2457b841f7913bc2aa05d3
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
... into AnalyzerRunnable and AnalyzerConnection and use the
RunControl's storage instead of an own copy in AnalyzerRunControl.
This is an intermediate step on the way to remove
AnalyzerStartParameters.
Change-Id: Iee7c38781b2fd6ef030dcdada1993684cbb34c74
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
We want to distinguish between source files and generated files. So
let's call them by their names.
Change-Id: I324c4b82ca7fb7d8d0e175ea6c4f14f1306ec929
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
* SysRoot can always be determined from kit.
* Pass around RunMode as extra parameter
not as part of AnalyzerStartParameters.
That's closer to the pattern used elsewhere.
* Environment was always initialized from the runconfig's
EnvironmentAspect. The tools can do that directly.
* Provide setter for display name for cases where
it is not equal to RunConfiguration::displayName
Change-Id: I811a0d7cdeb55cc37a16a593b3942abb567a2150
Reviewed-by: BogDan Vatra <bogdan@kdab.com>
Reviewed-by: Ulf Hermann <ulf.hermann@theqtcompany.com>
This removes the need to pass the QmlProfilerTool instance to all views.
QmlProfilerTool is exported so that we can access the common actions
from plugins.
Change-Id: Ie7072c23ef35763b729f4b87acce47ecbdb76e43
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
You don't see the range you are limiting to in the statistics view, so
I doubt that anyone has ever understood what this does.
Change-Id: Ic9da3c1ac067f76d239a931d316a69a3999884a4
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
It is only used for the statistics view.
Change-Id: I71027dd864715b4a2f95c2b11af0c0d83c514229
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
Someone had already prepared it years ago, but forgot to wire up the
details.
Change-Id: I895bf34694f134eb9526cea98fe08f91b6b9d808
Task-number: QTCREATORBUG-15442
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
Whenever we create the connection we as well try connectToHost()
immediately instead of deferring it until the next timeout. The
else branch in tryToConnect() would never be executed because if
the connection is there and not connecting or connected, then
the socketState must be != ConnectedState.
Change-Id: I6736b35348671961fbb3a48edb5e9c6c1d7ce915
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
Sometimes it takes very long to establish a TCP connection to the debug
server. If the connection hasn't been established after 200ms we
probably don't want to wait for it any longer. If, however, the TCP
connection is there and the "hello" hasn't arrived yet, we keep the
connection in order not to trigger an unexpected state in the
application.
Change-Id: I1a64493fefc759f526cdebff434a2557077f9246
Task-number: QTCREATORBUG-15383
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
The device can exist without being open, which makes the disconnect()
when the message box finishes ineffective. Also, disconnect() merely
trashes the signals and slots, but doesn't remove the device.
Task-number: QTCREATORBUG-15383
Change-Id: I8eb8ca3db496c9841156c0949c3e3bfd92329056
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
Instead of describing icons via file name or in the themed icons case
via
a string that is a list of mask/color pairs, we have now a class for it.
Icons are now listed in per-plugin *icons.h headers.
RunControl::m_icon was The only place left where an icon property was in
fact a string. This patch changes that member to be a Utils::Icon.
Change-Id: Ibcfa8bb25e6d2e330c567ee7ccc0b97ead603177
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
If we've parsed an error message from the application's stderr we can
stop trying to connect.
Change-Id: I8d58e5db19de3253681c52be1637cfddfd46a519
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
Otherwise some engine can stop recording by sending a "Complete" event
and that will be the state we send to any new engines, although the
recording button was checked when the recording started.
Also, don't redirect state changes and the associated recording state
sending through a signal and slot. This allows us to remove the
"enabled" property of QmlProfilerTraceClient and adapt the signature
of sendRecordingStatus() to facilitate the redirection of newEngine()
through the client manager.
Task-number: QTCREATORBUG-13317
Change-Id: Ie9dc6785eb761514bc96aaf5724f7b23d3c2932e
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
In particular, they can also occur if we're not AcquiringData.
Change-Id: Ia310206ee15973fc5b2fa1c607d7c9a48b6f435f
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
This removes the need to receive messages from the application via
stderr. The "Connecting to socket" is still parsed, but only for
diagnostic purposes. If it doesn't arrive, the profiling will still
work.
Change-Id: I022691293da2a1e671ba1263bc76e4044bf1a5b7
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
We have tcp, local, and native by now. We have to expose that in a
clean way.
Change-Id: I0ce7be693aa7f47ebea7abe435a224a176b6c94b
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
There is no point in sending two signals for every state change and
error. Also, the signals only reflect events in the socket, not in the
logical connection.
Change-Id: I617a925c69164aa1a02a7781b9da7dca55daa304
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
This is to adopt the naming to the code in src/qmldebug in
qtdeclarative. Once we can require a version of Qt that has qmldebug
for building QtCreator we can then remove our own version of this code.
Change-Id: I573f0703871b5812789c5c7a6287567d5c2875e6
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
It seems we cannot use them, yet.
Change-Id: Ie5b0fd7daffbdc46992fc040448058dbde4b7209
Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
If the trace time hasn't been set yet, decreaseStartTime and
increaseEndTime should still do something.
Change-Id: I626c0df66a5d7327708ada77c78546ad4aafc52b
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
A separate model will show them in the timeline for better orientation.
Change-Id: I537bac82ddef6a8bcc64ae403731512f8edcc9db
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
The restriction to put all strings in the type data is becoming a
burden to further enhancements. Also, introduce proper ctors for all
event structs.
Change-Id: I42d3bac96155ac1ac183a2b82785ce0396c5a932
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>