Commit Graph

44854 Commits

Author SHA1 Message Date
Alessandro Portale
7591fc715c Git: Remove unneeded painter state save/restore
The QPainter::drawPixmap call does not modify the painter state.

Change-Id: I1cbae43e6531c9e3d2ae2d3cd1c2d77ce23c4c52
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2016-02-24 10:27:56 +00:00
Eike Ziller
a3c0f0f66a MapReduce refactoring and improvements
- QThread instead of std::thread for better integration with Qt
- Use thread pool for recycling threads
- Map and reduce functions are handled like any function passed
  to runAsync, so they either report results through the
  QFutureInterface, or through the return value.
- Automatically deduce the reduce result type

Change-Id: I7a31370c21f8c27b378cd87c3d5974b162449ce1
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
2016-02-24 10:17:57 +00:00
Alessandro Portale
36a61a9483 Git: Fix selection painting artifact in rebase dialog
avoid overlapping columns

Task-number: QTCREATORBUG-15770
Change-Id: I68862df8e8da0e850dc54f304279966188801029
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2016-02-24 10:09:11 +00:00
Alessandro Portale
034285d0d2 QtSupport: add "Qt.labs.controls" feature
And return 1.0 for Qt 5.6

Change-Id: Ie3e25484e20e04798e4f1277d584cbab35f31b47
Reviewed-by: J-P Nurmi <jpnurmi@theqtcompany.com>
Reviewed-by: Alessandro Portale <alessandro.portale@theqtcompany.com>
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
2016-02-24 09:48:30 +00:00
Thomas Hartmann
6f0787e55e QmlDesigner: AddSignalHandlerDialog should be modal
Change-Id: I8ca6e748e590f4c2e46641d3998722b47e0847dd
Reviewed-by: Thomas Hartmann <Thomas.Hartmann@theqtcompany.com>
2016-02-24 09:20:26 +00:00
Thomas Hartmann
4a94b3411a QmlDesigner: Signals of the form item are not prefixed
We cannot prefix the signals of the root item with the id.

Change-Id: I2be656492ae1eb1eef6fcf60821990a04aad985a
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
2016-02-24 09:17:50 +00:00
Thomas Hartmann
a9cf2dec8c QmlDesigner: Hide private signals
Hide private signals starting with "__" (convention)
and avoid duplicates.

Change-Id: If044cfc1e495a895515bae1baff430f0f91917fd
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
2016-02-24 09:17:44 +00:00
Thomas Hartmann
6bb916c451 QmlDesigner: Add alias export to node
Change-Id: Ifa7ae959f6aa4622549e5c32a5df14893124c1b6
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
2016-02-24 09:17:36 +00:00
Thomas Hartmann
3243d1406a QmlDesigner: Adding alias export related functions to QmlObjectNode
Both function are useful also outside of the navigator.

* void ensureAliasExport();
* bool isAliasExported() const;

Change-Id: I46331cae01573e990b5d1a03095c2903dbc95665
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
2016-02-24 09:17:30 +00:00
Thomas Hartmann
624e63a137 QmlDesigner: Improving gotoImplementation
The designer will now jump to an existing signal handler.
If no signal handler does exist a dialog that allows to
add a new one is opened.

Task-number: QTCREATORBUG-14815
Change-Id: Iefdbec0aa8c2aeca95a0eb4c6b24d84adc357654
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
2016-02-24 09:17:18 +00:00
Thomas Hartmann
371a80bdfa QmlDesigner: Adding AddSignalHandlerDialog
This is a dialog that lets the user choose a possible signal handler.

Change-Id: I22192edf130a96b3b9ffd69346f4df60f4870a69
Reviewed-by: Thomas Hartmann <Thomas.Hartmann@theqtcompany.com>
2016-02-24 09:16:50 +00:00
Thomas Hartmann
8810d9d050 QmlDesigner: Adding FindImplementation visitor
This patch implements a visitor that looks for signal handlers.
We specify a file, a type name and an id.

The visitor is checking for signal handlers like this:

filename.qml:

TypeName {
  id.onAnySignal: {}
}

