Commit Graph

43787 Commits

Author SHA1 Message Date
Tobias Hunger
cc817d508f SDKtool: Make sure to use '/' as path separator
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>
2016-01-19 15:15:57 +00:00
hjk
a67c7d5bf0 Analyzer: Introduce a convenience AnalyzerManager::createRunControl
... using a dummy AnalyzerStartParameters class as intermediate step
to remove AnalyzerStartParameters entirely.

Change-Id: I85663362e6b4f45d8e13f7928009bca05932eb99
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2016-01-19 14:40:27 +00:00
hjk
4052573db2 RemoteLinux: Remove unused class declaration
Change-Id: I2ba60ac5f56e1c4c401b0e25354608dad3bb73fb
Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
2016-01-19 14:40:11 +00:00
Tobias Hunger
d5e7262e68 Wizards: Better selection of project wizards to show
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>
2016-01-19 14:37:38 +00:00
hjk
9e16554e25 Debugger: Be a bit more robust with LLDB disassembler
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>
2016-01-19 14:22:39 +00:00
hjk
0983c7cc1a Ios: use ArgumentsAspect in IosRunConfiguration
Change-Id: I9f2f0eacf5fca155912eb4417d2ac89afcf64901
Reviewed-by: Erik Verbruggen <erik.verbruggen@theqtcompany.com>
2016-01-19 14:04:23 +00:00
Nikolai Kosjar
8d6549fa74 Clang: Correct member access operator if possible
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>
2016-01-19 13:20:35 +00:00
Tobias Hunger
43800a6aa8 Update License according to agreement with Free Qt Foundation
* 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>
2016-01-19 13:09:03 +00:00
Thomas Hartmann
ea767d961b QmlDesigner: Remove unused file
Change-Id: Ife567cfb368092f818c7cf418ede4ab1bca227aa
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
2016-01-19 12:37:59 +00:00
Ulf Hermann
75aa1d26ac TextEditor: Support contents() and contentsChanged()
Change-Id: Ia1957d489b8bf2b42c69f739913b50e52e488a69
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
2016-01-19 09:33:42 +00:00
Ulf Hermann
7129cb0b7d Add support for contents() to designer documents
Change-Id: Ie8c65c7a692d752bac3b6427f66116282b486576
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
2016-01-19 09:33:27 +00:00
Ulf Hermann
5182f2ffb2 Core: Add methods to retrieve contents from IDocument
This is very helpful for dynamic extra compiler support (e.g. uic,
flex, ...).

Change-Id: I5a49b0b39a0f1fbc7834701d60a68ef441172969
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
2016-01-19 09:33:17 +00:00
Eike Ziller
fc485e6b86 Add default implementation for IDocument::fallbackSaveAs(Path|FileName)
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>
2016-01-19 07:55:56 +00:00
Orgad Shaneh
24f5bc7d3f Utils: Add a soft assertion in HistoryCompleter
Change-Id: I8319366bb84f00dc338dcea81233b69b6a116d66
Reviewed-by: hjk <hjk@theqtcompany.com>
2016-01-19 07:21:59 +00:00
Orgad Shaneh
02c4f0dd88 FindInFiles: Use Utils namespace
Change-Id: I7f61ee40ecb84b594018a04062c702bb36ad4510
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
2016-01-19 06:59:38 +00:00
Eike Ziller
6513fc88b3 runAsync: Allow calling member functions
Change-Id: Ide09b5585730fb3dcb4a18718a02a4d8351ef91e
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2016-01-19 06:07:43 +00:00
Eike Ziller
4b077921e2 runAsync: Allow function references, and non-const parameters.
Change-Id: I258259da7767087a8319d6a4489aa4d6c3b32c6f
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2016-01-19 06:07:33 +00:00
Eike Ziller
e90ef40336 Add auto tests for Utils::runAsync
Change-Id: I59494d410ec529fd9689c64fea299ada6f6a472b
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2016-01-19 06:07:23 +00:00
Eike Ziller
6b5f525da0 VcsBase: Remove unused includes
Change-Id: I5a71e72907e96402f3b88aa2a05c333f0bb56030
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
2016-01-19 06:06:55 +00:00
hjk
e7956000df RemoteLinux: Use QString instead of QStringList for process arguments
This is almost uniformly used everywhere else.

Change-Id: I1ef9abb24066b21652aeb994b18ea3e19f48b3c6
Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
2016-01-18 16:35:40 +00:00
Christian Kandeler
9a0062a942 TextEditor: Fix qbs build.
Change-Id: Ib4f62c72bd469eeec084e79a3390e92aeb351b22
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2016-01-18 16:10:19 +00:00
Marc Reilly
403f0a612c CppEditor: Install color preview hover handler for editor
Change-Id: I9c7c2f085638a9b267ed2fc2df93267d5e9501ea
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
2016-01-18 13:19:41 +00:00
Christian Kandeler
b72c3cba24 SSH: Use categorized logging.
Change-Id: I9890c7d4a86320c835e70e66c523c5a2f7b41421
Reviewed-by: Michal Klocek <michal.klocek@theqtcompany.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
2016-01-18 12:17:15 +00:00
Tobias Hunger
54d64971d8 Update License according to aggrement with Free Qt Foundation
* Update license of files loaded in debugger
* Make sure all files have a license header

