The old implementation readed the file and converted the QString toUtf8,
which seems wrong. Now use Creators default encoding.
This fixes at least wrong macro offsets that leaded to highlighting
errors in Find Usages, if there were non-ASCII characters before the
macro definition.
This should also partially solve QTCREATORBUG-7122.
Change-Id: Ic4a5add5f4769bd3d5b62fc2d67598e7abf352d9
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
Avoid using "." as includePath when it is unneeded
Change-Id: I9bc6f4ebe50409f49782520033fd5f098aed10d0
Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
Problem was with cyclic recurrence.
To solve it we need to check if derived class is different class than its base class.
Keep completion corrected.
Include some unit tests when base class has the same name as derived.
Task-number: QTCREATORBUG-7887
Change-Id: I7973c0b06e3b62d2da3d06048f4327d18a0b8011
Reviewed-by: hjk <qthjk@ovi.com>
This use case is deprecated in Qt 5. Use QPointer instead.
Change-Id: Id6c32542032656d7cb31cf838d93a680ab9e9327
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
This time in the 'new' expression. Changed it to make
new C(1, abc...) and new C{1, abc}
work.
Change-Id: I7232798fd083b653ee04ef9ede386d6536133e16
Reviewed-by: hjk <qthjk@ovi.com>
The commit looks big, but it's mostly trivial. Also any build/run
related popups are now "flashes" if the current mode has no placeholder.
Task-number: QTCREATORBUG-7875
Change-Id: I3af40557f7af01798f905c0d1829423c80058cb6
Reviewed-by: Eike Ziller <eike.ziller@nokia.com>
I.e. define WITH_TESTS for debug builds or if the respective
environment variable is set.
Change-Id: I2764ece50d0783e8cb030b1695e6f59cf6063248
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
With this, you will see more of the "relevant" path.
Change-Id: I03c4c7bd2bdaa9148c70a68678306e259f9c7204
Reviewed-by: Eike Ziller <eike.ziller@nokia.com>
Does not build, is not being maintained, purpose is unclear.
Change-Id: I00f3bbc9580b57e3945882a411af502a78f4864f
Reviewed-by: Eike Ziller <eike.ziller@nokia.com>
To be consistent with the change 5b847a66df
in the InsertionPointLocator. Nevertheless, there are still issues to be
addressed in this class so we probably need more test cases when those
are handled.
Task-number: QTCREATORBUG-7833
Change-Id: Ie9abdd70566063a94350723432215d030c154fab
Reviewed-by: Christian Kandeler <christian.kandeler@nokia.com>
The class' member functions are intended to be used
instead of the Q_OS_* macros in all contexts where
the latter are not syntactically required.
This lowers the likelihood of changes made on one
platform breaking the build on another, e.g. due to
the code model missing symbols in #ifdef'ed out code
when refactoring.
Change-Id: I4a54788591b4c8f8d589b8368a6c683d4155c9fa
Reviewed-by: hjk <qthjk@ovi.com>
This fixes one of the issues mentioned in the report below.
THe other part will come in a separate patch.
Task-number: QTCREATORBUG-7730
Change-Id: I9f56a9bcec8a881dab3ab60f40c5b71f296466da
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
This fixes a variety of issues regarding class completion
when templates are used as base classes. The test cases
show examples.
Task-number: QTCREATORBUG-4357
Change-Id: I764d5ce817a78e1b19336e5beab758ca9e10f34b
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
* You now get completion for std::vector<int>::[complete].
* Also added a test.
Conflicts:
src/plugins/cpptools/cppcompletion_test.cpp
src/plugins/cpptools/cpptoolsplugin.h
Change-Id: I596ebf6bd18ec9a347113f8d162cc124c8a0d6b4
Reviewed-by: hjk <qthjk@ovi.com>
The type highlighting change part of the recent patch
4a2a17af8a didn't seem to
please much from a visual point of view. It's a better
idea to keep the type highlighting as it was for now
and in the future try again the approach with an explicit
option and perhaps a more restrictive context.
The other patch is not reverted entirely because it does
fix a couple of bugs.
Change-Id: I806afa3d8c1c4b241080b8704255d737f61ee12c
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
- Fix issues with virtual/non-virtual destructors. They were not
being correctly identified in some cases - in particular on certain
uses in derived classes.
- Since now we do have a highlighting item for regular functions,
constructors and destructors are now highlighted as such. This is
more semantically correct and actually makes navigation and readiblity
more distinguishable, since it cleary differentiates the type itself
from its uses in expressions and declarators. (This seems to be what
other IDEs like Eclipse, Visual Studio, KDevelop are doing.)
NOTE: There's a switch to disable this item in the case it doesn't
get good acceptance. Actually, the switch can be made a user
setting...?
- Change the default color scheme so regular and virtual functions
have the same color (virtuals continue to be italic). This makes
sense given the above mentioned changes in constructors/destructors
highlighting behavior. (In other schemes virtual funcions don't have
different color, so this shouldn't be necessary in those.)
- Small renaming: "members" are now "fields" - consistent, since
they apply for data and it's the term used in the UI.
Change-Id: Ib1aa9c0bbf28a31d09f5696460b0095fbe29de80
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
Could be reproduced in code as below (cursor at |):
QFormLayout|formLayout *fl = new QFormLayout(this);
Change-Id: I7f5e9ac8ff8dfffbca63d7ab9f837333440c9810
Reviewed-by: hjk <qthjk@ovi.com>