All internal paths in Qt Creator are using '/' as path separator.
Make sure to normalize paths set via the SDKtool to that convention.
Change-Id: If7ef250d49686a0f60d08516b718eb7c84a059ef
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
... using a dummy AnalyzerStartParameters class as intermediate step
to remove AnalyzerStartParameters entirely.
Change-Id: I85663362e6b4f45d8e13f7928009bca05932eb99
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
E.g. only show wizards that can create qmake projects when
contining after a SUBDIR-project wizard.
Change-Id: Ib189b1efa479f5b986fdec8658715245e2f2db40
Reviewed-by: Niels Weber <niels.weber@theqtcompany.com>
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
LLDB 3.8 on Linux claims non-existent files to be the source of
disassembly.
Change-Id: I45a47cf5e7faad7ccd6dbb9879c8328fc2496b95
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
1 struct Foo { int member; };
2 void f(Foo *foo)
3 {
4 foo.<REQUEST COMPLETION> // correct '.' to '->' and provide results
5 }
The preferred approach would be to check if "foo" in line 4 is of
pointer type, but there is no suitable cursor (only CompoundStmt) at
that position since the code is usually not yet parsed and thus invalid.
Thus, just run the completion as is. If there are not any results for a
dot completion, re-run the completion with "." exchanged by "->". This
approach is inherently slower than the preferred approach implemented in
the built-in code model.
The following rare cases are not handled:
1) Requesting completion after white space:
Works: foo.<COMPLETE HERE>
Fails: foo. <COMPLETE HERE>
2) Opening a file and requesting completion (ctrl+space) without prior
editing. No editing before triggering completion means that no
unsaved file is generated on the backend side, which is a
requirement for the correction.
Task-number: QTCREATORBUG-11581
Change-Id: I6bc8e8594778774ab342755fdb01a8a3e5c52ba0
Reviewed-by: Marco Bubke <marco.bubke@theqtcompany.com>
* Update license in documentation files. Stay at FDL, but update
URLs as well as license for examples, etc.
Change-Id: I5e8cb5a20f0e9d52fba1d937b7c73197d69dd747
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
This is very helpful for dynamic extra compiler support (e.g. uic,
flex, ...).
Change-Id: I5a49b0b39a0f1fbc7834701d60a68ef441172969
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
The methods are only relevant for documents without a filePath, and
there was a mix of different irrelevant implementations present in
subclasses.
Change-Id: I4f57d306e5ddd913974cfe6ed0b4db062eb907a1
Reviewed-by: David Schulz <david.schulz@theqtcompany.com>
This is almost uniformly used everywhere else.
Change-Id: I1ef9abb24066b21652aeb994b18ea3e19f48b3c6
Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
* Update license of files loaded in debugger
* Make sure all files have a license header
Change-Id: I612885652bcae0a4b7a88ae5184ef661aee25006
Reviewed-by: hjk <hjk@theqtcompany.com>
This adds a new hover handler which matches stand-alone color strings
like "#112233" or "Qt::yellow" or function argument tuples for colors
such as "QColor(0x11, 0x22, 0x33)". When matching against function
arguments, the function name must correspond to a recognized color
function (setRgb, etc. This is biased towards cpp text, but not limited
to such). The matching occurs when hovering over the arguments, not the
function.
If a match is identified, the hover handler gives it a relatively high
ranking.
Change-Id: Ied2927399cb19d6f562185a8b087f0ce118157db
Reviewed-by: David Schulz <david.schulz@theqtcompany.com>
Hover handlers now have a priority which is used to determine which
handler's tooltip is shown. The handler with the highest priority is
used, or, in the case of equal rankings, the first registered handler.
The base handler implements a default basic priority system based on the
diagnostic and help properties. Derived handlers can manually set the
ranking value as part of the identifyMatch() call.
A new checkToolTip() method is added so the handler can analyze whether a
tooltip is valid without it being shown.
Change-Id: I9d82fb9cc52f1d3cd53a8b197d75cd923651b79d
Reviewed-by: David Schulz <david.schulz@theqtcompany.com>
Changing a function signature from const to non-const is not recognized as a
changed, and doesn't trigger the "Apply Function Signature Changes" quickfix.
For example:
void func(Foo &var);
void func(Foo &var) {} // Add const before Foo, quickfix is not triggered
Change-Id: I71ae41765d66df69204abd085fdfcfcb2d605f4c
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
When a QFutureInterface is constructed, it is in "NoState",
but waitForFinished only blocks if it is in "Running" state.
So we need to reportStarted actually before the thread is started
(so we report it before leaving the mapReduce/runAsync method)
Change-Id: I1cdf0d627c5a6c26797b04fd0d331cddb01d50af
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
To fallbackSaveAsPath and fallbackSaveAsFileName. That makes it clearer
what they are for, and that they actually belong to each other.
Change-Id: Ie5b83b9db77d39a7fe9e979cc8f22b7f5b9101a3
Reviewed-by: David Schulz <david.schulz@theqtcompany.com>
Do not unnecessarily construct a path with document->defaultPath(). We
can just ask for the mime type(s) for the suggestedFileName without a
path.
Change-Id: I1354756bd7760561a2bd9d39f491c5e1b6aeb3ab
Reviewed-by: David Schulz <david.schulz@theqtcompany.com>
QtConcurrent limits resource usage to a global number of simultaneous
threads. That means that if some QtConcurrent based algorithm currently
grabs all threads, any other use of QtConcurrent blocks, which is not
what we want.
Use the new threading methods of C++11 instead, but still use
QFuture(Interface) manually for status reporting.
Task-number: QTCREATORBUG-14640
Change-Id: I8fecb43b5235da92c0d239e7dd5f2c108ab32ebf
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
...since we had crash issues on OS X with 3.6.0/3.6.1.
Released packages are already shipped with 3.6.2.
Change-Id: I364288d5c7dc32beacbbdbc231c2be4e6a6818bf
Reviewed-by: Marco Bubke <marco.bubke@theqtcompany.com>
Let's face it. "Live" theme change doesn't work reliably and
there is currently no effort to make this work. This change
removes the theme change during a Qt Creator run and shows "Restart
required" message dialog which we know from the language settings.
Change-Id: Ic9d300c5378841905260ff725aa3011717191de7
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
The Theme editor is a feature which was present but disabled since the
introduction of Themes. It is still unfinished and unlikely to be
finished.
An alternative, cheaper approch could be installing a file watcher
on a theme file, and reloading it on any change. But for that we
would still need proper theme switching during runtime.
Change-Id: Ifd44e8c25c924a8f021618d20ce126648a3558a3
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@theqtcompany.com>
Also extracting inline HeaderPath class and change projects list in vector
because the size is larger than a pointer.
Change-Id: I885fdff3fe9bccc877634d1615249755f5b674fd
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>