Change-Id: I612885652bcae0a4b7a88ae5184ef661aee25006
Reviewed-by: hjk <hjk@theqtcompany.com>
2016-01-18 10:41:20 +00:00
Caspar Schutijser
4da6cfdf2a Abi: add OpenBSD
Change-Id: I77ec7e06c38a54e753b9b39aebc7d2caaa3c8fc0
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
2016-01-18 10:40:13 +00:00
Marc Reilly
d2bb44479e texteditor: add a hover handler which shows color preview tooltips
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>
2016-01-18 09:25:15 +00:00
Marc Reilly
64b172ae73 hoverhandler: add priority system to determine which tooltip is shown
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>
2016-01-18 09:25:03 +00:00
Tobias Hunger
8c6b31f3d8 Update License according to aggrement with Free Qt Foundation
* Update IFW files

Change-Id: I8d715816df3ba420f1ba72ea997979303228a779
Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
2016-01-18 09:05:24 +00:00
Ulf Hermann
32bbd6c8b9 Remove setContents() from imageviewer
It doesn't actually do anything.

Change-Id: Ic89b778427c4dd663f7577f522688cde99da06f9
Reviewed-by: Alessandro Portale <alessandro.portale@theqtcompany.com>
2016-01-18 08:57:03 +00:00
Orgad Shaneh
5be49c5187 C++: Match const/volatile/signed/unsigned for FullySpecifiedType
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>
2016-01-15 14:05:22 +00:00
Tobias Hunger
07dd7d5fe2 Update License according to aggrement with Free Qt Foundation
* Update license files in various places
* Update the license template
* Update README.md and appdata.xml

Change-Id: I0ae9365b15364728165e79ba8ad86dfdd6cb9ddd
Reviewed-by: Alessandro Portale <alessandro.portale@theqtcompany.com>
2016-01-15 14:04:27 +00:00
Eike Ziller
9493d4764b mapReduce/runAsync: Fix behavior of waitForFinished
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>
2016-01-15 07:46:01 +00:00
Orgad Shaneh
67153b225f Core: Fix compilation
Change-Id: Icae9a1db31e887c751b3a0c71cfd93b4fa6ead98
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2016-01-14 15:48:09 +00:00
Orgad Shaneh
111a230659 Theme: Remove unused ThemeSettings
Change-Id: I5f3ee8f5afa2ef8618d9a43a10e37a30f771d0af
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
2016-01-14 15:00:01 +00:00
Orgad Shaneh
64c552f555 Theme: Inline UI
Change-Id: I1d8403484583bb6ff4186ac65730e26724fedad9
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@theqtcompany.com>
2016-01-14 14:59:57 +00:00
Eike Ziller
cfc89a685e IDocument: Rename defaultPath and suggestedFileName
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>
2016-01-14 14:40:45 +00:00
Eike Ziller
66088a799a EditorManager: Remove unnecessary use of defaultPath() in saveDocumentAs
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>
2016-01-14 14:40:34 +00:00
Eike Ziller
27425b62e9 Locator: Avoid use of QtConcurrent
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>
2016-01-14 10:49:51 +00:00
Alessandro Portale
3c8715f001 QtSupport: Compile fix
Feature set API cahnged

Change-Id: I3efb4d0eac54d5ba357e1d182598e16cd75eda48
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
2016-01-14 09:07:20 +00:00
Nikolai Kosjar
b7bc044b00 Clang: Require llvm/libclang 3.6.2 as minimum version
...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>
2016-01-14 09:00:33 +00:00
Alessandro Portale
cacd014dc2 Theme: Force new start of Creator when changing the theme
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>
2016-01-14 08:40:40 +00:00
Alessandro Portale
9573ead443 Removing the ThemeEditor
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>
2016-01-14 08:40:02 +00:00
Eike Ziller
4255493881 Merge remote-tracking branch 'origin/3.6'
Change-Id: Ia5e169a276e21db59b4b26a1ed3f253bff9e2ab9
2016-01-14 09:32:17 +01:00
David Schulz
ae3b9042c9 Editor: Use internal zoom functions.
Task-number: QTCREATORBUG-15609
Task-number: QTCREATORBUG-15608
Change-Id: I133ddbbb55cd5b876daed9e33c7a93b07e2d2e38
Reviewed-by: Robert Loehning <robert.loehning@theqtcompany.com>
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
2016-01-14 07:58:11 +00:00
Robert Loehning
8fc7dac761 QMLDesigner: Fix tooltip for "Preferred size" label.
Change-Id: Ib768b349969578f906c25bc809537dfd4cff0a3b
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
2016-01-13 16:52:43 +00:00
Marco Bubke
ddd1d4c9cc CppTools: Remove cpptools/cppprojects.[h|cpp]
Change-Id: Ida0e8552d371972c141cf561b28667f4428c6fff
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
2016-01-13 14:47:27 +00:00
Marco Bubke
68bd9a881f CppTools: Moving CompilerOptionsBuilder in its own header file
Change-Id: I503ffd72a98db6668f6449ce95e695e035a79a29
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
2016-01-13 14:47:20 +00:00
Marco Bubke
1ae509541c CppTools: Moving ProjectPartBuilder in its own header
Change-Id: I0aa65ec6c80dcd437f13ff70021388b0da57ccfd
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
2016-01-13 14:47:11 +00:00
Marco Bubke
da1f8e66e5 CppTools: Move ProjectInfo in its own header file
Change-Id: I0fc4c73553a29585d4ff7c8d6593acb6975d1607
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
2016-01-13 14:47:04 +00:00
Marco Bubke
2b4cadf1fe CppTools: Move ProjectPart in its own header file
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>
2016-01-13 14:46:56 +00:00