I18NFormItem item = (I18NFormItem) getItem();
Map<String, Object> dataSnapshot = new HashMap<String, Object>();
dataSnapshot.put("item", item);
dataSnapshot.put("oldI18nMap", item.getI18nMap());
dataSnapshot.put("newI18nMap", savedMap);
bus.fireEvent(new UndoableEvent(dataSnapshot, new UndoableHandler() {
@Override @SuppressWarnings("unchecked")
public void undoAction(UndoableEvent event) {
I18NFormItem item = (I18NFormItem) event.getData("item");
Map<String, String> i18nMap = (Map<String, String>) event.getData("oldI18nMap");
item.saveI18nMap(i18nMap);