From a54e140c38d0e2034b616bb62185ed0219bb69f4 Mon Sep 17 00:00:00 2001 From: serge-rider Date: Sat, 23 Jun 2018 12:49:43 +0300 Subject: [PATCH] ERD: direct notes editor Former-commit-id: 6f5c014202329bd74ebdd3f53999e4ae79919646 --- .../ext/erd/command/NoteSetTextCommand.java | 17 +- .../directedit/ExtendedDirectEditManager.java | 307 +++++++++--------- .../erd/directedit/FigureEditorLocator.java | 65 ++++ .../dbeaver/ext/erd/figures/NoteFigure.java | 8 + .../jkiss/dbeaver/ext/erd/model/ERDNote.java | 14 +- .../jkiss/dbeaver/ext/erd/part/NotePart.java | 52 ++- .../ext/erd/policy/NoteDirectEditPolicy.java | 82 ++--- 7 files changed, 312 insertions(+), 233 deletions(-) create mode 100644 plugins/org.jkiss.dbeaver.ext.erd/src/org/jkiss/dbeaver/ext/erd/directedit/FigureEditorLocator.java diff --git a/plugins/org.jkiss.dbeaver.ext.erd/src/org/jkiss/dbeaver/ext/erd/command/NoteSetTextCommand.java b/plugins/org.jkiss.dbeaver.ext.erd/src/org/jkiss/dbeaver/ext/erd/command/NoteSetTextCommand.java index 582107681c..615d168494 100644 --- a/plugins/org.jkiss.dbeaver.ext.erd/src/org/jkiss/dbeaver/ext/erd/command/NoteSetTextCommand.java +++ b/plugins/org.jkiss.dbeaver.ext.erd/src/org/jkiss/dbeaver/ext/erd/command/NoteSetTextCommand.java @@ -18,36 +18,35 @@ package org.jkiss.dbeaver.ext.erd.command; import org.eclipse.gef.commands.Command; import org.jkiss.dbeaver.ext.erd.figures.NoteFigure; -import org.jkiss.dbeaver.ext.erd.model.ERDNote; +import org.jkiss.dbeaver.ext.erd.part.NotePart; /** * Change note text */ public class NoteSetTextCommand extends Command { - private ERDNote note; - private NoteFigure figure; + private NotePart note; private String newText; private String oldText; - public NoteSetTextCommand(ERDNote note, NoteFigure figure, String newText) { + public NoteSetTextCommand(NotePart note, String newText) { super("Set note text"); this.note = note; - this.figure = figure; + this.oldText = this.note.getName(); this.newText = newText; } @Override public void execute() { - note.setObject(newText); - figure.setText(newText); + note.getNote().setObject(newText); + ((NoteFigure) note.getFigure()).setText(newText); } @Override public void undo() { - note.setObject(oldText); - figure.setText(oldText); + note.getNote().setObject(oldText); + ((NoteFigure) note.getFigure()).setText(oldText); } } \ No newline at end of file diff --git a/plugins/org.jkiss.dbeaver.ext.erd/src/org/jkiss/dbeaver/ext/erd/directedit/ExtendedDirectEditManager.java b/plugins/org.jkiss.dbeaver.ext.erd/src/org/jkiss/dbeaver/ext/erd/directedit/ExtendedDirectEditManager.java index a66eece5c6..283c5028e6 100644 --- a/plugins/org.jkiss.dbeaver.ext.erd/src/org/jkiss/dbeaver/ext/erd/directedit/ExtendedDirectEditManager.java +++ b/plugins/org.jkiss.dbeaver.ext.erd/src/org/jkiss/dbeaver/ext/erd/directedit/ExtendedDirectEditManager.java @@ -36,167 +36,160 @@ import org.eclipse.swt.graphics.FontData; import org.eclipse.swt.graphics.GC; import org.eclipse.swt.graphics.Point; import org.eclipse.swt.widgets.Text; +import org.jkiss.dbeaver.ext.erd.figures.NoteFigure; /** * A generic DirectEdit manager to be used for labels which includes validation * functionality by adding the ICellEditorValidator on startup */ -public class ExtendedDirectEditManager extends DirectEditManager -{ - - Font figureFont; - protected VerifyListener verifyListener; - protected Label label; - protected String originalValue; - private boolean committing = false; - private ICellEditorValidator validator = null; - - /** - * Creates a new ActivityDirectEditManager with the given attributes. - * - * @param source - * the source EditPart - * @param editorType - * type of editor - * @param locator - * the CellEditorLocator - */ - public ExtendedDirectEditManager(GraphicalEditPart source, Class editorType, CellEditorLocator locator, - Label label, ICellEditorValidator validator) - { - super(source, editorType, locator); - this.label = label; - this.originalValue = label.getText(); - this.validator = validator; - } - - /** - * @see org.eclipse.gef.tools.DirectEditManager#bringDown() - */ - @Override - protected void bringDown() - { - Font disposeFont = figureFont; - figureFont = null; - super.bringDown(); - if (disposeFont != null) - disposeFont.dispose(); - } - - /** - * @see org.eclipse.gef.tools.DirectEditManager#initCellEditor() - */ - @Override - protected void initCellEditor() - { - - Text text = (Text) getCellEditor().getControl(); - - //add the verifyListener to apply changes to the control size - verifyListener = new VerifyListener() - { - - /** - * Changes the size of the editor control to reflect the changed - * text - */ - @Override - public void verifyText(VerifyEvent event) - { - Text text = (Text) getCellEditor().getControl(); - String oldText = text.getText(); - String leftText = oldText.substring(0, event.start); - String rightText = oldText.substring(event.end, oldText.length()); - GC gc = new GC(text); - if (leftText == null) - leftText = ""; - if (rightText == null) - rightText = ""; - - String s = leftText + event.text + rightText; - - Point size = gc.textExtent(leftText + event.text + rightText); - - gc.dispose(); - if (size.x != 0) - size = text.computeSize(size.x, SWT.DEFAULT); - else - { - //just make it square - size.x = size.y; - } - getCellEditor().getControl().setSize(size.x, size.y); - } - - }; - text.addVerifyListener(verifyListener); - - //set the initial value of the - originalValue = this.label.getText(); - getCellEditor().setValue(originalValue); - - //calculate the font size of the underlying - IFigure figure = getEditPart().getFigure(); - figureFont = figure.getFont(); - FontData data = figureFont.getFontData()[0]; - Dimension fontSize = new Dimension(0, data.getHeight()); - - //set the font to be used - this.label.translateToAbsolute(fontSize); - data.setHeight(fontSize.height); - figureFont = new Font(null, data); - - //set the validator for the CellEditor - getCellEditor().setValidator(validator); - - text.setFont(figureFont); - text.selectAll(); - } - - /** - * Commits the current value of the cell editor by getting a {@link Command} - * from the source edit part and executing it via the {@link CommandStack}. - * Finally, {@link #bringDown()}is called to perform and necessary cleanup. - */ - @Override - protected void commit() - { - - if (committing) - return; - committing = true; - try - { - - //we set the cell editor control to invisible to remove any - // possible flicker - getCellEditor().getControl().setVisible(false); - if (isDirty()) - { - CommandStack stack = getEditPart().getViewer().getEditDomain().getCommandStack(); - Command command = getEditPart().getCommand(getDirectEditRequest()); - - if (command != null && command.canExecute()) - stack.execute(command); - } - } - finally - { - bringDown(); - committing = false; - } - } - - /** - * Need to override so as to remove the verify listener - */ - @Override - protected void unhookListeners() - { - super.unhookListeners(); - Text text = (Text) getCellEditor().getControl(); - text.removeVerifyListener(verifyListener); - verifyListener = null; - } +public class ExtendedDirectEditManager extends DirectEditManager { + + protected Font figureFont; + protected VerifyListener verifyListener; + protected IFigure figure; + protected String originalValue; + private boolean committing = false; + private ICellEditorValidator validator = null; + + /** + * Creates a new ActivityDirectEditManager with the given attributes. + * + * @param source the source EditPart + * @param editorType type of editor + * @param locator the CellEditorLocator + */ + public ExtendedDirectEditManager(GraphicalEditPart source, Class editorType, CellEditorLocator locator, + IFigure figure, ICellEditorValidator validator) { + super(source, editorType, locator); + this.figure = figure; + this.originalValue = getFigureText(figure); + this.validator = validator; + } + + private static String getFigureText(IFigure figure) { + if (figure instanceof Label) { + return ((Label) figure).getText(); + } else if (figure instanceof NoteFigure) { + return ((NoteFigure) figure).getText(); + } else { + return "???"; + } + } + + /** + * @see org.eclipse.gef.tools.DirectEditManager#bringDown() + */ + @Override + protected void bringDown() { + Font disposeFont = figureFont; + figureFont = null; + super.bringDown(); + if (disposeFont != null) + disposeFont.dispose(); + } + + /** + * @see org.eclipse.gef.tools.DirectEditManager#initCellEditor() + */ + @Override + protected void initCellEditor() { + + Text text = (Text) getCellEditor().getControl(); + + //add the verifyListener to apply changes to the control size + verifyListener = new VerifyListener() { + + /** + * Changes the size of the editor control to reflect the changed + * text + */ + @Override + public void verifyText(VerifyEvent event) { + Text text = (Text) getCellEditor().getControl(); + String oldText = text.getText(); + String leftText = oldText.substring(0, event.start); + String rightText = oldText.substring(event.end, oldText.length()); + GC gc = new GC(text); + + String s = leftText + event.text + rightText; + + Point size = gc.textExtent(leftText + event.text + rightText); + + gc.dispose(); + if (size.x != 0) + size = text.computeSize(size.x, SWT.DEFAULT); + else { + //just make it square + size.x = size.y; + } + getCellEditor().getControl().setSize(size.x, size.y); + } + + }; + text.addVerifyListener(verifyListener); + + //set the initial value of the + originalValue = getFigureText(this.figure); + getCellEditor().setValue(originalValue); + + //calculate the font size of the underlying + IFigure figure = getEditPart().getFigure(); + figureFont = figure.getFont(); + FontData data = figureFont.getFontData()[0]; + Dimension fontSize = new Dimension(0, data.getHeight()); + + //set the font to be used + this.figure.translateToAbsolute(fontSize); + data.setHeight(fontSize.height); + figureFont = new Font(null, data); + + //set the validator for the CellEditor + getCellEditor().setValidator(validator); + + text.setFont(figureFont); + text.selectAll(); + } + + /** + * Commits the current value of the cell editor by getting a {@link Command} + * from the source edit part and executing it via the {@link CommandStack}. + * Finally, {@link #bringDown()}is called to perform and necessary cleanup. + */ + @Override + protected void commit() { + + if (committing) + return; + + committing = true; + + try { + + //we set the cell editor control to invisible to remove any + // possible flicker + getCellEditor().getControl().setVisible(false); + if (isDirty()) { + CommandStack stack = getEditPart().getViewer().getEditDomain().getCommandStack(); + Command command = getEditPart().getCommand(getDirectEditRequest()); + + if (command != null && command.canExecute()) + stack.execute(command); + } + } finally { + bringDown(); + committing = false; + } + } + + /** + * Need to override so as to remove the verify listener + */ + @Override + protected void unhookListeners() { + super.unhookListeners(); + Text text = (Text) getCellEditor().getControl(); + text.removeVerifyListener(verifyListener); + verifyListener = null; + } } \ No newline at end of file diff --git a/plugins/org.jkiss.dbeaver.ext.erd/src/org/jkiss/dbeaver/ext/erd/directedit/FigureEditorLocator.java b/plugins/org.jkiss.dbeaver.ext.erd/src/org/jkiss/dbeaver/ext/erd/directedit/FigureEditorLocator.java new file mode 100644 index 0000000000..25047e057e --- /dev/null +++ b/plugins/org.jkiss.dbeaver.ext.erd/src/org/jkiss/dbeaver/ext/erd/directedit/FigureEditorLocator.java @@ -0,0 +1,65 @@ +/* + * DBeaver - Universal Database Manager + * Copyright (C) 2010-2018 Serge Rider (serge@jkiss.org) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/* + * Created on Jul 13, 2004 + */ +package org.jkiss.dbeaver.ext.erd.directedit; + +import org.eclipse.draw2d.IFigure; +import org.eclipse.draw2d.geometry.Rectangle; +import org.eclipse.draw2d.text.TextFlow; +import org.eclipse.gef.tools.CellEditorLocator; +import org.eclipse.jface.viewers.CellEditor; +import org.eclipse.swt.SWT; +import org.eclipse.swt.graphics.Point; +import org.eclipse.swt.widgets.Text; + +/** + * A CellEditorLocator for a specified text flow + * + * @author Serge Rider + */ +public class FigureEditorLocator implements CellEditorLocator { + + private IFigure figure; + + public FigureEditorLocator(IFigure label) { + this.figure = label; + } + + /** + * expands the size of the control by 1 pixel in each direction + */ + @Override + public void relocate(CellEditor celleditor) { + Text text = (Text) celleditor.getControl(); + + Point pref = text.computeSize(SWT.DEFAULT, SWT.DEFAULT); + Rectangle rect = figure.getBounds().getCopy(); + figure.translateToAbsolute(rect); + if (text.getCharCount() > 1) + text.setBounds(rect.x - 1, rect.y - 1, pref.x + 1, pref.y + 1); + else + text.setBounds(rect.x - 1, rect.y - 1, pref.y + 1, pref.y + 1); + + } + + protected IFigure getFigure() { + return figure; + } + +} \ No newline at end of file diff --git a/plugins/org.jkiss.dbeaver.ext.erd/src/org/jkiss/dbeaver/ext/erd/figures/NoteFigure.java b/plugins/org.jkiss.dbeaver.ext.erd/src/org/jkiss/dbeaver/ext/erd/figures/NoteFigure.java index 6f2d944a40..a52a68db75 100644 --- a/plugins/org.jkiss.dbeaver.ext.erd/src/org/jkiss/dbeaver/ext/erd/figures/NoteFigure.java +++ b/plugins/org.jkiss.dbeaver.ext.erd/src/org/jkiss/dbeaver/ext/erd/figures/NoteFigure.java @@ -54,6 +54,14 @@ public class NoteFigure extends FlowPage { )); } + public TextFlow getTextFlow() { + return textFlow; + } + + public String getText() { + return textFlow.getText(); + } + public void setText(String text) { textFlow.setText(text); diff --git a/plugins/org.jkiss.dbeaver.ext.erd/src/org/jkiss/dbeaver/ext/erd/model/ERDNote.java b/plugins/org.jkiss.dbeaver.ext.erd/src/org/jkiss/dbeaver/ext/erd/model/ERDNote.java index 6d2e2c1089..f98a83f958 100644 --- a/plugins/org.jkiss.dbeaver.ext.erd/src/org/jkiss/dbeaver/ext/erd/model/ERDNote.java +++ b/plugins/org.jkiss.dbeaver.ext.erd/src/org/jkiss/dbeaver/ext/erd/model/ERDNote.java @@ -17,21 +17,25 @@ package org.jkiss.dbeaver.ext.erd.model; import org.jkiss.code.NotNull; +import org.jkiss.utils.CommonUtils; /** * Simple text note */ public class ERDNote extends ERDObject { - public ERDNote(String text) - { - super(text); + public ERDNote(String text) { + super(CommonUtils.notEmpty(text)); } @NotNull @Override - public String getName() - { + public String getName() { return getObject(); } + + @Override + public void setObject(String object) { + super.setObject(CommonUtils.notEmpty(object)); + } } diff --git a/plugins/org.jkiss.dbeaver.ext.erd/src/org/jkiss/dbeaver/ext/erd/part/NotePart.java b/plugins/org.jkiss.dbeaver.ext.erd/src/org/jkiss/dbeaver/ext/erd/part/NotePart.java index 0bbd3a3138..b802129f48 100644 --- a/plugins/org.jkiss.dbeaver.ext.erd/src/org/jkiss/dbeaver/ext/erd/part/NotePart.java +++ b/plugins/org.jkiss.dbeaver.ext.erd/src/org/jkiss/dbeaver/ext/erd/part/NotePart.java @@ -19,7 +19,6 @@ package org.jkiss.dbeaver.ext.erd.part; import org.eclipse.draw2d.ChopboxAnchor; import org.eclipse.draw2d.ConnectionAnchor; -import org.eclipse.draw2d.IFigure; import org.eclipse.draw2d.geometry.Dimension; import org.eclipse.draw2d.geometry.Point; import org.eclipse.draw2d.geometry.Rectangle; @@ -27,15 +26,18 @@ import org.eclipse.gef.ConnectionEditPart; import org.eclipse.gef.EditPolicy; import org.eclipse.gef.Request; import org.eclipse.gef.RequestConstants; -import org.jkiss.dbeaver.ext.erd.ERDMessages; -import org.jkiss.dbeaver.ext.erd.command.EntityAddCommand; -import org.jkiss.dbeaver.ext.erd.command.NoteSetTextCommand; +import org.eclipse.gef.requests.DirectEditRequest; +import org.eclipse.gef.tools.DirectEditManager; +import org.eclipse.jface.viewers.TextCellEditor; +import org.jkiss.dbeaver.ext.erd.directedit.ExtendedDirectEditManager; +import org.jkiss.dbeaver.ext.erd.directedit.FigureEditorLocator; +import org.jkiss.dbeaver.ext.erd.directedit.ValidationMessageHandler; +import org.jkiss.dbeaver.ext.erd.editor.ERDGraphicalViewer; import org.jkiss.dbeaver.ext.erd.figures.NoteFigure; import org.jkiss.dbeaver.ext.erd.model.ERDNote; import org.jkiss.dbeaver.ext.erd.model.EntityDiagram; -import org.jkiss.dbeaver.ext.erd.policy.NoteEditPolicy; +import org.jkiss.dbeaver.ext.erd.policy.NoteDirectEditPolicy; import org.jkiss.dbeaver.model.DBPNamedObject; -import org.jkiss.dbeaver.ui.dialogs.EditTextDialog; import java.beans.PropertyChangeEvent; @@ -46,6 +48,8 @@ import java.beans.PropertyChangeEvent; */ public class NotePart extends NodePart { + private DirectEditManager manager; + public NotePart() { } @@ -65,8 +69,8 @@ public class NotePart extends NodePart //installEditPolicy(EditPolicy.GRAPHICAL_NODE_ROLE, new EntityNodeEditPolicy()); //installEditPolicy(EditPolicy.LAYOUT_ROLE, new EntityLayoutEditPolicy()); //installEditPolicy(EditPolicy.CONTAINER_ROLE, new EntityContainerEditPolicy()); - installEditPolicy(EditPolicy.COMPONENT_ROLE, new NoteEditPolicy()); - //installEditPolicy(EditPolicy.DIRECT_EDIT_ROLE, new NoteDirectEditPolicy()); + //installEditPolicy(EditPolicy.COMPONENT_ROLE, new NoteEditPolicy()); + installEditPolicy(EditPolicy.DIRECT_EDIT_ROLE, new NoteDirectEditPolicy()); //installEditPolicy(EditPolicy.SELECTION_FEEDBACK_ROLE, new ResizableEditPolicy()); } @@ -76,23 +80,45 @@ public class NotePart extends NodePart public void performRequest(Request request) { if (request.getType() == RequestConstants.REQ_OPEN) { + performDirectEdit(); +/* final String newText = EditTextDialog.editText(getViewer().getControl().getShell(), ERDMessages.part_note_title, getNote().getObject()); if (newText != null) { NoteSetTextCommand command = new NoteSetTextCommand(getNote(), (NoteFigure) getFigure(), newText); getViewer().getEditDomain().getCommandStack().execute(command); } +*/ + } else if (request.getType() == RequestConstants.REQ_DIRECT_EDIT) { + if (request instanceof DirectEditRequest + && !directEditHitTest(((DirectEditRequest) request).getLocation().getCopy())) + return; + performDirectEdit(); } } - //******************* Miscellaneous stuff *********************/ + private boolean directEditHitTest(Point requestLoc) { + NoteFigure figure = (NoteFigure) getFigure(); + figure.translateToRelative(requestLoc); + return figure.containsPoint(requestLoc); + } + + protected void performDirectEdit() { + if (manager == null) { + ERDGraphicalViewer viewer = (ERDGraphicalViewer) getViewer(); + ValidationMessageHandler handler = viewer.getValidationHandler(); + + NoteFigure figure = (NoteFigure) getFigure(); + manager = new ExtendedDirectEditManager(this, TextCellEditor.class, new FigureEditorLocator(figure), + figure, value -> null); + } + manager.show(); + } public String toString() { return getNote().getObject(); } - //******************* Listener related methods *********************/ - public void handleNameChange(String value) { NoteFigure noteFigure = (NoteFigure) getFigure(); @@ -102,7 +128,7 @@ public class NotePart extends NodePart /** * Reverts to existing name in model when exiting from a direct edit - * (possibly before a commit which will result in a change in the label + * (possibly before a commit which will result in a change in the figure * value) */ public void revertNameChange() @@ -131,7 +157,7 @@ public class NotePart extends NodePart * Creates a figure which represents the table */ @Override - protected IFigure createFigure() + protected NoteFigure createFigure() { final NoteFigure noteFigure = new NoteFigure(getNote()); EntityDiagram.NodeVisualInfo visualInfo = ((DiagramPart) getParent()).getDiagram().getVisualInfo(getNote(), true); diff --git a/plugins/org.jkiss.dbeaver.ext.erd/src/org/jkiss/dbeaver/ext/erd/policy/NoteDirectEditPolicy.java b/plugins/org.jkiss.dbeaver.ext.erd/src/org/jkiss/dbeaver/ext/erd/policy/NoteDirectEditPolicy.java index e6c5d71f6a..9b50c524ec 100644 --- a/plugins/org.jkiss.dbeaver.ext.erd/src/org/jkiss/dbeaver/ext/erd/policy/NoteDirectEditPolicy.java +++ b/plugins/org.jkiss.dbeaver.ext.erd/src/org/jkiss/dbeaver/ext/erd/policy/NoteDirectEditPolicy.java @@ -23,65 +23,49 @@ import org.eclipse.gef.commands.Command; import org.eclipse.gef.editpolicies.DirectEditPolicy; import org.eclipse.gef.requests.DirectEditRequest; import org.eclipse.jface.viewers.CellEditor; +import org.jkiss.dbeaver.ext.erd.command.NoteSetTextCommand; import org.jkiss.dbeaver.ext.erd.part.NotePart; /** * EditPolicy for the direct editing of table names - * + * * @author Serge Rider */ -public class NoteDirectEditPolicy extends DirectEditPolicy -{ +public class NoteDirectEditPolicy extends DirectEditPolicy { - private String oldValue; + private String oldValue; - /** - * @see org.eclipse.gef.editpolicies.DirectEditPolicy#getDirectEditCommand(org.eclipse.gef.requests.DirectEditRequest) - */ - @Override - protected Command getDirectEditCommand(DirectEditRequest request) - { -/* - EntityRenameCommand cmd = new EntityRenameCommand(); - ERDEntity table = (ERDEntity) getHost().getModel(); - cmd.setTable(table); - cmd.setOldName(table.getName()); - CellEditor cellEditor = request.getCellEditor(); - cmd.setName((String) cellEditor.getValue()); - return cmd; -*/ - return null; - } + @Override + protected Command getDirectEditCommand(DirectEditRequest request) { + CellEditor cellEditor = request.getCellEditor(); + String newNote = (String) cellEditor.getValue(); + + return new NoteSetTextCommand((NotePart) getHost(), newNote); + } + + @Override + protected void showCurrentEditValue(DirectEditRequest request) { + String value = (String) request.getCellEditor().getValue(); + NotePart notePart = (NotePart) getHost(); + notePart.handleNameChange(value); + } - /** - * @see org.eclipse.gef.editpolicies.DirectEditPolicy#showCurrentEditValue(org.eclipse.gef.requests.DirectEditRequest) - */ - @Override - protected void showCurrentEditValue(DirectEditRequest request) - { - String value = (String) request.getCellEditor().getValue(); - NotePart notePart = (NotePart) getHost(); - notePart.handleNameChange(value); - } + @Override + protected void storeOldEditValue(DirectEditRequest request) { - @Override - protected void storeOldEditValue(DirectEditRequest request) - { - - CellEditor cellEditor = request.getCellEditor(); - oldValue = (String) cellEditor.getValue(); - } + CellEditor cellEditor = request.getCellEditor(); + oldValue = (String) cellEditor.getValue(); + } - /** - * @param request - */ - @Override - protected void revertOldEditValue(DirectEditRequest request) - { - CellEditor cellEditor = request.getCellEditor(); - cellEditor.setValue(oldValue); - NotePart entityPart = (NotePart) getHost(); - entityPart.revertNameChange(); - } + /** + * @param request + */ + @Override + protected void revertOldEditValue(DirectEditRequest request) { + CellEditor cellEditor = request.getCellEditor(); + cellEditor.setValue(oldValue); + NotePart entityPart = (NotePart) getHost(); + entityPart.revertNameChange(); + } } \ No newline at end of file -- GitLab