Change-Id: I35c7dd840c7c7298d393bf131c50b206b2f2544c
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
2016-02-24 09:13:03 +00:00
Eike Ziller
74cdce071f Merge remote-tracking branch 'origin/3.6'
Conflicts:
	src/shared/qbs
	tests/manual/proparser/main.cpp

Change-Id: I13654bf10c14eb6b1d6805fe86b67ac73b2e4d75
2016-02-24 10:08:37 +01:00
Orgad Shaneh
eaffeb081e Utils: Filter by prefix in HistoryCompleter
It's hard to find entries in long lists when they're not filtered.

Change-Id: I4172b7f4d8d99c61f2e48232f655bf4ffbae34fd
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
2016-02-24 07:52:56 +00:00
Dmytro Poplavskiy
51edace421 Fixed segfault in SshKeyExchange due to using object after deletion
m_dhKey pointer has been used for debug output just after
resetting it to nullptr.

Change-Id: I1aa4e16b19c7a16738b7734423277cf7eecd8054
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
2016-02-24 00:38:24 +00:00
Christian Stenger
466bf485b0 TextEditor: Fix compile on OSX
Change-Id: I0ed48bc18489a59b0205f56a89b84e9e21fe29ca
Reviewed-by: David Schulz <david.schulz@theqtcompany.com>
2016-02-23 13:41:54 +00:00
Christian Stenger
a73c824083 TextEditor: Fix compile for Qt < 5.5
Change-Id: I653d76452289a91fdb069be14dd2c8816f856306
Reviewed-by: Marco Bubke <marco.bubke@theqtcompany.com>
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2016-02-23 11:45:06 +00:00
Marco Bubke
b21b5bb2ae TextEditor: Add mixins for font settings
You can only set one text style but in many cases like
Function and Declaration it would be nice if they could be merged.

Change-Id: Icda892057b79eef1bea2fa8b2c5f0f7cbc5f518a
Reviewed-by: David Schulz <david.schulz@theqtcompany.com>
2016-02-23 08:44:07 +00:00
Orgad Shaneh
d7a43eaa18 Tests: Build clang unit tests when clang is enabled
Change-Id: Ia3a07f73bd39304bb4bf1b67cb662499792fa2ca
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
Reviewed-by: Marco Bubke <marco.bubke@theqtcompany.com>
2016-02-22 15:57:41 +00:00
Orgad Shaneh
0c575700cb Clang: Fix highlighting of variables in lambda capture
void func() {
    const int var = 42;
    auto lambda = [var](int input) { // var is not highlighted
        return var + input;
    };
}

Change-Id: I95a5732ab8391e1232894e419b081c729e2d1ba1
Reviewed-by: Marco Bubke <marco.bubke@theqtcompany.com>
2016-02-22 15:38:42 +00:00
Marco Bubke
0f61908ab0 Utils: Add sized array
Sometimes you need a very small array which has a size and max size.
QVarLengthArray is simular but has some size and run time overhead and it
has no max size. It will instead malloc. So this array is for very small
collections under 256 values which never allocate and have only a size
overhead of a byte.

Change-Id: Ia392c750d566c4accc6077c3dc4d9d4ae501e599
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
2016-02-22 14:53:12 +00:00
Orgad Shaneh
c632ce44f7 Qbs: Improve performance even further...
setupFolder is called recursively...

Change-Id: Ief1d1d45294a3821f5496d832a2130a8ff779f44
Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
2016-02-22 14:00:10 +00:00
Thomas Hartmann
0642c10512 QmlDesigner: Adding manual test for dummy data
This is a small project that tests the dummydata feature.

Change-Id: I710ec6ac8ebf86c85a155a812e581cca88845666
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
Reviewed-by: Thomas Hartmann <Thomas.Hartmann@theqtcompany.com>
2016-02-22 13:39:03 +00:00
Marco Bubke
7912213894 UnitTests: Use fno-omit-frame-pointer for profiles
Perf is not producing reliable stack traces without.

Change-Id: I5f594d45b06a66d91b0c687937dd948d6c724c62
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
2016-02-22 13:33:43 +00:00
Eike Ziller
80d93ab52a Fix qtcreator.sh for the new Qt deployment necessary with Qt 5.6
We need to deploy Qt 5.6 into its own directory (lib/Qt/) in the
Qt Creator packages, so the LD_LIBRARY_PATH that is set in
qtcreator.sh needs that too.

