Commit Graph

32962 Commits

Author SHA1 Message Date
hjk
a5c0b56832 Debugger: Avoid excessive register retrieval in LldbEngine
Change-Id: I43d66b7c65576115803bd3c381bb9627744a326b
Reviewed-by: hjk <hjk@theqtcompany.com>
2015-02-27 10:58:04 +00:00
Orgad Shaneh
bb2aee7aa4 QmlJSTools: De-noise QmlJSModelManager
Change-Id: Iede105188819b1f07efac76ec9a9b05a6ae6049a
Reviewed-by: hjk <hjk@theqtcompany.com>
2015-02-27 10:57:02 +00:00
Orgad Shaneh
7ccab9b540 MimeType: Improve performance for matchesName
aliases() iterates through the entire hash. It should not be called so
frequently.

Change-Id: I2f896489459b2237a0a1763919fb8a52fb411ae1
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
2015-02-27 10:45:19 +00:00
Orgad Shaneh
736168497a Utils: Avoid copy on FileName::toString()
Takes ~6% of project loading

Change-Id: Id277f6cc9d5666b9a383419959cfd37b936437f8
Reviewed-by: Daniel Teske <daniel.teske@theqtcompany.com>
2015-02-27 10:41:34 +00:00
Orgad Shaneh
25096de511 ProjectExplorer: Avoid copy for node path
It appears to take 7% of project loading...

Change-Id: I2d20d919cc861a6ee95af359a584fb27a915cf80
Reviewed-by: Daniel Teske <daniel.teske@theqtcompany.com>
2015-02-27 10:41:20 +00:00
Ulf Hermann
a316948868 Don't artificially prevent QML profiling
The QtQuick compiler should not prevent QML profiling. However, in
this case it does prevent the QML debug options from getting added
to the qmake command line. This effectively prevents QML profiling.

Change-Id: I533d1bd3f9cc6e41bd42f285c32127286b20d85b
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
2015-02-27 09:56:50 +00:00
Eike Ziller
b96f014e86 Search result window: Modernize some code
Which as a side effect fixes a recently introduced wrong connect

Change-Id: I1d6b6036bc4f3b404a3178626db6e0692c643b88
Reviewed-by: Nikita Baryshnikov <nib952051@gmail.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2015-02-27 09:37:58 +00:00
Eike Ziller
0fbdab69ab MimeDatabase: Avoid empty filter string in allFilterStrings.
Change-Id: I975423d2b0fcde7ff6e625e9d3cdaf271dd57dec
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
2015-02-27 08:01:36 +00:00
hjk
a21afdd2a0 Debugger: State machine cosmetics
Remove one unused notification, rename notifyInferiorUnrunnable.

Change-Id: I585d3a8606585fbdd8ad48e5eeecf629542bd93c
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2015-02-27 07:36:46 +00:00
Christian Stenger
958c0cebb9 Vcs: Fix compile for MSVC2010 as well
Change-Id: I76bed2b8256073a14398dd0055173481e2c7f48d
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2015-02-27 07:22:03 +00:00
Libor Tomsik
0038e82782 Refactor: Comment out delete statement of heap variables
Convert to Stack Variable generates crashing code.

Task-number: QTCREATORBUG-13685
Change-Id: I4555de223e50bc8d75e97205d273aa0f09f652fc
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
2015-02-26 17:12:58 +00:00
Christian Kandeler
07e9c44171 Debugger: Fix build.
Change-Id: Ic92e5854535a668f49f5e49a51d190132d27e9e6
Reviewed-by: hjk <hjk@theqtcompany.com>
2015-02-26 16:45:31 +00:00
Daniel Teske
9d1b6e6e61 Find: Fix Current Project find to fall back to startup project
If no files are open.

Change-Id: I78f695fbc128c0e4dc093ac2afef6b68ea20ba93
Task-number: QTCREATORBUG-13998
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
Reviewed-by: Daniel Teske <daniel.teske@theqtcompany.com>
2015-02-26 15:59:22 +00:00
Christian Kandeler
5a05255f05 Revert "Do not add an "Analyzer" category to the "Issues" pane filter."
This reverts commit 324854a5cf.

