Friday, August 22, 2014

Choosers for parameters of a table

New feature: until now it was not possible to write a chooser for a field of lino.core.actors.Actor.parameters. Now it is. Regression danger.

This feature was needed for solving the following problem (from docs/tickets/123):

  • Die Tabelle ml.courses.SuggestedCoursesByPupil muss noch ein bisschen intelligenter und ergonomischer werden: die Auswahlliste in der Combobox “Stadt” (der Tabellenparameter) beschränken auf die Städte, für die es Kurse gibt.

TODO: After implementing this I understood that this is still not the perfect solution for our problem. In fact we need a choicelist with a hard-coded list of “course regiona”: geographical subdivisions of the area covered by the site owner. Every room gets assigned one region. The lino.core.actors.Actor.parameters (and lino.core.actors.Actor.params_layout) must then become “dynamic”, adding one checkbox per region (replacing the current combox city). “dynamic” means here: after lino.core.site.Site.setup_choicelists() but before generating the linolib.js. This wll probably require some other cool new features.

Clickable foreign keys

New feature: Clickable foreign keys in a grid are now less “intrusive”: instead of making the whole text clickable, we now prefix a clickable xsite/link.png icon.

Miscellaneous changes in Renamed “Lino Faggio” to “Lino Voga”

Change in database structure: New field ref for ml.courses.Line.

New feature: New action ml.cal.ShowEventsByDay on Event and on Reservation is a handy shortcut to “Show all calendar events of the same day.”