Task-number: QTCREATORBUG-15748
Change-Id: I637322dfe5eb669b6447aa2f2b52e3ba2fe2979f
Reviewed-by: Edward Welbourne <edward.welbourne@theqtcompany.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2016-02-22 13:13:48 +00:00
Orgad Shaneh
d1631d695e Qbs: Improve performance of opening project
Task-number: QTCREATORBUG-15559
Change-Id: I5361c9803a9ce86bcfdc66026f946a048c5180e1
Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
2016-02-22 12:29:13 +00:00
Christian Kandeler
4284a8fec7 Update qbs submodule.
To HEAD of 1.4 branch.

Change-Id: I78d92360ebd6bbf347584e30468ade40f2ce4843
Reviewed-by: Jake Petroules <jake.petroules@theqtcompany.com>
2016-02-22 10:42:52 +00:00
Marco Bubke
1c870e8b30 Utils: Fix forgotten header file in qbs
Change-Id: I9dd079e3757f7026e188fab7798f3f4bb7ce30ec
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
2016-02-22 10:40:00 +00:00
Thomas Hartmann
a709bc3198 QmlDesigner: Improve heuristic to detect signal handlers
<item.onHeightChanged> is also a signal handler.
The old heuristic has to be applied to the last element after splitting
the string by ".".

Change-Id: Ied47bc6acbab32d782f6827cf849711aed600222
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
2016-02-22 10:33:23 +00:00
Thomas Hartmann
89d93c0154 QmlDesigner: Do not collect the prototypes manually
The PrototypeIterator can handle cycles etc...

Change-Id: Ied47bc6acbab32d782f6827cf849711aed660822
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
2016-02-22 10:33:15 +00:00
Thomas Hartmann
8aaf3a0922 QmlDesigner: Adding manual test for dummydata context property
This manual tests shows how to add a simple context
properties for the Qt Quick Designer.

Change-Id: Ied47bc6acbab32d782f6827cf849711aed600821
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
2016-02-22 10:33:04 +00:00
Robert Loehning
e71cb3ae62 Squish: Update expected sizes of project tree in tst_session_handling
Directories in resource files are now displayed as
separate items, adding two more entries to the tree.

Change-Id: I398469bfe7680c73ab0440fdb9dc6f75e101f2f4
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2016-02-22 10:21:11 +00:00
Christian Stenger
bad4cb4896 Tests: Fix wrong license header
Introduced with b278dc87ca.

Change-Id: I595384b35e9e5f2f319ec4e9c1ad92f7fc4bdcd4
Reviewed-by: Marco Bubke <marco.bubke@theqtcompany.com>
2016-02-22 07:22:36 +00:00
Alexandru Croitor
2a00686c7e TextEditor: Make copyLine action actually select the line.
Change-Id: Ibaeed5997b92b5bbe933dd8123e433fcf197e4fe
Reviewed-by: David Schulz <david.schulz@theqtcompany.com>
2016-02-19 13:03:59 +00:00
Ulf Hermann
b643dc9599 Timeline: updateCursorPosition() also if file is unknown
We still want to synchronize the views in this case.

Change-Id: Ie65bec76b194bb9ac6027f16cbb770787a78d871
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
2016-02-19 12:06:01 +00:00
Christian Kandeler
7b36dfd99b ModelEditor: Fix qbs build.
Change-Id: If7fa9f7bdd7150363ba35e29ff00f480d3f274a6
Reviewed-by: Jake Petroules <jake.petroules@theqtcompany.com>
2016-02-19 12:05:17 +00:00
Orgad Shaneh
c1ccd40af9 Core: Make ProgressTimer more fluent
Change-Id: I3d8995096150a4756ab6ebc2ac33dac695886ffc
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
2016-02-19 10:21:53 +00:00
Orgad Shaneh
6234511a2c CppTools: Use a shared thread pool
Without this, too many threads are spawned, and loading a project takes
forever.

Change-Id: I3c22557ddd7bfb0c70f7b089c276432e3b003097
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
2016-02-19 10:21:40 +00:00
Alessandro Portale
9c0faff713 Less "round" error icon
An octagon that occupies 12x12 pixels unfortunately looks like a circle.
This patch tweaks the diagonal to fix that a bit.

