Change-Id: I6d5ef1a125ae1739b0e3de49eac2f68ba66afb05tags/7.4.8
@@ -1050,6 +1050,7 @@ public class Grid<T> extends ResizeComposite implements | |||
public static final int KEYCODE_HIDE = KeyCodes.KEY_ESCAPE; | |||
private static final String ERROR_CLASS_NAME = "error"; | |||
private static final String NOT_EDITABLE_CLASS_NAME = "not-editable"; | |||
protected enum State { | |||
INACTIVE, ACTIVATING, BINDING, ACTIVE, SAVING | |||
@@ -1433,6 +1434,8 @@ public class Grid<T> extends ResizeComposite implements | |||
columnToWidget.put(column, editor); | |||
attachWidget(editor, cell); | |||
} | |||
} else { | |||
cell.addClassName(NOT_EDITABLE_CLASS_NAME); | |||
} | |||
} | |||
@@ -298,8 +298,16 @@ public class GridEditorTest extends GridBasicFeaturesTest { | |||
selectMenuPath(EDIT_ITEM_5); | |||
assertEditorOpen(); | |||
GridEditorElement editor = getGridElement().getEditor(); | |||
assertFalse("Uneditable column should not have an editor widget", | |||
getGridElement().getEditor().isEditable(3)); | |||
editor.isEditable(3)); | |||
assertEquals( | |||
"Not editable cell did not contain correct classname", | |||
"not-editable", | |||
editor.findElement(By.className("v-grid-editor-cells")) | |||
.findElements(By.xpath("./div")).get(3) | |||
.getAttribute("class")); | |||
} | |||
private WebElement getSaveButton() { |