... that breaks QHash display for keys with value 0.
Task-number: QTCREATORBUG-14451
Change-Id: I8578d9f1d14c367beaccabc5373bd75860ee454b
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
This quietens warnings from libPNG during startup and shrinks the
image sizes.
Change-Id: Ieb4cb5e8ba30b99653896e283c2fb2cc267257f2
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
Needed to debug the QmlDebugger.
Change-Id: Ia0b50dac2146fcc81990b78eb8de30c8e763bba2
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
Additionally move Qt5Path helper class into classes.py as it's now
used in more than one test suite.
Change-Id: I0a1faed7fa8c082316c5568e4150091812af8979
Reviewed-by: Robert Loehning <robert.loehning@theqtcompany.com>
Defined in section 14.7.2 of the standard.
Fixes completion for std::string.
The following explicit instantiation appears in bits/basic_string.tcc:
extern template class basic_string<char>;
This is wrongfully considered a specialization for a forward declaration
(like `template<> class basic_string<char>` is).
Introduce a new Symbol type for explicit instantiations.
Use-case:
template<class T>
struct Foo { T bar; };
template class Foo<int>;
void func()
{
Foo<int> foo;
foo.bar; // bar not highlighted
}
Change-Id: I9e35c8c32f6b78fc87b4f4f1fc903b42cfbd2c2b
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
The test apps now return != 0 in case of an error.
Change-Id: I2380bc4b8e0c85e68d79f90ccc39ad9419851b04
Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
Use-case:
template<class T>
using Foo = Bar<T>; // T not highlighted
Task-number: QTCREATORBUG-9944
Change-Id: I04cb62ea6a21f158f7fb4fb7ac79ccd6eb1bbfbb
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
This is a partial result of wip/clang-oop. More will follow.
This allows us to invoke the completion out of the Qt Creator process
and thus safes us as against libclang crashes.
At this point only the completion use case is supported.
Some notes on the individual components:
src/libs/codemodelbackendipc
* library encapsulating the inter process communication handling
* used by the backend application and in a follow-up change by the
creator integration
src/libs/3rdparty/sqlite
* version 3.8.10.2
* dependency of codemodelbackendipc, will be used to storage indexing
data, among others
src/tools/codemodelbackend
* the backend application
tests/unit:
* unit tests
Change-Id: I91a48e27467581a22fb760a18d8eb926008fea60
Reviewed-by: Alessandro Portale <alessandro.portale@theqtcompany.com>
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
Reviewed-by: Marco Bubke <marco.bubke@theqtcompany.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Didn't think of the bug mentioned in my own comment. Sorry.
This reverts commit c7b7fde2bf.
Change-Id: Ida2791a7c985c8036194df437c720a170a39458e
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
The include for utils/environment.h was omitted
unless Q_OS_MSVC, but the code that uses it is
also compiled for MinGW-w64, so change that compile
guard to Q_OS_WIN instead.
Change-Id: I2fa5a09f1864c0ed38d09e3fbb2c6f661fbc8b26
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
This doesn't change anything until we replace the used project.
main.cpp or utility.cpp may get the tempFiletype "Headers" and
then the test will crash because the file can't be opened.
In addition, only files with filetype "Headers" are included in
other files, so verifying including of other files is
pointless.
Change-Id: I30b20269a800eca5ef51de3af209e674da5189bd
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
The bugreport I wrote about this was rated invalid
so now this is the expected behavior.
Change-Id: Ia187062552ad9d4857b5078d4c9c5dde4c8b7521
Task-number: QTCREATORBUG-14469
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
This patch allows a plugin to insert custom imports. These imports are
used by QtC for syntax highlighting and code completion. This way a
plugin can register types and objects that are available only at
runtime.
This is an example of an imports function implementation:
QList<Import> MyPlugin::imports(ValueOwner *valueOwner, const Document
*context) const
{
// context is needed to know from which project is the opened document
// in this example we don't care about multiple projects
Import import;
import.object = new QmlJS::ObjectValue(valueOwner, "<defaults>");
import.valid = true;
const ComponentVersion version(1, 0);
import.info = ImportInfo::moduleImport("MyPlugin", version,
QString());
auto myType = valueOwner->newObject(nullptr)
myType->setMember("myProperty", valueOwner->valueOwner->intValue());
// add more properties & methods/signals to myType
import.object->setMember("MyType", myType);
// in this example we return only one, but you care return more than
one
return QList<Import>(import);
}
Change-Id: I395c273c7b15a9e4ed5a89a81d70ff92db2b7c0c
Reviewed-by: Marco Benelli <marco.benelli@theqtcompany.com>
Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
Apparently on some Qt versions we cannot add geometry nodes without
material to the tree.
Change-Id: Id6d7debefd2060190f101ab365f27cae2f461d8d
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>