Hi Thomas,

Really an excellent email this one -- I'm sure that this belongs in the wiki docs somewhere where new users would read it.

I've figured these things out, but I'm sure it would have been a very informative read for me at some point not long ago, and I'm sure there will be future qooxdoo converts who will benefit from it...

I've read the docs on the wiki many times and can follow the gist of them, but where it get tough it trying to make first steps in modifying/changing the contents of the config.json file. A few really simple examples of how to start with a project skeleton's config.json/manifest files and then make small and easy to follow changes, would be a huge help. At the moment I read and think I've got some insight on how some specific config bit works, but when I try it out I either get cryptic errors in the generatory.py console or it just doesn't do anything.

For example: a short and simple wiki page of how to extend an existing job (for a newly created Skeleton proj) that then makes several simple and easy to follow changes to say 'build' or 'source'. Once new users can get something working, it quickly becomes easy to keep trying/changing things and soon one has the required insights as to what magic is happening behind the curtain :-) .

Keep up the great work!

Cheers,
-Chris



The Tool-chain (config.json, jobs, etc) is still over my head. I'm hoping that there are a few more wiki docs/how-to's in store, from those who feel comfortable with this stuff.

I mentioned in another post there are just three wiki documents concerned with the 0.8 generator configuration. These are:

- a general overview page (http://qooxdoo.org/documentation/0.8/generator_config) - a reference page for the config keys (http://qooxdoo.org/documentation/0.8/generator_config_ref) - a page with assorted paragraphs on various config topics that deserve a bit more background (http://qooxdoo.org/documentation/0.8/generator_config_articles)

There is also a more general document on the generator, but this is more like your typical product feature-list flyer (http://qooxdoo.org/documentation/0.8/generator). So it's more about impressing than informing you :).

Of the basic structure, every application/library must contain a config.json and a Manifest.json file in its top directory. From this directory, a 'source/class' subdirectory is expected, which contains a name space subdirectory and some class files therein. All other subdirectories in the top directory are then created during generator runs ('build', 'api', 'test', ...).

The most important of these sudirectories is of course 'source' since it contains your source code. Aside from the '<name space>' subdirectory it has to have a 'resource' subdir (for icons, style files, flash files, etc.) and a 'translation' subdir (for string translation files). All these are mandatory, but might be empty. During a 'generate.py source' a source/script directory is created which contains the generator output (basically a Javascript file that references all necessary class files, icons, etc.). This one has to be referenced from the application's index.html (usually in source/index.html).

The 'build' dir (created with 'generate.py build') has a very similar structure as the 'source' dir, with 'script', 'translation' and 'resource' subdirs. The main difference is that everything that is necessary for your application to run is copied under this common root, and that the generator output script in 'build/script' contains the actual class definitions, not just references to their source files. The build dir is therefore self-contained, and doesn't have references that point outside it.

Create some vanilla skeleton apps (with 'tool/bin/create-application.py -t [gui|migration] ...') and look at their initial file structure, to get a feel for it. Tailor the source/class/<namespace>/Application.js as the main application entry class, add further classes to your needs, and let the tool chain take care of the rest. You will have to run 'generate.py source' initially, and then once in a while, and you can just try out your app opening source/index.html directly in your browser, reloading it to see changes to the code. If you are comfortable with that, run a 'generate.py build' and open build/index.html in your browser. If that is fine, copy the whole 'build' tree to your web server.

HTH,
Thomas



-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
qooxdoo-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel

Reply via email to