I don't think that we fire any event on activating a cell editor. It will be activated usually on executing MouseEditAction or KeyEditAction, which will trigger the corresponding edit command handlers. But before the activation some checks are performed, so only listening to that commands or actions wouldn't be enough. I would need to do some investigation on this, but currently I guess it is not possible to be notified when a cell enters edit mode.
Why do you need to know when a cell enters edit mode?
So I figured out a way to do it, basically I create a new AbstractUiBindingConfiguration and pass in an IMouseAction() that does the standard doCommand(), but in addition to this, I fire off my own cellEditListener on the control I have that contains the natTable.
Within my control i just listen to this event and be notifed when the editor shows.
The reason I want this, is so that I can get rid of a label (that I put on it when validation fails (I have a custom AbstractEditErrorHandler which allows me to commit invalid data) so that I can change styling of the cell) when it enters edit mode.
Just to be sure, do you use the current master for NatTable 1.0.0 or the 0.9.0 release? Because 1.0.0 will add support for skipping validation which will allow committing invalid data. Not sure of course if this fits your needs in detail.
But why do you change the styling of the cell when it enters edit mode? Shouldn't you change the styling after commit of valid data?
Well 1.0.0 is in active development so you would need to check out the sources. There will be a major refactoring which is why I'm asking.
Hm, interesting question. What might also fulfill your requirements would be not to use validators but cell label overrider that apply labels for invalid data. Because as you commit the values to the model, they need to be valid but marked as invalid in terms of a warning in rendering only.
This sounds like you want to achieve a concatenation of style labels. Like "if label A and label B are applied use style C".
This is currently not supported. Usually the styles stack up which means that you don't need to specify the whole style attribute set, but only the styles you want to override. Unfortunately the selection anchor style is already set by label, and therefore the stacking shouldn't work.