This is a quickfix for Controls 2 Popup, Drawer, Menu and Dialog.
We pretend everything derived from QtQuick.Controls.Popup
is an item instead of a QQObject.
Change-Id: I603dce8a1a1b08df3e2c1dccc0fa57e7ccef0800
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Calling detach() in setKey() will free the shared memory twice, if
we do not set m_memory to nullptr.
Clean cleanHandleInternal() does always return true, so
checking the value does not make sense.
We have to call cleanHandleInternal() immediately after the close.
Change-Id: I110693d1dd9dae4ff5e52cfd3fdd2f33137af969
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
nodeinstanceserver.cpp: In member function 'void
QmlDesigner::NodeInstanceServer::setupImports(const
QVector<QmlDesigner::AddImportContainer>&)':
nodeinstanceserver.cpp:458:71: error: conversion from 'const char*' to
'QChar' is ambiguous
Change-Id: Ifa4cb2700344aaacc17619f05249f338e9b28d0b
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
We fallback to create types from source, if other means failed.
This can be required if the meta info is incomplete/incorrect when
a C++ type is mocked.
Change-Id: I50d45a6f9d7eba3483da10d9e1d7d6644d9aeb96
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
If a cpp type is somehow available do not create the mockup.
Change-Id: Ibd76429c3d1190c46a223062d77d676f728fe666
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
The QQuickEngine does the same.
Before in cases like this:
Item {
Slider {
handle: Item {
}
}
}
The item parent of the handle was the root item instead of the slider.
Change-Id: Ia022c82c6d85c2a957763c56639ac77bca9297e6
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
If the qml2puppet is build for the custom Qt then
the build failed because of utils/algorithm.h.
There is currently no reason to use utils/algorithm.h
in the puppet.
Change-Id: I4fb2aa2e7df4a5087ff48318cc416b457779c96e
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
This allows Qt Quick Designer to register a component that can serve
as a mockup for known C++ components registered in e.g. main.cpp.
In many cases those components are the interface to the C++ backend.
While the C++ components itself are not relevant for the gui designer,
the user has to be able to instantiate gui components that use such C++
components.
We use the CreateSceneCommand to forward a list of C++ types to
qml2puppet.
Those types are then registered so that the imports and object institation
works.
Change-Id: I1543912f233f9a783998f3c6a1b48981b342ee80
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Obviously, you cannot set m_sharedMemory to 0 and then write the error
and errorString to it.
Change-Id: Ifcacfd7adcb4ff2fd88ebda21aa81094337233f6
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
QML does not accept absolute paths (e.g. C:\working\something\) as urls.
We need the file:/// prefix.
Change-Id: I9df74cd9c0e730fba056af971751f8eb88cdb536
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
Problem was that a file added to resource it
wasn't shown in the canvas.
Change-Id: I57610db8a55791c409bd249d698bf757cde153b9
Reviewed-by: Thomas Hartmann <Thomas.Hartmann@theqtcompany.com>
The code model knows about .qrc files and has a mapping
that we forward to the qml2puppet.
Support for .qrc was broken when introducing the QmlPrivateGate.
Change-Id: I22d1c1add65d0c9a914e471dbe51ef505f308494
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
It can be helpful, is not much effort, and parts did not restrict the
install target to non-OS X already.
Change-Id: I3501f37f089e981cf3f72d9250c9b9161d1565d6
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
Trying to serialize a void start using QVariant does assert.
Solution: Ignore properties of type void star.
This was triggered by TreeView.
Change-Id: Idca5646a472fdfce8761861f5bf889bb73300fff
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
Trying to serialize a QModelIndex using QVariant does assert.
Solution: Ignore properties of type QModelIndex.
Change-Id: Idca5646a472fdfce8761861f5bf889bb73340df7
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
A "raw" QObject (created instead of the Timer) will crash the engine later. Instead we setup
the QObject using createPrimitive().
Task-number: QTCREATORBUG-15916
Change-Id: I5f0dd9c887fd57d492222d221e54f267e12a5044
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
We evaluate properties for the root item in dummy context if
they contain "parent.".
Defining a parent in the dummy context was not working for QML 2,
because there seems to be a shortcut bypassing the metasystem for parent.
Task-number: QTCREATORBUG-15530
Change-Id: I710f1ef36b8c97cc481b9909a775f06d9e03f666
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
The dummyContextObject is now set as the context object
Change-Id: I710f1ef36b8c97cc481b9109a775f06d9e03f6b6
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
This reverts commit 74e863f867 as it
breaks compile with Qt5.4.
Change-Id: Ifce52a7790c4f40ce0ccd56a2daacc4d32fe3257
Reviewed-by: Thomas Hartmann <Thomas.Hartmann@theqtcompany.com>
We should not call updateDirtyNode() for items without a window.
This will assert later in consistency checks.
Change-Id: Iff3574123a1497206de88d59fcf630ead57ef593
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>