Also, remove categoryTitles() which isn't used anywhere.
Change-Id: I919abf1221fb71d407eb04190d27180ed39b7b45
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
A numerical representation of "state" is not so useful after all.
Change-Id: I7fc3ae08a2fd44000b5543f4ba25730a8d79358d
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
It's unused and there is no point in having it as you can retrieve the
time span from zoomControl
Change-Id: I474ecf4ee6c183ac8b97bbac9c47618f52d956c0
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
The fact that the separate JavaScript view only works with versions of
Qt that use the V8 JavaScript engine is frequently confusing users.
JavaScript events for newer versions of Qt are integrated into the
Events and Timeline views, making the separate JavaScript view obsolete.
For those users who already know it and who are still using Qt 5.0 and
5.1 "V8" will be recognizable. For others "V8" won't mean anything and
they'll ignore it.
Change-Id: Iac0d89db24a3677e47b978a152cfc25c01f9c2b6
Task-number: QTCREATORBUG-12766
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@digia.com>
Reviewed-by: Robert Loehning <robert.loehning@digia.com>
The width of the flickable element may be different from the width of
the timeline renderer because the flickable can have a scrollbar. This
is the same principle as in b3348daefd .
Change-Id: Ife0064c4226ecff0e99d3d6aaf7a104b3c46e751
Task-number: QTCREATORBUG-12822
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
Language::Enum -> QmlDialect
* class instead of enum
* moved Language specific operations to it (from Document)
* nicer handling
QStringList -> PathsAndLanguages
* store language along with path, to perform a correct scan and improve
path handling
Change-Id: If69d35c63cfeb48aa670b51870916cd0c40f1916
Reviewed-by: Thomas Hartmann <Thomas.Hartmann@digia.com>
Will be promoted to dockwidget title by the fancy mainwindow.
Change-Id: Idbb4d2869c254140a241cd5a8f5b75b3ef739692
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
You could enable the select-on-hover mode by clicking in an empty time
line, even though the buttons bar was disabled. You could also trigger
various bad behavior by clearing the view and restarting the profiler.
Properly initializing and clearing all members, and sending change
signals on clearing helps with that.
Change-Id: Ie7df80a52daaf166c3a4adb2eb1f28a59c21df57
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
If we use different x and width parameters in JavaScript and C++ we
introduce numerical instability which leads to visual glitches.
Change-Id: I352f3e8365ca52d135230343c2f034332ec71323
Task-number: QTCREATORBUG-12648
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
- Build the displayname from the location only once per event
- Make sure Qt4 paint events show the "GUI Thread" label
- Remove useless "Animations" displayName. It isn't shown anywhere.
Task-number: QTCREATORBUG-12496
Change-Id: I823676499670fc019b5dbf225668f833d17076b8
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
The whitelisting doesn't actually do anything useful. The trace writer
uses a generic method to save range events and only needs specific code
for non-ranges. The compile time checks for the sizes of MESSAGE_STRINGS
and RANGE_TYPE_STRINGS make sure that you can't accidentally leave some
event type unimplemented. The calculation of measured times is obsolete,
too, as the only code the trace writer is called from also sets the
trace time.
Change-Id: Id431630114cb0a0247b774f10874c5caff761436
Task-number: QTCREATORBUG-12496
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
Events should be walked in the order of their start time, not end time.
Change-Id: Id9f9746958dbfbdc28424c34b3ca1f5e4b9ff373
Task-number: QTCREATORBUG-12634
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
In the rare case that a new item is not appended but inserted in the
middle of already existing data, the end times were confused. On that
occasion, also add a note explaining how the indices work,
Change-Id: I587b8285cd5482a9ffb1592302b442192e5944b8
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
SortedTimelineModel only works with perfectly nested ranges. Specify
what that means so that we don't stumble over it for the (n+1)th time.
Change-Id: I77f276ba9152fb023d875d0f326e7d646945d3a7
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
Add all the missing bits and actually use the filename for sorting.
Change-Id: Icc2a07d297fe17423aa23bf58a602dfa0dcf5a87
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
Don't accidentally reuse the EventViewItem class from the events view,
drop the column number as it's always -1, and actually use the file name
for sorting instead of random junk. Also add all the missing bits
necessary for sorting all tables by any column and drop the hash string
as it's useless.
Change-Id: I26dcdd229f1f1ef18f68edcb6edfb0427a2e2e6f
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
The first element in the expandedRowTypes is always -1 as that is the
empty row. Don't try to retrieve its type.
Change-Id: I1a4b59e0de6638201485d503e3be05afddf625fb
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
"Animations" is a much better name as that's what it actually shows. It
also serves to distinguish from the QtQuick 1 only "Painting" category
that really does show the time QPainter took to paint the scene.
Hiding the "Animations" category when profiling QtQuick 1 makes no
sense as we also don't hide the JavaScript category or any of the
commercial addons which are only available from QtQuick 2. As QtQuick 1
is deprecated we keep hiding the Painting category when profiling
QtQuick 2 to reduce clutter in the UI for the more common case.
Change-Id: I0e14fab8abf427dc1abb6d00874e7e4af0fa30e5
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@digia.com>
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
Like this you can see if the frame rate is low, even if there aren't
many animations.
Change-Id: Ib9c759278d4c5e7e4bff94737e2ced87791f2e4b
Task-number: QTCREATORBUG-12589
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
The "<bytecode>" and "Source code not available" labels should not be
added to the model as otherwise they end up in trace files. Instead the
view should show them instead of empty strings where it makes sense.
Change-Id: I37a0c8468ead0194771556d9276c24cb7f05c061
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
Currently we pass in some places by value, elsewhere by const ref and
for some weird reason also by const value in a lot of places. The latter
is particularly annoying, as it is also used in interfaces and therefore
forces all implementors to do the same, since leaving the "const" off is
causing compiler warnings with MSVC.
Change-Id: I65b87dc3cce0986b8a55ff6119cb752361027803
Reviewed-by: hjk <hjk121@nokiamail.com>
It's not a good idea to copy the event location for every single lookup
and there is not point in always reconstructing the label strings,
either.
Change-Id: I2cea8a2a93b31d2c32bd2a27ae1d3b0bd26df6f6
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
Like that we get a higher chance of staying compatible with Qt < 5.2.
Change-Id: Iecd6e1fbf75bd610917a38a22635a0d8e731738f
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
It's considered bad style to access properties of parent objects
defined in a different component as that reduces code reusability.
Change-Id: I0dbe4a3663026d12b2666de75c93841528fe295c
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
They had been lost somewhere between QtCreator 2.8 and 3.0. Also
putting the location in braces looks nicer than the original.
Change-Id: Ia455ba99015ad38c21e528a0f8177902749ba1d5
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
If you resize the rows to at least double their default size and if the
model specifies a scale it will be drawn as additional horizontal lines
and numbers in the background.
Change-Id: I02844b4102e043031ee04daa45666dc3f8da1d2e
Task-number: QTCREATORBUG-12337
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
Like that we can provide functionality to interactively resize rows in
the model so that one can zoom in to more interesting parts.
Change-Id: I31f14cd8aa37703240ebec744ca2e77188fb0f27
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
This string crops up in far too many places where it's not supposed to
be. If we really need it we should add it to the views in the exact
places where we want it instead of writing it into the model.
Change-Id: I5f17a2aead7f6c2d42f485bf629baaf759e90547
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
Sending a signal for every model when clearing or loading data is not
very smart.
Change-Id: Ifc81d74f6b7f93bcd6748a919dfb553050b8d725
Reviewed-by: Kai Koehne <kai.koehne@digia.com>