Hi to all,<br><br>before announcing myself and this proposal to the necessitas devel ml I have already discssed the various options with BogDan that got me also good advices on the ways that can be followed.<br><br>I have developed a framework - Qt Complex - that was distributed some months ago for symbian, desktop, Harmattan and other platforms. It aims to support the QML development of efficient and customized interfaces for Qt applications with QML UIs. This was Qt Complex 1.1.0 that you can find (information and usage notes) on <a href="http://projects.development.nokia.com/Qt_Complex">projects.development.nokia.com/Qt_Complex</a><br>
<br>Then - after starting some developments for Android platforms with Necessitas - I am releasing Qt Complex 2.0 that is in the final test phase. Qt Complex 2.0 release candidate preview is on gitorious: <a href="https://gitorious.org/qt-complex">https://gitorious.org/qt-complex</a> The most important aspect of this new version is the renewed style for the grapic elements, the addition of some components and some C++ classes imported in QML as usable elements. The most important elements are the following:<br>
<br>1. Sliding multi-level toolbars<br>2. Various customizable buttons for menus, icons graphic interfaces etc.<br>3. All the elements interface can be managed via embedded themes<br>4. External configuration files for a more efficient localization of the resources (text and more)<br>
<br>Then, on of the most interesting behaviors - I think - is that all the objects of Qt Complex 2.0 are maneged through a Loader. This means that with a single property change an element con be loaded and unloaded for memory saving and resource optimization.<br>
<br>The QML elements from Qt Complex C++ classes are three:<br><br><AccessData> To manage any kind of json file in utf-8 and unicode format (this is for text multi-language support) that are returned to the QML environment ad a QString datastream (a property of the element). This works in conjunction with a set of js functions converting the datastream QStrings from files to a json java object in a single-instruction at a very high speed.<br>
<br><WebQuery> To manage any kind of web requests with the option of file downloading, data only (returning a datastream in a property), parameter setting for path, url, filename to save and more, zip compressed downloaded files (including zip navigation and file compress/uncompress) and custom header setting before the http or https get(). WebQuery element can manage the common web get via download or php engines but has also the ability to manage the json web servers serving data queries via rpc json post.<br>
<br><QuaZip> Qt Complex integrates the original porting of QuaZip library integrated with the other classes. - @todo: the final release will include a QML element for independend zip-compressed files -<br><br>In addition to these classes there are other classes - and related QML elements - as follows:<br>
<br>1. <FileAccess> To manage various system folders for simplified access to files in all the devices i.e. temp folder, application folder, current folder and /sdcard/custom_user_folders, creating folders tree, get the file existence timestamp, get the byte file size and check for a file existence.<br>
<br>2. <PlatformConstants> This is a class that defines a set of constants i.e. the colors coded following the most recent UI design styles. Most important the class includes a set of methods that can be called by its QML instance based on the device pysical sizes and orientation for a full device-independend UI.<br>
<br>The idea that I have discussed with BodDan is to include in some manner Qt Complex 2.0 in one of the next Qt Necessitas version - 4 or more - initially including this, for example, as a "lab" components that can be optionally installed from Necessitas or a similar way. The most reliable idea of BogDan as I see will be the following:<br>
<br><span style="background-color: rgb(255, 255, 204);">BogDan wrote: I don't know if we have enough time to integrate it in alpha 4, first we need</span><br style="background-color: rgb(255, 255, 204);"><span style="background-color: rgb(255, 255, 204);">
to decide how we do it, most probably we need to create a new QtCreator</span><br style="background-color: rgb(255, 255, 204);"><span style="background-color: rgb(255, 255, 204);">
plugin, which will download qml plugins on demand, as you may know</span><br style="background-color: rgb(255, 255, 204);"><span style="background-color: rgb(255, 255, 204);">
somebody announce his intention to port qt qml components to android,</span><br style="background-color: rgb(255, 255, 204);"><span style="background-color: rgb(255, 255, 204);">
so, probably a new QtCreator plugin is the best solution ... also Ministro</span><br style="background-color: rgb(255, 255, 204);"><span style="background-color: rgb(255, 255, 204);">
needs some changes in order to handle this plugins, I'll do the best to</span><br style="background-color: rgb(51, 102, 255);"><span style="background-color: rgb(51, 102, 255);">
</span><br>At this point, I need some advices on how we can proceed - I think best - in this direction. <br><br>Regarding the documentation all the components are documented with Doxygen. You can see a preview of Qt Complex 2.0 documentation (not yet with the Usage guidelines) here: <a href="http://ec2-50-16-63-40.compute-1.amazonaws.com/qtc.2.0">http://ec2-50-16-63-40.compute-1.amazonaws.com/qtc.2.0</a> (it will become <a href="http://www.qtcomplex.net">http://www.qtcomplex.net</a> in few days :) )<br>
<br>Then as BogDan proposed <br><br><span style="background-color: rgb(255, 255, 204);">BogDan wrote:</span><br style="background-color: rgb(255, 255, 204);"><span style="background-color: rgb(255, 255, 204);">There are a few things where we really need help (I'll list them by</span><br style="background-color: rgb(255, 255, 204);">
<span style="background-color: rgb(255, 255, 204);">
importance) :</span><br style="background-color: rgb(255, 255, 204);"><span style="background-color: rgb(255, 255, 204);">
- make all qt tests and benchmarks run ! These tests validates our</span><br style="background-color: rgb(255, 255, 204);"><span style="background-color: rgb(255, 255, 204);">
work, so they are very important ! use need to use</span><br style="background-color: rgb(255, 255, 204);"><span style="background-color: rgb(255, 255, 204);">
"./android/</span><a style="background-color: rgb(255, 255, 204);" href="http://runtests.pl/" target="_blank">runtests.pl</a><span style="background-color: rgb(255, 255, 204);">" script to run them.</span><br style="background-color: rgb(255, 255, 204);">
<span style="background-color: rgb(255, 255, 204);">
- Android Style plugin, this is another important task, this plugin</span><br style="background-color: rgb(255, 255, 204);"><span style="background-color: rgb(255, 255, 204);">
will make your apps to look native ! Check "style-plugin" branch.</span><br style="background-color: rgb(255, 255, 204);"><span style="background-color: rgb(255, 255, 204);">
- Menus.</span><br style="background-color: rgb(255, 255, 204);"><span style="background-color: rgb(255, 255, 204);">
- QtMobility, most of plugins work well but some of them have a few problems.</span><br style="background-color: rgb(255, 255, 204);"><span style="background-color: rgb(255, 255, 204);">
- QtCreator android documentation.</span><br>
<br>I can support the documentation of the Qt Necessitas with the help of my wife Anto (who has already done the small job of translating some strings of Necessitas and Ministro). I can work on the English documentation - that she provide with a serious proofreading - and, with the help of some other if any volunteers is there, the localiation in Italian and Spanish languages. To start this job I will discuss the way you have in mind to create the documentation support. At the moment I know Doxygen and Linux-doc tools - already used for some linux kernel versions I have done in past -. It is also possible the creation of the Qt documentation using Qt-Doc but about this - before deciding to document Qt Complex with Doxygen - I have already discussed with some trolls (the guys from Nokia, n.d.a.) that explained me that this documentation method is only used for their internal development and it is not stable for a documentation support. Please let me know what have you in mind and what do you think about this step.<br>
<br>I need to use QtMobility in a development I am working on, so also this section maybe useful for me helping for full working. Please let me know what I should do to take the current version and search for the actually open tickets .<br>
<br>Usually I wok on Mac but I huse also linux and Windows platforms. Thus to manage the necessitas 3 I amd setting a VM with Ubuntu 10.04 LT on it. Tell me what are the other guys that are working for the Mac version release so we can work in conjunction with these problems.<br>
<br>Last, but not least, before starting any plugin development I need to understand clear what does it means the "Android style". In my mind I am thinking as a question of graphics and design but it seems a wrong questions. Thank you for your help.<br>
<br>That's all I think. Hope we can start asap on these jobs.<br><br>Cheers, Enrico<br>