yui/yui3 — pull request #746 by Satyam (2013-05-14 16:33:19+00:00)
Title: First pre-release for comments

So this is it, the long awaited (at least awaited by me, since I wanted to get rid of it!) 26 new or changed files for your perusal. Any volunteers?

I would suggest starting here: https://github.com/Satyam/yui3-1/pull/new/yui:dev-3.x...dt-editable#L9R1665 which is the section of the user guide explaining cell editing.

The main components are three modules, `datatable-editable` which contains the functionality that attaches to the datatable itself. It adds the attributes that control the activation of the module and its features and then reads the columns definitions to build the cell editors. Later on, it will open them.

This same module contains the base class from which all individual cell editors inherit from.

Two further modules contain the cell editors themselves, the inline and the popup versions. They can be loaded separately depending on the kind of cell editors needed. They don't collide with each other so they can also be loaded together, though it would look weird to the user. Either of them will load `datatable-editable`.

These modules rely on a bunch of other PRs, few are merged yet..
* `Y.Number.parse` and `Y.Date.parse` are needed so the values formatted into the cell editor can be parsed back.
* `datatable-scroll` so the cell editor can respond to the table scrolling by repositioning itself or hide when out of the window.
* `datatable-keynav` for keyboard navigation within the datatable and not just mouse clicking.
* `datatable-formatter` for cell formatting.

The unit tests are as yet quite minimal. Anyway, my intention was to start the discussion about this new module. Something of this complexity needs plenty of time for discussing so we might as well start right away.

Note that the other PRs listed above are independent and useful on their own, it would be great to have them merged in advance.