It turns out that while there are no current users of this category,
it does make sense and will in fact be used soon.
In particular, the fact that some analyzers have their own issue views
does not matter, as these are for "regular" errors that the analyzers
find while doing their job, while the general Issues pane would be for
"irregular" errors that occur running an analyzer.

Change-Id: Ib595ff0e0b27a62634c41ffba220b312f5442f44
Reviewed-by: hjk <hjk@theqtcompany.com>
2015-02-26 15:30:50 +00:00
Thomas Hartmann
d4d677ed25 QmlDesigner: Do not set QML_IMPORT_PATH for the fallback puppet
QML[2]_IMPORT_PATH does override the search path defined in the qt.conf.
This means that defining QML_IMPORT_PATH does break the fallback puppet.

Task-number: QTCREATORBUG-14031
Change-Id: I1441d18f7068df2b8068c70519507088ab41eed8
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
2015-02-26 14:59:45 +00:00
hjk
01cb4ee21d Debugger: Fix soft assert when loading core file
Task-number: QTCREATORBUG-14048
Change-Id: I20d4d8269df3bfb42259ad459b92d5cd738332f5
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2015-02-26 14:58:03 +00:00
Orgad Shaneh
aee35662a2 Prefix duplicate names in Open Documents to make them unique
If a document has a file name associated with it then the prefix is
composed from path components (subdirectories), starting from the one
where the file is located and going up the parents until the resulting
name becomes unique among other open documents.

If a document doesn't have an associated file name, then a sequential
number (starting from 1) is appended to the display name of the
document.

This feature is useful when working with big projects that have lots
of idendical file names across different subdirectories (e.g.
Makefile.in, main.cpp, etc.) that need to be edited at the same
time. It allows to easily recognize such a file when switching
between documents in the editor, w/o the need to place the
mouse pointer over the name entry to get its full path.

Started-by: Dmitriy Kuminov <coding@dmik.org>
Task-number: QTCREATORBUG-10185
Change-Id: I633ea6d9b9b4fce8b67335dbcce1bda29254efde
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
2015-02-26 14:56:25 +00:00
Friedemann Kleint
991cf84991 Clean exported headers of the Debugger plugin.
Change-Id: I70ca6773e0f6aa6d80a441f8920d7f5d2418e1bf
Reviewed-by: hjk <hjk@theqtcompany.com>
2015-02-26 14:49:20 +00:00
Christian Stenger
4602fdb52f QmlEngine: Avoid accessing null pointer
Change-Id: I41ff4508ae609f481a5a20e4b398e106f2d3093d
Reviewed-by: hjk <hjk@theqtcompany.com>
2015-02-26 14:44:55 +00:00
Orgad Shaneh
286f863f5d CppTools: Use correct language features in createHighlighter
Change-Id: Ia8971dbc9be18575a1b22d46dac5bb8c18c63c7a
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
2015-02-26 14:21:14 +00:00
Christian Stenger
c947f1f800 VCS: Fix compile for older compiler
Introduced with 8b9456e4

Change-Id: I19dbe1e8f90fb81ea51b8017306e4acd7c16b3b5
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2015-02-26 14:18:55 +00:00
hjk
a66fe4b29e Core: Add an ActionContainer::addSeparator(Id) overload
This basically makes the Context parameter optional and default
to C_GLOBAL. Less noise on the user side.

Change-Id: Idaf1b83eabaf912450ab20bd5a8b613844bf69a2
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
2015-02-26 14:09:03 +00:00
Tobias Hunger
8b9456e41c Vcs: Use correct project to trim down list of files on commit
Task-number: QTCREATORBUG-13955
Change-Id: I9961e981864f7dc261c2028fd3b80a36647a9a00
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2015-02-26 13:57:58 +00:00
hjk
6b0d5d6036 Debugger: Clearly mark unavailable register contents
The previous display as 0, or 0x0...0e (LLDB on Linux) was
less useful.

