There are two changes in this proposal. One is to move the logic
for extracting cell data from the row datum (and handling auto columns)
to the Cell class, into a separate method for easy extending. The
second is to make that extending possible by making the cell class
configurable in the DataTable's meta.
Those changes are supposed to make it easier to extend the DataTable
with new kinds of cells -- for example, cells that contain an editable
widget, a progress bar, an icon, etc. as well as make it easier to
modify the behavior of the auto columns -- for example, by making it
possible to have some of the multi_select checkboxes preselected. Those
changes would also make it easier to integrate DataTable with a Django
FormSet.
Right now, in order to modify any of the proposed Cell.get_data
behavior, one has to make their own Row class and practically copy-paste
the whole Row.load_cells method, as there is no easy way to extend it.
Reviewed: https:/ /review. openstack. org/49114 github. com/openstack/ horizon/ commit/ fdf920e7149dc35 47caa1a2cb1ea54 930bfd3589
Committed: http://
Submitter: Jenkins
Branch: master
commit fdf920e7149dc35 47caa1a2cb1ea54 930bfd3589
Author: Radomir Dopieralski <email address hidden>
Date: Tue Sep 24 11:15:31 2013 +0200
Configurable cell_class in DataTable
There are two changes in this proposal. One is to move the logic
for extracting cell data from the row datum (and handling auto columns)
to the Cell class, into a separate method for easy extending. The
second is to make that extending possible by making the cell class
configurable in the DataTable's meta.
Those changes are supposed to make it easier to extend the DataTable
with new kinds of cells -- for example, cells that contain an editable
widget, a progress bar, an icon, etc. as well as make it easier to
modify the behavior of the auto columns -- for example, by making it
possible to have some of the multi_select checkboxes preselected. Those
changes would also make it easier to integrate DataTable with a Django
FormSet.
Right now, in order to modify any of the proposed Cell.get_data
behavior, one has to make their own Row class and practically copy-paste
the whole Row.load_cells method, as there is no easy way to extend it.
Change-Id: I29277a9e77e1c4 13193fe80d3f8cf e001bf5d709
Closes-Bug: #1229677