Extend generation process

Generation process is driven by a Scenario Tree contained inside Scenario.xml file.
Update Scenario Tree will change the generation process.
Several ways are proposed to impact the generation:

  • Specify Pojo rewriters: Pojo will be rewrited. Changes will impact input for generation process.
  • Specify items in the Plugin Entities list of the Scenario Tree to force generation to add features.
  • Use extension of the default scenario classes: Changes will impact the generated axml files.
  • Use extension of the default generators classes: Changes will impact the generated java files.

You can also use or create a new file for a partial Scenario Tree containing items described above. There is an option for merging both Scenario Trees.
This feature is useful when you want to reuse similar changes for several projects.

Extend components

You can easily extend components provided automatically by generated classes. This is a very important feature for Adichatz.

Suppose that you want the foreground color of field description to change when length of the text is greater than 90.
At least, two possibilities are provided by Adichatz:

Create a listener in the XML FilmDIGENERATED.axml file.

Listeners provides a very effective and simple way to add behaviors to your application. Several categories of listeners allows you to add code during running application:

  • Life cycle: fired at specific times of the life cycle of a controller.
  • Control: fired when value changes due to user actions.
  • Entity: Listen to events on entities (lock, change status…)

Extends a Controller

Element described by XML file are controllers which are composition of UI widgets. These controllers could be easily extended and their extension could replace the original controller. Controller extension is very useful when you have to bring cumbersome behaviors. It is heavily used to build Adichatz studio, in particular editors which manages all *.axml and Scenario.xml files.