Change-Id: I820ea5ef427b65633471c7c62e44851fcfd637cd
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2015-02-26 13:56:51 +00:00
Friedemann Kleint
fe2addf515 Clean exported headers of the TextEditor plugin.
Change-Id: I1e7dd34ba5a51fb0b34d137dc03add4457b32ed1
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2015-02-26 13:15:29 +00:00
Orgad Shaneh
93bb48893f QtSupport: Use a fixed cursor in QtOutputFormatter
Change-Id: I5fb762cd767c31673f4dba6044db9f135e71102b
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
2015-02-26 13:05:37 +00:00
hjk
dc08efac6f Analyzer: Slightly simplify combobox tool action selection
Change-Id: I34e22eee1f0cfaa1f248d814754b14f6004e4fce
Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
2015-02-26 12:38:42 +00:00
Nikita Baryshnikov
f72109a189 SearchResultWindow: move initialization of private class to its own
Change-Id: I7ae2e7ab8c19270991083a8fc24002549e7f53a3
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
2015-02-26 12:09:55 +00:00
Orgad Shaneh
c0a187a1b4 Core: Cache entries by fixed file names
When a bulk of compiler warnings is handled, each Task add to the issues pane
transforms all the open documents to fixed form, which is very expansive.

Change-Id: I3fe77d711fa881e622bd79cfe65058f9ce36d1ff
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
2015-02-26 11:39:20 +00:00
Friedemann Kleint
d33af01d09 Clean exported headers of the VcsBase plugin.
Change-Id: Ibfe20bc7156e14e33fd0448586f5cc625494e008
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2015-02-26 10:57:52 +00:00
Christian Kandeler
836606feb9 Analyzer: Fix combobox behavior.
The code assumed that the items in the combobox correspond to the ones
in the m_actions array. This is no longer true, as we now group the
combox contents.

Change-Id: I97500970fbcda9ac8b5e530dd487f388cc13a5e2
Reviewed-by: hjk <hjk@theqtcompany.com>
2015-02-26 10:13:06 +00:00
Orgad Shaneh
b30e807fac C++: Fix crash on static template instantiation
template<typename T>
struct QList
{
   struct iterator
   {
      T *operator->() { return &t; }
      T t;
   };
   static iterator begin() { return iterator(); }
};

struct Foo { int bar; };

void fun() {
   auto a = QList<Foo>::begin();
   a. // crash
}

Change-Id: I373c493b2eefc9566ec13165285c33d474a3b440
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
2015-02-26 10:09:42 +00:00
Przemyslaw Gorszkowski
8c11485edb C++: fix dereferencing of nested type and 'auto'
Fixed case:
template<class T>
struct List
{
  struct iterator
  {
    T *operator->() { return &t; }
    T &operator*() { return t; }
    T t;
  };
  iterator begin() { return iterator(); }
};

struct Foo { int bar; };

void func()
{
  List<Foo> list;
  auto a = list.begin();
  (*a).; // code completion doesn't work
  a->; // code completion does not work
}

Task-number: QTCREATORBUG-13799
Change-Id: I38e4bfb2f5d728c0b24b0f18b3d78793e90d633b
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
2015-02-26 10:09:39 +00:00
hjk
7f001dab1b Core: Make Context parameter to registerAction optional
... and default to C_GLOBAL. A rather common case.
Similar for ActionContainer::addSeparator().

Change-Id: I7f9ba573af201c0a472132d5a494ad17cc4175b7
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
2015-02-26 10:09:03 +00:00
hjk
5b80463050 Debugger: Fix 'Show Address' stack window context menu action
Change-Id: I59784fbb304882f88538800c4094b8680cb379f8
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2015-02-26 10:02:32 +00:00
hjk
623de07ab9 Debugger: Streamline GdbMi structure interface
Change-Id: If9c4d1ae8b05a5dae7d6a1a7534e49d1966dd493
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2015-02-26 08:53:47 +00:00
hjk
1c59dd1837 Analyzer: Remove unneeded Q_OBJECT
Change-Id: Ifeb842ece3f357a26e92edcb5f3c857ca9da5b42
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2015-02-26 08:24:19 +00:00
Christian Stenger
d6fd56ba9d Debugger: Fix typo
Change-Id: I6cdfb989be46dfad0cbe276ef7c5b067b80260d0
Reviewed-by: hjk <hjk@theqtcompany.com>
2015-02-26 07:30:20 +00:00
hjk
bf87fc9640 Debugger: Rework 'Attach to unstarted application' startup
Change-Id: I42c7ce8e413c850e05b02f5d6fe1b83376436c65
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2015-02-26 07:05:32 +00:00
Nikita Baryshnikov
027328059b Qbs submodule: revert back if it was eventual
Change-Id: Ifdb4cab0cb5cc3ff1505c3d6f46cc5c565b1affb
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2015-02-25 20:36:12 +00:00
Christian Kandeler
53ff1dd115 Analyzer: Separate "integrated" and "external" variants in tool box.
Having the external tool flavors mixed in among the normal ones makes
the tool box look cluttered and is bound to confuse users. So we now
group the tools, with the mainstream use case coming first.

