Yes, OnIsReadOnly doesn't called in paint - painter doesn't need to know about readonly state of node.
If you want to use FlyGrid.IsReadOnly event handling - you can use Column.OnIsReadOnly - this method uses the same scheme excluding examining Column.ReadOnly.
but this easy to use:
[c#]
//in column inheritor
public bool CellIsReadOnly(FlyGrid flyGrid, NodeBase node)
{
if (!this.readOnly)
{
//this method calling flyGrid.OnIsReadonly and if result is false - FlyGrid.IsReadOnly fired (if handler connected)
return base.OnIsReadOnly(flyGrid, node);
}
return true;
}