@Override protected void performCreation(int button) { super.performCreation(button); EditPartViewer viewer = getCurrentViewer(); final Object model = getCreateRequest().getNewObject(); if (model == null || viewer == null) { return; } final Object o = getCurrentViewer().getEditPartRegistry().get(model); if(o instanceof EditPart) { Display.getCurrent().asyncExec(new Runnable() { @Override public void run() { EditPart part = (EditPart)o; Request request = new DirectEditRequest(); part.performRequest(request); } }); } }
/** * {@inheritDoc} */ @Override public EditPart getTargetEditPart(final Request request) { if (ERDiagramTransferDragSourceListener.REQUEST_TYPE_ADD_COLUMN_GROUP.equals(request.getType()) || ERDiagramTransferDragSourceListener.REQUEST_TYPE_MOVE_COLUMN_GROUP.equals(request.getType())) { final DirectEditRequest editRequest = (DirectEditRequest) request; final TableView tableView = (TableView) getHost().getModel(); final ColumnGroup columnGroup = (ColumnGroup) ((Map) editRequest.getDirectEditFeature()).get("group"); if (!tableView.getColumns().contains(columnGroup)) { return getHost(); } } else if (ERDiagramTransferDragSourceListener.REQUEST_TYPE_ADD_WORD.equals(request.getType())) { return getHost(); } else if (ERDiagramTransferDragSourceListener.REQUEST_TYPE_MOVE_COLUMN.equals(request.getType())) { return getHost(); } return super.getTargetEditPart(request); }
private int getColumnIndex(final DirectEditRequest editRequest) { final ZoomManager zoomManager = ((ScalableFreeformRootEditPart) getHost().getRoot()).getZoomManager(); final double zoom = zoomManager.getZoom(); final ColumnEditPart columnEditPart = (ColumnEditPart) getHost(); Column column = (Column) columnEditPart.getModel(); final TableView newTableView = (TableView) getHost().getParent().getModel(); final List<Column> columns = newTableView.getColumns(); if (column.getColumnHolder() instanceof ColumnGroup) { column = (ColumnGroup) column.getColumnHolder(); } int index = columns.indexOf(column); final Rectangle columnRectangle = getColumnRectangle(); final int center = (int) ((columnRectangle.y + (columnRectangle.height / 2)) * zoom); if (editRequest.getLocation().y >= center) { index++; } return index; }
/** * {@inheritDoc} */ @Override protected Command getDirectEditCommand(final DirectEditRequest request) { final CompoundCommand command = new CompoundCommand(); final String text = (String) request.getCellEditor().getValue(); final Note note = (Note) getHost().getModel(); final NoteEditCommand noteEditCommand = new NoteEditCommand(note, text); command.add(noteEditCommand); final MoveElementCommand autoResizeCommand = new MoveElementCommand((ERDiagram) getHost().getRoot().getContents().getModel(), getHostFigure().getBounds(), note.getX(), note.getY(), -1, -1, note); command.add(autoResizeCommand); return command.unwrap(); }
private int getColumnIndex(DirectEditRequest editRequest) { ZoomManager zoomManager = ((ScalableFreeformRootEditPart) this .getHost().getRoot()).getZoomManager(); double zoom = zoomManager.getZoom(); IFigure figure = ((TableViewEditPart) this.getHost()).getFigure(); int center = (int) (figure.getBounds().y + (figure.getBounds().height / 2) * zoom); int index = 0; if (editRequest.getLocation().y >= center) { TableView newTableView = (TableView) this.getHost().getModel(); index = newTableView.getColumns().size(); } return index; }
/** * {@inheritDoc} */ @Override protected Command getDirectEditCommand(DirectEditRequest request) { CompoundCommand command = new CompoundCommand(); String text = (String) request.getCellEditor().getValue(); Note note = (Note) getHost().getModel(); NoteEditCommand noteEditCommand = new NoteEditCommand(note, text); command.add(noteEditCommand); ERDiagram diagram = (ERDiagram) this.getHost().getRoot().getContents().getModel(); Category currentCategory = diagram.getCurrentCategory(); MoveElementCommand autoResizeCommand = new MoveElementCommand( diagram, this.getHostFigure().getBounds(), note.getX(currentCategory), note.getY(currentCategory), -1, -1, note); command.add(autoResizeCommand); return command.unwrap(); }
@Override public EditPart getTargetEditPart(Request request) { if (ERDiagramTransferDragSourceListener.REQUEST_TYPE_ADD_COLUMN_GROUP.equals(request.getType()) || ERDiagramTransferDragSourceListener.REQUEST_TYPE_MOVE_COLUMN_GROUP.equals(request.getType())) { final DirectEditRequest editRequest = (DirectEditRequest) request; final TableView tableView = (TableView) getHost().getModel(); final ColumnGroup columnGroup = (ColumnGroup) ((Map<?, ?>) editRequest.getDirectEditFeature()).get("group"); if (!tableView.getColumns().contains(columnGroup)) { return getHost(); } } else if (ERDiagramTransferDragSourceListener.REQUEST_TYPE_ADD_WORD.equals(request.getType())) { return getHost(); } else if (ERDiagramTransferDragSourceListener.REQUEST_TYPE_MOVE_COLUMN.equals(request.getType())) { return getHost(); } return super.getTargetEditPart(request); }
@Override public EditPart getTargetEditPart(Request request) { if (ERDiagramTransferDragSourceListener.REQUEST_TYPE_ADD_COLUMN_GROUP.equals(request.getType()) || ERDiagramTransferDragSourceListener.REQUEST_TYPE_MOVE_COLUMN_GROUP.equals(request.getType())) { final DirectEditRequest editRequest = (DirectEditRequest) request; final TableView tableView = (TableView) getHost().getParent().getModel(); final ColumnGroup columnGroup = (ColumnGroup) ((Map<?, ?>) editRequest.getDirectEditFeature()) .get(ERDiagramTransferDragSourceListener.MOVE_COLUMN_GROUP_PARAM_GROUP); final Object parent = ((Map<?, ?>) editRequest.getDirectEditFeature()) .get(ERDiagramTransferDragSourceListener.MOVE_COLUMN_GROUP_PARAM_PARENT); if (parent == tableView || !tableView.getColumns().contains(columnGroup)) { return getHost(); } } else if (ERDiagramTransferDragSourceListener.REQUEST_TYPE_ADD_WORD.equals(request.getType())) { return getHost(); } else if (ERDiagramTransferDragSourceListener.REQUEST_TYPE_MOVE_COLUMN.equals(request.getType())) { return getHost(); } return super.getTargetEditPart(request); }
public static Command createMoveColumnGroupCommand(DirectEditRequest editRequest, TableView newTableView, int index) { final ColumnGroup columnGroup = (ColumnGroup) ((Map<?, ?>) editRequest.getDirectEditFeature()) .get(ERDiagramTransferDragSourceListener.MOVE_COLUMN_GROUP_PARAM_GROUP); final TableView oldTableView = (TableView) ((Map<?, ?>) editRequest.getDirectEditFeature()) .get(ERDiagramTransferDragSourceListener.MOVE_COLUMN_GROUP_PARAM_PARENT); if (newTableView == oldTableView) { return new ChangeColumnOrderCommand(newTableView, columnGroup, index); } final CompoundCommand command = new CompoundCommand(); final TableView copyOldTableView = oldTableView.copyData(); for (final ERColumn column : copyOldTableView.getColumns()) { if (column == columnGroup) { copyOldTableView.removeColumn(column); break; } } final ChangeTableViewPropertyCommand sourceTableCommand = new ChangeTableViewPropertyCommand(oldTableView, copyOldTableView); command.add(sourceTableCommand); if (!newTableView.getColumns().contains(columnGroup)) { command.add(new AddColumnGroupCommand(newTableView, columnGroup, index)); } return command.unwrap(); }
private int getColumnIndex(DirectEditRequest editRequest) { final ZoomManager zoomManager = ((ScalableFreeformRootEditPart) getHost().getRoot()).getZoomManager(); final double zoom = zoomManager.getZoom(); final ColumnEditPart columnEditPart = (ColumnEditPart) getHost(); ERColumn column = (ERColumn) columnEditPart.getModel(); final TableView newTableView = (TableView) getHost().getParent().getModel(); final List<ERColumn> columns = newTableView.getColumns(); if (column.getColumnHolder() instanceof ColumnGroup) { column = (ColumnGroup) column.getColumnHolder(); } int index = columns.indexOf(column); final Rectangle columnRectangle = getColumnRectangle(); final int center = (int) ((columnRectangle.y + (columnRectangle.height / 2)) * zoom); if (editRequest.getLocation().y >= center) { index++; } return index; }
@Override public Command getCommand(Request request) { if (ERDiagramTransferDragSourceListener.REQUEST_TYPE_PLACE_TABLE.equals(request.getType())) { final DirectEditRequest editRequest = (DirectEditRequest) request; final Object feature = editRequest.getDirectEditFeature(); if (feature instanceof ERTable) { final ERTable ertable = (ERTable) feature; return new PlaceTableCommand(ertable); } if (feature instanceof List) { @SuppressWarnings("unchecked") final List<ERTable> list = (List<ERTable>) feature; return new PlaceTableCommand(list); } } return super.getCommand(request); }
/** * {@inheritDoc} */ @Override protected Command getDirectEditCommand(DirectEditRequest request) { CompoundCommand command = new CompoundCommand(); String text = (String) request.getCellEditor().getValue(); Note note = (Note) getHost().getModel(); NoteEditCommand noteEditCommand = new NoteEditCommand(note, text); command.add(noteEditCommand); MoveElementCommand autoResizeCommand = new MoveElementCommand( (ERDiagram) this.getHost().getRoot().getContents().getModel(), this .getHostFigure().getBounds(), note.getX(), note.getY(), -1, -1, note); command.add(autoResizeCommand); return command.unwrap(); }
@Override protected EditableElementDirectEditPolicy createDirectEditPolicy() { return new EditableElementDirectEditPolicy() { @Override protected String getDirectEditValue(DirectEditRequest edit) { String text = super.getDirectEditValue(edit); if(getInstallOptionsEditableElement().getTypeDef().getFlags().contains(InstallOptionsModel.FLAGS_MULTILINE) && getInstallOptionsEditableElement().getFlags().contains(InstallOptionsModel.FLAGS_MULTILINE)) { text = TypeConverter.ESCAPED_STRING_CONVERTER.asType(text); } return text; } }; }
/** * After the creation of a {@link NamedElement} through a pallet entry this method is called. This method * send a {@link DirectEditRequest} to the edit part of the just created {@link NamedElement}. Through the * request can the user edit the name of the NamedElement direct after the creation of the NamedElement. * * */ @Override protected void performCreation(final int button) { super.performCreation(button); final EditPartViewer viewer = getCurrentViewer(); final Object model = getCreateRequest().getNewObject(); if (model == null || viewer == null) { return; } final Object o = getCurrentViewer().getEditPartRegistry().get(model); if (o instanceof EditPart) { Display.getCurrent().asyncExec(new Runnable() { @Override public void run() { final EditPart part = (EditPart) o; final Request request = new DirectEditRequest(); part.performRequest(request); } }); } }
/** * {@inheritDoc} */ @Override protected Command getDirectEditCommand(DirectEditRequest request) { CompoundCommand command = new CompoundCommand(); String text = (String) request.getCellEditor().getValue(); NoteModel note = (NoteModel) getHost().getModel(); NoteEditCommand noteEditCommand = new NoteEditCommand(note, text); command.add(noteEditCommand); Rectangle rectangle=new Rectangle(note.getX(),note.getY(),-1,-1); MoveElementCommand scommand = new MoveElementCommand(); scommand.setElement(note); scommand.setRectangle(rectangle); command.add(scommand); return command.unwrap(); }
/** * @generated */ protected void performDirectEditRequest(Request request) { final Request theRequest = request; try { getEditingDomain().runExclusive(new Runnable() { public void run() { if (isActive() && isEditable()) { if (theRequest.getExtendedData().get(RequestConstants.REQ_DIRECTEDIT_EXTENDEDDATA_INITIAL_CHAR) instanceof Character) { Character initialChar = (Character) theRequest.getExtendedData().get( RequestConstants.REQ_DIRECTEDIT_EXTENDEDDATA_INITIAL_CHAR); performDirectEdit(initialChar.charValue()); } else if ((theRequest instanceof DirectEditRequest) && (getEditText().equals(getLabelText()))) { DirectEditRequest editRequest = (DirectEditRequest) theRequest; performDirectEdit(editRequest.getLocation()); } else { performDirectEdit(); } } } }); } catch (InterruptedException e) { e.printStackTrace(); } }
@Override protected Command getDirectEditCommand(DirectEditRequest request) { String value = (String) request.getCellEditor().getValue(); if(Constant.START_VERTEX_NAME.equalsIgnoreCase(value.trim())) { return UnexecutableCommand.INSTANCE; } GraphElementRenameCommand command = new GraphElementRenameCommand(); command.setOldName(((Vertex) getHost().getModel()).getName()); command.setModel((Vertex) getHost().getModel()); command.setNewName(value); return command; }
@Override protected Command getDirectEditCommand(DirectEditRequest request) { String value = (String) request.getCellEditor().getValue(); GraphElementRenameCommand command = new GraphElementRenameCommand(); GraphElement model = (GraphElement) getHost().getModel(); command.setModel(model); command.setOldName(model.getName()); command.setNewName(value); return command; }
@Override protected Command getDirectEditCommand(DirectEditRequest request) { DwFeatureEditPart editPart = (DwFeatureEditPart)getHost(); DwFeatureRenameCommand command = new DwFeatureRenameCommand((DwFeatureWrapped)editPart.getModel(), (DwGraphicalFeatureModelEditor)editPart.getEditor()); command.setNewName((String)request.getCellEditor().getValue()); return command; }
@Override protected Command getDirectEditCommand(DirectEditRequest request) { DwAttributeEditPart editPart = (DwAttributeEditPart)getHost(); DwAttributeRenameCommand command = new DwAttributeRenameCommand((HyFeatureAttribute)editPart.getModel(), (DwGraphicalFeatureModelEditor)editPart.getEditor()); command.setNewName((String)request.getCellEditor().getValue()); return command; }
@Override protected Command getDirectEditCommand(DirectEditRequest request) { DwVersionEditPart editPart = (DwVersionEditPart)getHost(); DwVersionRenameCommand command = new DwVersionRenameCommand((HyVersion)editPart.getModel(), (DwGraphicalFeatureModelViewer)editPart.getModel()); command.setNewNumber((String)request.getCellEditor().getValue()); return command; }
@Override protected Command getDirectEditCommand(DirectEditRequest request) { DwEnumLiteralEditPart editPart = (DwEnumLiteralEditPart)getHost(); DwEnumLiteralRenameCommand command = new DwEnumLiteralRenameCommand((HyEnumLiteral)editPart.getModel(), (DwGraphicalFeatureModelViewer)editPart.getEditor()); command.setNewName((String)request.getCellEditor().getValue()); return command; }
@Override protected Command getDirectEditCommand(DirectEditRequest request) { DwEnumEditPart editPart = (DwEnumEditPart)getHost(); DwEnumRenameCommand command = new DwEnumRenameCommand((HyEnum)editPart.getModel(), editPart.getEditor()); command.setNewName((String)request.getCellEditor().getValue()); return command; }
@Override public void eraseTargetFeedback(final Request request) { if (request instanceof DirectEditRequest) { getFeedbackLayer().getChildren().clear(); } super.eraseTargetFeedback(request); }
public static Command createMoveColumnGroupCommand(final DirectEditRequest editRequest, final TableView newTableView, final int index) { final ColumnGroup columnGroup = (ColumnGroup) ((Map) editRequest.getDirectEditFeature()).get(ERDiagramTransferDragSourceListener.MOVE_COLUMN_GROUP_PARAM_GROUP); final TableView oldTableView = (TableView) ((Map) editRequest.getDirectEditFeature()).get(ERDiagramTransferDragSourceListener.MOVE_COLUMN_GROUP_PARAM_PARENT); if (newTableView == oldTableView) { return new ChangeColumnOrderCommand(newTableView, columnGroup, index); } final CompoundCommand command = new CompoundCommand(); final TableView copyOldTableView = oldTableView.copyData(); for (final Column column : copyOldTableView.getColumns()) { if (column == columnGroup) { copyOldTableView.removeColumn(column); break; } } final ChangeTableViewPropertyCommand sourceTableCommand = new ChangeTableViewPropertyCommand(oldTableView, copyOldTableView); command.add(sourceTableCommand); if (!newTableView.getColumns().contains(columnGroup)) { command.add(new AddColumnGroupCommand(newTableView, columnGroup, index)); } return command.unwrap(); }
/** * {@inheritDoc} */ @Override public EditPart getTargetEditPart(Request request) { if (ERDiagramTransferDragSourceListener.REQUEST_TYPE_ADD_COLUMN_GROUP .equals(request.getType()) || ERDiagramTransferDragSourceListener.REQUEST_TYPE_MOVE_COLUMN_GROUP .equals(request.getType())) { DirectEditRequest editRequest = (DirectEditRequest) request; TableView tableView = (TableView) this.getHost().getModel(); ColumnGroup columnGroup = (ColumnGroup) ((Map) editRequest .getDirectEditFeature()).get("group"); if (!tableView.getColumns().contains(columnGroup)) { return getHost(); } } else if (ERDiagramTransferDragSourceListener.REQUEST_TYPE_ADD_WORD .equals(request.getType())) { return getHost(); } else if (ERDiagramTransferDragSourceListener.REQUEST_TYPE_MOVE_COLUMN .equals(request.getType())) { return getHost(); } return super.getTargetEditPart(request); }
@Override public void eraseTargetFeedback(Request request) { if (request instanceof DirectEditRequest) { this.getFeedbackLayer().getChildren().clear(); } super.eraseTargetFeedback(request); }
@Override public EditPart getTargetEditPart(Request request) { if (ERDiagramTransferDragSourceListener.REQUEST_TYPE_ADD_COLUMN_GROUP .equals(request.getType()) || ERDiagramTransferDragSourceListener.REQUEST_TYPE_MOVE_COLUMN_GROUP .equals(request.getType())) { DirectEditRequest editRequest = (DirectEditRequest) request; TableView tableView = (TableView) this.getHost().getParent() .getModel(); ColumnGroup columnGroup = (ColumnGroup) ((Map) editRequest .getDirectEditFeature()) .get(ERDiagramTransferDragSourceListener.MOVE_COLUMN_GROUP_PARAM_GROUP); Object parent = ((Map) editRequest.getDirectEditFeature()) .get(ERDiagramTransferDragSourceListener.MOVE_COLUMN_GROUP_PARAM_PARENT); if (parent == tableView || !tableView.getColumns().contains(columnGroup)) { return getHost(); } } else if (ERDiagramTransferDragSourceListener.REQUEST_TYPE_ADD_WORD .equals(request.getType())) { return getHost(); } else if (ERDiagramTransferDragSourceListener.REQUEST_TYPE_MOVE_COLUMN .equals(request.getType())) { return getHost(); } return super.getTargetEditPart(request); }
public static Command createMoveColumnGroupCommand( DirectEditRequest editRequest, TableView newTableView, int index) { ColumnGroup columnGroup = (ColumnGroup) ((Map) editRequest .getDirectEditFeature()) .get(ERDiagramTransferDragSourceListener.MOVE_COLUMN_GROUP_PARAM_GROUP); TableView oldTableView = (TableView) ((Map) editRequest .getDirectEditFeature()) .get(ERDiagramTransferDragSourceListener.MOVE_COLUMN_GROUP_PARAM_PARENT); if (newTableView == oldTableView) { return new ChangeColumnOrderCommand(newTableView, columnGroup, index); } CompoundCommand command = new CompoundCommand(); TableView copyOldTableView = oldTableView.copyData(); for (Column column : copyOldTableView.getColumns()) { if (column == columnGroup) { copyOldTableView.removeColumn(column); break; } } ChangeTableViewPropertyCommand sourceTableCommand = new ChangeTableViewPropertyCommand( oldTableView, copyOldTableView); command.add(sourceTableCommand); if (!newTableView.getColumns().contains(columnGroup)) { command.add(new AddColumnGroupCommand(newTableView, columnGroup, index)); } return command.unwrap(); }
private int getColumnIndex(DirectEditRequest editRequest) { ZoomManager zoomManager = ((ScalableFreeformRootEditPart) this .getHost().getRoot()).getZoomManager(); double zoom = zoomManager.getZoom(); ColumnEditPart columnEditPart = (ColumnEditPart) this.getHost(); Column column = (Column) columnEditPart.getModel(); TableView newTableView = (TableView) this.getHost().getParent() .getModel(); List<Column> columns = newTableView.getColumns(); if (column.getColumnHolder() instanceof ColumnGroup) { column = (ColumnGroup) column.getColumnHolder(); } int index = columns.indexOf(column); Rectangle columnRectangle = this.getColumnRectangle(); int center = (int) ((columnRectangle.y + (columnRectangle.height / 2)) * zoom); if (editRequest.getLocation().y >= center) { index++; } return index; }
protected Command getDirectEditCommand(DirectEditRequest edit) { EditPart part = getHost(); if (part instanceof ElementEditPart) { String labelText = (String) edit.getCellEditor().getValue(); ElementEditPart editPart = (ElementEditPart) getHost(); Object model = editPart.getModel(); EditingCommand command = new EditingCommand( model, labelText); return command; } return null; }
/** * @see nexcore.tool.uml.ui.core.diagram.edit.policy.DirectEditorPolicy#getDirectEditCommand(org.eclipse.gef.requests.DirectEditRequest) */ protected Command getDirectEditCommand(DirectEditRequest request) { ActivityPartitionDirectEditCommand command = new ActivityPartitionDirectEditCommand(); Object model = getHost().getModel(); if (model instanceof NamedElement) { command.setUmlModel(model); } else if (model instanceof AbstractView) { if ( model instanceof ContainerNode ) { ContainerNode node = (ContainerNode) model; command.setViewModel(node); command.setUmlModel(node.getUmlModel()); } } // setFigure EditPart editPart = null; if (getHost() instanceof ActivityPartitionEditPart) { command.setLabelFigure(((ActivityPartitionEditPart) getHost()).getFigure()); } // setEditPart if (model instanceof ContainerNode) { // NameLabel을 직접 선택하지 않고 피겨에서 바로 다이렉트 에디팅을 실행. command.setEditPart(editPart); } else { command.setEditPart(getHost()); } // setText command.setText((String) request.getCellEditor().getValue()); return command; }
/** * @see org.eclipse.gef.editpolicies.DirectEditPolicy#getDirectEditCommand(org.eclipse.gef.requests.DirectEditRequest) */ @Override protected Command getDirectEditCommand(DirectEditRequest request) { NodeLabelDirectEditCommand command = new NodeLabelDirectEditCommand(); command.setUmlModel(((AbstractNode) ((EditPart) getHost()).getModel()).getUmlModel()); command.setNode((AbstractNode) ((EditPart) getHost()).getModel()); command.setFigure((Label) getHostFigure()); command.setText((String) request.getCellEditor().getValue()); return command; }
/** * @see org.eclipse.gef.editpolicies.DirectEditPolicy#getDirectEditCommand(org.eclipse.gef.requests.DirectEditRequest) */ protected Command getDirectEditCommand(DirectEditRequest request) { LifeLineDirectEditCommand command = new LifeLineDirectEditCommand(); NotationNode nodeName = null; if (getHost().getParent().getModel() instanceof NotationNode) { nodeName = (NotationNode) getHost().getParent().getModel(); } command.setUmlModel(nodeName.getUmlModel()); command.setText((String) request.getCellEditor().getValue()); return command; }
/** * @generated */ protected void performDirectEditRequest(Request request) { final Request theRequest = request; try { getEditingDomain().runExclusive(new Runnable() { public void run() { if (isActive() && isEditable()) { if (theRequest .getExtendedData() .get(RequestConstants.REQ_DIRECTEDIT_EXTENDEDDATA_INITIAL_CHAR) instanceof Character) { Character initialChar = (Character) theRequest .getExtendedData() .get(RequestConstants.REQ_DIRECTEDIT_EXTENDEDDATA_INITIAL_CHAR); performDirectEdit(initialChar.charValue()); } else if ((theRequest instanceof DirectEditRequest) && (getEditText().equals(getLabelText()))) { DirectEditRequest editRequest = (DirectEditRequest) theRequest; performDirectEdit(editRequest.getLocation()); } else { performDirectEdit(); } } } }); } catch (InterruptedException e) { e.printStackTrace(); } }
/** * Creates and returns the DirectEditRequest. * * @return the direct edit request */ protected DirectEditRequest createDirectEditRequest() { DirectEditRequest req = new DirectEditRequest(); req.setCellEditor(getCellEditor()); req.setDirectEditFeature(getDirectEditFeature()); return req; }