Change-Id: I200b45550d7b1d1f2a565c2e37979fc195f5a12f
Reviewed-by: hjk <hjk@theqtcompany.com>
2015-02-25 17:04:33 +00:00
Ulf Hermann
d2a3f3f2c7 QmlProfiler: Don't re-estimate profiling time when not profiling
Change-Id: I2485aff4f1317a0bf194455969757da497c7e404
Task-number: QTCREATORBUG-14024
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
2015-02-25 16:58:54 +00:00
Ulf Hermann
ad484b1c2f Timeline: Don't round the selection rectangles outer dimensions
Change-Id: I5d002737937593f53f2b64a5eee1cc2fd42d803f
Task-number: QTCREATORBUG-14023
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
2015-02-25 16:58:49 +00:00
Orgad Shaneh
16cfcfe136 QtSupport: Pimpl QtOutputFormatter
Change-Id: Ib2748f1cdd5de4bf11f0eab03bd4c6a683580a9e
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
2015-02-25 16:19:32 +00:00
Nikita Baryshnikov
51011aed80 DetailedErrorView: initialize member in ctor
Change-Id: Ic0c8c1bdb39b676c7e4b0c234614741b402ff966
Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
2015-02-25 16:17:55 +00:00
Eike Ziller
650015ebff MimeTypes: Avoid checking magic matchers for .h files
If we have "*.h" glob pattern with same weight in c-hdr and c++hdr, it
also opens the files and checks magic matchers (for _all_ mime types, but
that's another issue).

Change-Id: I5dde180b3392d3a11354dce61fa577345c97b295
Reviewed-by: Daniel Teske <daniel.teske@theqtcompany.com>
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2015-02-25 15:04:41 +00:00
Przemyslaw Gorszkowski
168d9201d5 C++: rename enclosingTemplateInstantiation to enclosingBinding
Change-Id: I6989cd0e62e9587824737b756a37607dfdcf5ebf
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2015-02-25 15:04:28 +00:00
Przemyslaw Gorszkowski
1a239bd3e9 C++: fix dereferencing of nested type and operator '->'
Fixed case:
template<class T>
struct List
{
  struct iterator
  {
    T *operator->() { return &t; }
    T t;
  };
  iterator begin() { return iterator(); }
};

struct Foo { int bar; };

void func()
{
  List<Foo> list;
  list.begin()->; // code completion doesn't work
}

Task-number: QTCREATORBUG-13799
Change-Id: I65e8d3092bbc9b01a5dbee241c24d95dd03fc670
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
2015-02-25 15:03:43 +00:00
Przemyslaw Gorszkowski
209078e57e C++: fix dereferencing of nested type and operator '*'
Fixed case:
template<class T>
struct List
{
  struct iterator
  {
    T &operator*() { return t; }
    T t;
  };
  iterator begin() { return iterator(); }
};

struct Foo { int bar; };

void func()
{
  List<Foo> list;
  (*list.begin()).; // code completion doesn't work
}

Task-number: QTCREATORBUG-13799
Change-Id: Ia3f5c1631c2f6a25d7fb1186b4ef506354ed22be
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
2015-02-25 15:03:40 +00:00
Eike Ziller
25989cbf94 MimeDatabase: Avoid opening files even if already file name matches
Change-Id: If669985f8ef852c31ecbaae76c533c7286e5a294
Reviewed-by: Daniel Teske <daniel.teske@theqtcompany.com>
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2015-02-25 15:02:13 +00:00