61 Commits

Author SHA1 Message Date
Filippo Cucchetto
af9367f4c8 Indexes should not be relative but instead absolute
We should not subtract in the qt_metacall
2016-04-10 14:40:00 +02:00
Filippo Cucchetto
8d9ef5d70e Added missing setObjectName 2016-04-10 14:40:00 +02:00
Filippo Cucchetto
c4c2cea41c Cleaned up some code leftovers 2016-04-10 14:40:00 +02:00
Filippo Cucchetto
99c385446f Temporary removed findChild and rootObjects
This is done for safety reasons. We will bring them back once we found
out how to deal with shared ownership with cpp
2016-04-10 14:40:00 +02:00
Filippo Cucchetto
11e45f683a Other fixes for making compile the project on Visual Studio 2013 2016-04-10 14:40:00 +02:00
Filippo Cucchetto
483993df1e Relaxed the standard requirements to c++11 2016-04-10 14:40:00 +02:00
Filippo Cucchetto
5290695477 Enabled warning on CXX and fixed compilation on Qt 5.3 2016-04-10 14:40:00 +02:00
Filippo Cucchetto
24358fa525 Added missing return values 2016-04-10 14:40:00 +02:00
Filippo Cucchetto
453dc7a8fc Fixed build with meson 2016-04-10 14:40:00 +02:00
Filippo Cucchetto
548b7f4e50 Checking for nullnes is unnecessary
If the memory allocation fails we are screwed anyway
2016-04-10 14:40:00 +02:00
Filippo Cucchetto
ed8cb13083 Removed useless QAbstractListModels methods for QVariant 2016-04-10 14:40:00 +02:00
Filippo Cucchetto
a2217cf0d1 Casting to void* and reinterpret cast are evil
Instead of using reinterpret_cast use the safer static_cast
Furthermore in C++ casting to void* is a really unsafe. The
main thing to keep in mind is to use the initial type when
casting back. So we must ensure that
void* t =  static_cast<QObject*>(value)
QObject* t = static_cast<void*>(value)
2016-04-10 14:40:00 +02:00
Filippo Cucchetto
94353c1045 Refactoring by using a struct for the qmlRegisterType args 2016-04-10 14:40:00 +02:00
Filippo Cucchetto
4c2570fc42 Removed switch duplicated code with a recursive template 2016-04-10 14:40:00 +02:00
Filippo Cucchetto
0506920c4b Add a battery of 20 qml registration slots 2016-04-10 14:40:00 +02:00
Filippo Cucchetto
8d62c449be Basic support for qmlRegisterType 2016-04-10 14:40:00 +02:00
Filippo Cucchetto
cd0c08fb50 Fixed arguments offset
Methods have always the return value at pos 0 and arguments in pos >= 1. This is not true for WriteProperty calls. Infact the property value is at pos 0.
2016-04-10 14:40:00 +02:00
Filippo Cucchetto
562fcc71a7 Started support for qmlregistertype 2016-04-10 14:40:00 +02:00
Filippo Cucchetto
7881cc59ed Moved implementation to cpp 2016-04-10 14:39:59 +02:00
Filippo Cucchetto
c20683154a Beautified the code 2016-04-10 14:39:59 +02:00
Filippo Cucchetto
553bec0eb7 Little refactor 2016-04-10 14:39:59 +02:00
Filippo Cucchetto
c11cc30180 Renaming and code cleanup 2016-04-10 14:39:59 +02:00
Filippo Cucchetto
b69ef602ad MetaObject is required on QObject construction 2016-04-10 14:39:59 +02:00
Filippo Cucchetto
e6753ee645 Removed useless includes 2016-04-10 14:39:59 +02:00
Filippo Cucchetto
7dd54c48e9 Added pch.h files for meson and used same CMakeLists.txt structure 2016-04-10 14:39:59 +02:00
Filippo Cucchetto
4d4b0590ae Fixed the implementation now everything seems to work fine 2016-04-10 14:39:59 +02:00
Filippo Cucchetto
28f9898573 wip 2016-04-10 14:39:59 +02:00
Filippo Cucchetto
a9c95abd57 Fixed wrong offset in property invokation 2016-04-10 14:39:59 +02:00
Filippo Cucchetto
ed7be34536 wip 2016-04-10 14:39:59 +02:00
Filippo Cucchetto
5a42e05f98 Move implementation for using QAbstractDynamicMetaObject
Added support for QAbstractListModels
Fixed bug in the serialization of arguments before slot execution
2016-04-10 14:39:59 +02:00
Filippo Cucchetto
eaaa1d13a9 Fixed bug in the creation of the parameter list 2016-04-10 14:39:59 +02:00
Filippo Cucchetto
cc965c69b8 Refactored the creation of the DosQObjectImpl 2016-04-10 14:39:59 +02:00
Filippo Cucchetto
1804071311 Renaming and beautifing the code 2016-04-10 14:39:59 +02:00
Filippo Cucchetto
23f795298d Refactoring and bug fixing 2016-04-10 14:39:59 +02:00
Filippo Cucchetto
e5457adc85 Bug fixing 2016-04-10 14:39:59 +02:00
Filippo Cucchetto
56306f8403 Added support for QMetaObject inheritance and lots of renaming 2016-04-10 14:39:59 +02:00
Filippo Cucchetto
d0e0079fcf Started the QMetaObject inheritance 2016-04-10 14:39:59 +02:00
Filippo Cucchetto
db5ee9d75a Started work for supporting QAbstractItemModels again 2016-04-10 14:39:59 +02:00
Filippo Cucchetto
91ce909191 Fixed the creation of QObject instances 2016-04-10 14:39:59 +02:00
Filippo Cucchetto
3c63201936 Added QMetaObjectFactory 2016-04-10 14:39:59 +02:00
Filippo Cucchetto
2ed13a3238 Added auto when necessary 2016-04-10 14:39:59 +02:00
Filippo Cucchetto
d993980cd4 Added QQmlApplicationEngine::loadData() 2016-04-10 14:39:59 +02:00
Filippo Cucchetto
b84505ddfe Added missing operator-> for SafeQMetaObjectPtr 2016-04-10 14:39:59 +02:00
Filippo Cucchetto
596dca3987 Added custom RAII type for MetaObjects 2016-04-10 14:39:59 +02:00
Filippo Cucchetto
b093ed48e2 Added missing namespace 2016-04-10 14:39:59 +02:00
Filippo Cucchetto
2ebada68b5 Removed leftovers 2016-04-10 14:39:59 +02:00
Filippo Cucchetto
8f188552c2 Temporary removed QAbstractListModel support and improved unit tests 2016-04-10 14:39:59 +02:00
Filippo Cucchetto
711131b4f4 Added DynamicQObjectFactory methods to C interface 2016-04-10 14:39:20 +02:00
Filippo Cucchetto
83893b2934 Introduced the concept of factories
The use of a factory decreased the creation time from 500ms for 1000 DynamicQObjects to 1.6ms
2016-04-10 14:39:20 +02:00
Moritz Maxeiner
42a5a454ef Signals may have no arguments 2015-12-28 23:33:33 +01:00