Java 类org.eclipse.gef.requests.DirectEditRequest 实例源码

项目:gw4e.project    文件:CreationAndDirectEditTool.java   
@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);
            }
        });
    }
}
项目:ermasterr    文件:TableViewComponentEditPolicy.java   
/**
 * {@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);
}
项目:ermasterr    文件:ColumnSelectionHandlesEditPolicy.java   
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;
}
项目:ermasterr    文件:NoteDirectEditPolicy.java   
/**
 * {@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();
}
项目:ermaster-k    文件:TableViewComponentEditPolicy.java   
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;
}
项目:ermaster-k    文件:NoteDirectEditPolicy.java   
/**
 * {@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();
}
项目:erflute    文件:TableViewComponentEditPolicy.java   
@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);
}
项目:erflute    文件:ColumnSelectionHandlesEditPolicy.java   
@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);
}
项目:erflute    文件:ColumnSelectionHandlesEditPolicy.java   
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();
}
项目:erflute    文件:ColumnSelectionHandlesEditPolicy.java   
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;
}
项目:erflute    文件:ERDiagramLayoutEditPolicy.java   
@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);
}
项目:ermaster-nhit    文件:TableViewComponentEditPolicy.java   
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;
}
项目:ermaster-nhit    文件:NoteDirectEditPolicy.java   
/**
 * {@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();
}
项目:eclipsensis    文件:InstallOptionsTextEditPart.java   
@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;
        }
    };
}
项目:FRaMED    文件:CreationAndDirectEditTool.java   
/**
 * 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);
      }
    });
  }
}
项目:wt-studio    文件:NoteDirectEditPolicy.java   
/**
 * {@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();
}
项目:eclipse-optimus    文件:ParentRequirementLabelEditPart.java   
/**
 * @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();
    }
}
项目:eclipse-optimus    文件:ExternalTransformationNameEditPart.java   
/**
 * @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();
    }
}
项目:eclipse-optimus    文件:SelfRequirementLabelEditPart.java   
/**
 * @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();
    }
}
项目:eclipse-optimus    文件:TransformationName2EditPart.java   
/**
 * @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();
    }
}
项目:gw4e.project    文件:GW4EVertexDirectEditPolicy.java   
@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;
}
项目:gw4e.project    文件:GW4EEdgeDirectEditPolicy.java   
@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; 
}
项目:DarwinSPL    文件:DwFeatureDirectEditPolicy.java   
@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;
}
项目:DarwinSPL    文件:DwAttributeDirectEditPolicy.java   
@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;
}
项目:DarwinSPL    文件:DwVersionDirectEditPolicy.java   
@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;
}
项目:DarwinSPL    文件:DwEnumLiteralDirectEditPolicy.java   
@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;
}
项目:DarwinSPL    文件:DwEnumDirectEditPolicy.java   
@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;
}
项目:ermasterr    文件:ColumnSelectionHandlesEditPolicy.java   
@Override
public void eraseTargetFeedback(final Request request) {
    if (request instanceof DirectEditRequest) {
        getFeedbackLayer().getChildren().clear();
    }

    super.eraseTargetFeedback(request);
}
项目:ermasterr    文件:ColumnSelectionHandlesEditPolicy.java   
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();
}
项目:ermaster-k    文件:TableViewComponentEditPolicy.java   
/**
 * {@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);
}
项目:ermaster-k    文件:ColumnSelectionHandlesEditPolicy.java   
@Override
public void eraseTargetFeedback(Request request) {
    if (request instanceof DirectEditRequest) {
        this.getFeedbackLayer().getChildren().clear();
    }

    super.eraseTargetFeedback(request);
}
项目:ermaster-k    文件:ColumnSelectionHandlesEditPolicy.java   
@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);
}
项目:ermaster-k    文件:ColumnSelectionHandlesEditPolicy.java   
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();
}
项目:ermaster-k    文件:ColumnSelectionHandlesEditPolicy.java   
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;
}
项目:ForgedUI-Eclipse    文件:ElementDirectEditPolicy.java   
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;
}
项目:NEXCORE-UML-Modeler    文件:ActivityPartitionDirectEditorPolicy.java   
/**
 * @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;
}
项目:NEXCORE-UML-Modeler    文件:NodeLabelDirectEditorPolicy.java   
/**
 * @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;
}
项目:NEXCORE-UML-Modeler    文件:SequenceDirectEditorPolicy.java   
/**
 * @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;
}
项目:xtext-gef    文件:StateNameEditPart.java   
/**
 * @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();
    }
}
项目:statecharts    文件:DirectEditManagerEx.java   
/**
 * 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;
}