Also the hollow triangle gets a small tweak.

Change-Id: I8d69d94e96e7481c5a057926b6e7f933436f8e56
Reviewed-by: Alessandro Portale <alessandro.portale@theqtcompany.com>
2016-02-18 16:46:57 +00:00
Jochen Becher
9e1a4bdd2e ModelEditor: Destructor shall not throw
Change-Id: I2a565095e841c2a6e70b04ace2cf6f7a2955b583
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
2016-02-18 16:36:00 +00:00
Jochen Becher
84761ec9f2 ModelEditor: Add UI for custom configuration path
Change-Id: I66fd8a8d89f2a75157d6bf4f6de2a81cc2c93aea
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
2016-02-18 16:35:51 +00:00
Jochen Becher
bd319da256 ModelEditor: Introduce factory for properties view class
The factory allows usage of inherited view class for easy properties
extensions.

Change-Id: I73303a9c6f96df48dea508eadb9e829af32cdbe5
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
2016-02-18 16:35:36 +00:00
Jochen Becher
9bfd78260e ModelEditor: Support resorting of properties
The feature is not yet used but will be in one of the next changes.

Change-Id: I02fa5e3649fd7c067fae89a3ff4d99610c3386b6
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@theqtcompany.com>
2016-02-18 16:35:20 +00:00
Jochen Becher
b32988d132 ModelEditor: Fix translatability
Change-Id: I32d4573d24f30347de2f3753b973cf8e454d3378
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@theqtcompany.com>
2016-02-18 16:35:08 +00:00
Nikolai Kosjar
a1071b5066 Clang: Handle fixits of main diagnostic in tooltip
So far we have assumed that:
 1) The main diagnostic explains the issue.
 2) The child diagnostics might have fixits attached that use the
    imperative in the text. Because of this we made the fixit texts
    clickable.

As it turns out, the main diagnostic itself also might have fixits
attached, as the following example shows.

  // Parse solely with the warning option "-Weverything"
  template <typename T> struct C {};
  C<C<int>> bla;

...which leads to

  warning: consecutive right angle brackets are incompatible with C++98
  (use '> >')

...which has no further child diagnostics, but provides a fixit.

The problem with this case is that it is not obvious for the user that
clicking the text will fix the issue since no imperative is used at
start of the text. For now, handle this case by making the text of the
main diagnostic clickable, too. But if we encounter more cases like
this, we probably should visualize the "you can apply the fix by
clicking here" concept differently.

Change-Id: Ia64e9821df783cba13d32395fab19251feca0398
Reviewed-by: Alessandro Portale <alessandro.portale@theqtcompany.com>
2016-02-18 13:01:44 +00:00
Ulf Hermann
3c634554dc Doc: Add section about data granularity in CPU Usage Analyzer
Change-Id: If70cf36387a3c7ca191bd6508d23db40258a2719
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@theqtcompany.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
2016-02-18 12:35:31 +00:00
Alessandro Portale
02af5d80b6 Themes: Enable UI recoloring for flat themes
Change-Id: I1907c42a769124b7505bd7afaf6c4da910f3f407
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
2016-02-18 11:37:28 +00:00
Orgad Shaneh
fbffd3abae Git: Reduce grep approximated time to 5 seconds
It typically doesn't take more than that. On Windows it might be more,
but for this we have the slowly increasing progress.

Change-Id: I4cae5ec6d8488f31387a306f841798ca079cdac5
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
2016-02-18 11:13:18 +00:00
Ulf Hermann
14c7e909b3 QmlProfiler: Improve selection handling in FlameGraph view
Selected nodes should have their details displayed if no node is being
hovered. Also, when selecting a node from a different view, any hovered
nodes should be ignored.

Change-Id: I4d68674caa70913d7d0eb24d648562324ebe0d5d
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
2016-02-18 10:53:24 +00:00
Ulf Hermann
e3ce0435e7 QmlProfiler: Clear range restrictions when clearing events views
Range restrictions don't persist across profiling sessions, in contrast
to feature selections.

Change-Id: If98a8dae7eed3019e68e361ea69689658241d39d
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
2016-02-18 10:53:08 +00:00