Mercurial > projects > qtd
changeset 104:64b874c86f9b
fixed bug with QSpinBox
author | eldar |
---|---|
date | Sat, 30 May 2009 13:07:26 +0000 |
parents | 236401001115 |
children | 3aa118a9ae71 |
files | examples/layouts/dynamiclayouts/build generator/cppimplgenerator.cpp generator/dgenerator.cpp tools/duic/tests/ui_mainwindow.d |
diffstat | 4 files changed, 16 insertions(+), 14 deletions(-) [+] |
line wrap: on
line diff
--- a/examples/layouts/dynamiclayouts/build Fri May 29 14:59:43 2009 +0000 +++ b/examples/layouts/dynamiclayouts/build Sat May 30 13:07:26 2009 +0000 @@ -1,3 +1,3 @@ #! /bin/bash -ldc main.d dialog.d -I../../../ -I../../../qt/d1 -L-L../../../lib -L-lqtdgui -L-lqtdcore -L-lQtCore -L-lQtGui -ofdynamiclayouts \ No newline at end of file +dmd main.d dialog.d -I../../../ -I../../../qt/d1 -L-L../../../lib -L-lqtdgui -L-lqtdcore -L-lQtCore -L-lQtGui -ofdynamiclayouts \ No newline at end of file
--- a/generator/cppimplgenerator.cpp Fri May 29 14:59:43 2009 +0000 +++ b/generator/cppimplgenerator.cpp Sat May 30 13:07:26 2009 +0000 @@ -780,8 +780,7 @@ if (f_type) { if (f_type->isTargetLangString()) - s << INDENT << "char* ret_str = NULL;" << endl - << INDENT << "size_t ret_str_size = 0;" << endl; + s << INDENT << "DArray ret_str;" << endl; if (f_type->name() == "QModelIndex") s << INDENT << "QModelIndexAccessor __d_return_value;" << endl; @@ -843,7 +842,7 @@ if (f_type) { if (f_type->isTargetLangString()) - s << ", ret_str, ret_str_size"; + s << ", &ret_str"; if (f_type->name() == "QModelIndex" || f_type->typeEntry()->isStructInD()) s << ", &__d_return_value"; if (f_type->isContainer()) @@ -875,7 +874,7 @@ } if (f_type->isTargetLangString()) - s << INDENT << "return " << "QString::fromUtf8(ret_str, ret_str_size);" << endl; + s << INDENT << "return " << "QString::fromUtf8((const char*) ret_str.ptr, ret_str.length);" << endl; if ( ( f_type->isValue() && !f_type->typeEntry()->isStructInD() ) || f_type->isVariant() ) s << INDENT << "return " << f_type->name() << "(*__qt_return_value);" << endl; //" __qt_return_value = "; @@ -894,9 +893,12 @@ s << "(void *d_entity"; if (ret_type) { - if (ret_type->isTargetLangString()) - s << ", char* ret_str, size_t ret_str_size"; - + if (ret_type->isTargetLangString()) { + if (d_export) + s << ", string* ret_str"; + else + s << ", DArray* ret_str"; + } if (ret_type->name() == "QModelIndex") s << ", QModelIndexAccessor *__d_return_value"; else if(ret_type->typeEntry()->isStructInD()) @@ -2113,6 +2115,8 @@ extra_param); s << endl; + writeRefArguments(s, java_function); + writeQtToJava(s, function_type, qt_return_value, java_return_value, java_function, 0, EnumAsInts); @@ -2129,8 +2133,8 @@ } else { writeFunctionCall(s, qt_object_name, java_function, function_prefix, option, extra_param); + writeRefArguments(s, java_function); } - writeRefArguments(s, java_function); } } if(!java_function->argumentReplaced(0).isEmpty()) {
--- a/generator/dgenerator.cpp Fri May 29 14:59:43 2009 +0000 +++ b/generator/dgenerator.cpp Sat May 30 13:07:26 2009 +0000 @@ -2928,12 +2928,10 @@ native_id = "__ptr_" + f_type->typeEntry()->designatedInterface()->name(); s << INDENT << "return ret_value is null? null : ret_value." << native_id << ";" << endl; } else if (f_type->isTargetLangString()) - s << INDENT << "ret_str = _d_str.ptr;" << endl - << INDENT << "ret_str_size = _d_str.length;" << endl; + s << INDENT << "*ret_str = _d_str;" << endl; else if (f_type->isContainer()) s << INDENT << "*__d_arr_ptr = return_value.ptr;" << endl << INDENT << "*__d_arr_size = return_value.length;" << endl; -// << INDENT << "addReference(return_value.ptr);" << endl; else if (f_type->name() == "QModelIndex" || f_type->typeEntry()->isStructInD()) ; else
--- a/tools/duic/tests/ui_mainwindow.d Fri May 29 14:59:43 2009 +0000 +++ b/tools/duic/tests/ui_mainwindow.d Sat May 30 13:07:26 2009 +0000 @@ -1,13 +1,13 @@ /******************************************************************************** ** Form generated from reading ui file 'mainwindow.ui' ** -** Created: Tue May 19 04:13:07 2009 +** Created: Sat May 30 11:51:12 2009 ** by: QtD User Interface Compiler version 4.5.0 ** ** WARNING! All changes made in this file will be lost when recompiling ui file! ********************************************************************************/ -//module ui_mainwindow; +module ui_mainwindow; public import qt.core.QString; public import qt.core.QVariant;