Example usage for org.eclipse.jface.dialogs Dialog open

List of usage examples for org.eclipse.jface.dialogs Dialog open

Introduction

In this page you can find the example usage for org.eclipse.jface.dialogs Dialog open.

Prototype

public int open() 

Source Link

Document

Opens this window, creating it first if it has not yet been created.

Usage

From source file:org.eclipse.papyrus.diagram.activity.edit.parts.AcceptEventActionLabelEditPart.java

License:Open Source License

/**
 * @generated/*from   www  . ja  v  a 2 s.  c  om*/
 */
protected void performDirectEditRequest(Request request) {

    final Request theRequest = request;

    if (IDirectEdition.UNDEFINED_DIRECT_EDITOR == directEditionMode) {
        directEditionMode = getDirectEditionType();
    }
    switch (directEditionMode) {
    case IDirectEdition.NO_DIRECT_EDITION:
        // no direct edition mode => does nothing
        return;
    case IDirectEdition.EXTENDED_DIRECT_EDITOR:
        updateExtendedEditorConfiguration();
        if (configuration == null || configuration.getLanguage() == null) {
            performDefaultDirectEditorEdit(theRequest);
        } else {
            configuration.preEditAction(resolveSemanticElement());
            Dialog dialog = null;
            if (configuration instanceof IPopupEditorConfiguration) {
                IPopupEditorHelper helper = ((IPopupEditorConfiguration) configuration)
                        .createPopupEditorHelper(this);
                helper.showEditor();
                return;
            } else if (configuration instanceof IAdvancedEditorConfiguration) {
                dialog = ((IAdvancedEditorConfiguration) configuration).createDialog(
                        PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(),
                        resolveSemanticElement(), configuration.getTextToEdit(resolveSemanticElement()));
            } else if (configuration instanceof IDirectEditorConfiguration) {
                dialog = new ExtendedDirectEditionDialog(
                        PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(),
                        resolveSemanticElement(),
                        ((IDirectEditorConfiguration) configuration).getTextToEdit(resolveSemanticElement()),
                        (IDirectEditorConfiguration) configuration);
            } else {
                return;
            }
            final Dialog finalDialog = dialog;

            if (Window.OK == dialog.open()) {
                TransactionalEditingDomain domain = getEditingDomain();
                RecordingCommand command = new RecordingCommand(domain, "Edit Label") {

                    @Override
                    protected void doExecute() {
                        configuration.postEditAction(resolveSemanticElement(),
                                ((ILabelEditorDialog) finalDialog).getValue());

                    }
                };
                domain.getCommandStack().execute(command);
            }
        }
        break;
    case IDirectEdition.DEFAULT_DIRECT_EDITOR:

        // initialize the direct edit manager
        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();
        }
        break;
    default:
        break;
    }
}

From source file:org.eclipse.papyrus.diagram.activity.edit.parts.AcceptTimeEventActionAppliedStereotypeEditPart.java

License:Open Source License

/**
 * @generated/*from w  w  w. ja v  a2  s.c o m*/
 */
protected void performDirectEditRequest(Request request) {

    final Request theRequest = request;

    if (IDirectEdition.UNDEFINED_DIRECT_EDITOR == directEditionMode) {
        directEditionMode = getDirectEditionType();
    }
    switch (directEditionMode) {
    case IDirectEdition.NO_DIRECT_EDITION:
        // no direct edition mode => does nothing
        return;
    case IDirectEdition.EXTENDED_DIRECT_EDITOR:
        updateExtendedEditorConfiguration();
        if (configuration == null || configuration.getLanguage() == null) {
            performDefaultDirectEditorEdit(theRequest);
        } else {
            configuration.preEditAction(resolveSemanticElement());
            Dialog dialog = null;
            if (configuration instanceof IAdvancedEditorConfiguration) {
                dialog = ((IAdvancedEditorConfiguration) configuration).createDialog(
                        PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(),
                        resolveSemanticElement(), configuration.getTextToEdit(resolveSemanticElement()));
            } else if (configuration instanceof IDirectEditorConfiguration) {
                dialog = new ExtendedDirectEditionDialog(
                        PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(),
                        resolveSemanticElement(),
                        ((IDirectEditorConfiguration) configuration).getTextToEdit(resolveSemanticElement()),
                        (IDirectEditorConfiguration) configuration);
            } else {
                return;
            }
            final Dialog finalDialog = dialog;

            if (Window.OK == dialog.open()) {
                TransactionalEditingDomain domain = getEditingDomain();
                RecordingCommand command = new RecordingCommand(domain, "Edit Label") {

                    @Override
                    protected void doExecute() {
                        configuration.postEditAction(resolveSemanticElement(),
                                ((ILabelEditorDialog) finalDialog).getValue());

                    }
                };
                domain.getCommandStack().execute(command);
            }
        }
        break;
    case IDirectEdition.DEFAULT_DIRECT_EDITOR:

        // initialize the direct edit manager
        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();
        }
        break;
    default:
        break;
    }
}

From source file:org.eclipse.papyrus.diagram.activity.edit.parts.ControlFlowNameEditPart.java

License:Open Source License

/**
 * @generated NOT consult preference store before displaying label
 *///from   ww  w .j  av a 2 s .  co m
protected void performDirectEditRequest(Request request) {
    //consult preference store before displaying label
    boolean showName = preferenceStore
            .getBoolean(IActivityPreferenceConstants.PREF_ACTIVITY_EDGE_SHOW_NAME_LABEL);
    if (!showName) {
        return;
    }

    final Request theRequest = request;

    if (IDirectEdition.UNDEFINED_DIRECT_EDITOR == directEditionMode) {
        directEditionMode = getDirectEditionType();
    }
    switch (directEditionMode) {
    case IDirectEdition.NO_DIRECT_EDITION:
        // no direct edition mode => does nothing
        return;
    case IDirectEdition.EXTENDED_DIRECT_EDITOR:
        updateExtendedEditorConfiguration();
        if (configuration == null || configuration.getLanguage() == null) {
            performDefaultDirectEditorEdit(theRequest);
        } else {
            configuration.preEditAction(resolveSemanticElement());
            Dialog dialog = null;
            if (configuration instanceof IAdvancedEditorConfiguration) {
                dialog = ((IAdvancedEditorConfiguration) configuration).createDialog(
                        PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(),
                        resolveSemanticElement(), configuration.getTextToEdit(resolveSemanticElement()));
            } else if (configuration instanceof IDirectEditorConfiguration) {
                dialog = new ExtendedDirectEditionDialog(
                        PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(),
                        resolveSemanticElement(),
                        ((IDirectEditorConfiguration) configuration).getTextToEdit(resolveSemanticElement()),
                        (IDirectEditorConfiguration) configuration);
            } else {
                return;
            }
            final Dialog finalDialog = dialog;

            if (Window.OK == dialog.open()) {
                TransactionalEditingDomain domain = getEditingDomain();
                RecordingCommand command = new RecordingCommand(domain, "Edit Label") {

                    @Override
                    protected void doExecute() {
                        configuration.postEditAction(resolveSemanticElement(),
                                ((ILabelEditorDialog) finalDialog).getValue());

                    }
                };
                domain.getCommandStack().execute(command);
            }
        }
        break;
    case IDirectEdition.DEFAULT_DIRECT_EDITOR:

        // initialize the direct edit manager
        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();
        }
        break;
    default:
        break;
    }
}

From source file:org.eclipse.papyrus.diagram.activity.edit.parts.DataStoreSelectionEditPart.java

License:Open Source License

/**
 * @generated NOT do not edit label if hidden
 *//* w w w  .ja va 2s.  c o m*/
protected void performDirectEditRequest(Request request) {
    //do not edit label if hidden
    boolean selectionSet = ((ObjectNode) resolveSemanticElement()).getSelection() != null;
    if (!selectionSet) {
        return;
    }

    final Request theRequest = request;

    if (IDirectEdition.UNDEFINED_DIRECT_EDITOR == directEditionMode) {
        directEditionMode = getDirectEditionType();
    }
    switch (directEditionMode) {
    case IDirectEdition.NO_DIRECT_EDITION:
        // no direct edition mode => does nothing
        return;
    case IDirectEdition.EXTENDED_DIRECT_EDITOR:
        updateExtendedEditorConfiguration();
        if (configuration == null || configuration.getLanguage() == null) {
            performDefaultDirectEditorEdit(theRequest);
        } else {
            configuration.preEditAction(resolveSemanticElement());
            Dialog dialog = null;
            if (configuration instanceof IPopupEditorConfiguration) {
                IPopupEditorHelper helper = ((IPopupEditorConfiguration) configuration)
                        .createPopupEditorHelper(this);
                helper.showEditor();
                return;
            } else if (configuration instanceof IAdvancedEditorConfiguration) {
                dialog = ((IAdvancedEditorConfiguration) configuration).createDialog(
                        PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(),
                        resolveSemanticElement(), configuration.getTextToEdit(resolveSemanticElement()));
            } else if (configuration instanceof IDirectEditorConfiguration) {
                dialog = new ExtendedDirectEditionDialog(
                        PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(),
                        resolveSemanticElement(),
                        ((IDirectEditorConfiguration) configuration).getTextToEdit(resolveSemanticElement()),
                        (IDirectEditorConfiguration) configuration);
            } else {
                return;
            }
            final Dialog finalDialog = dialog;

            if (Window.OK == dialog.open()) {
                TransactionalEditingDomain domain = getEditingDomain();
                RecordingCommand command = new RecordingCommand(domain, "Edit Label") {

                    @Override
                    protected void doExecute() {
                        configuration.postEditAction(resolveSemanticElement(),
                                ((ILabelEditorDialog) finalDialog).getValue());

                    }
                };
                domain.getCommandStack().execute(command);
            }
        }
        break;
    case IDirectEdition.DEFAULT_DIRECT_EDITOR:

        // initialize the direct edit manager
        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();
        }
        break;
    default:
        break;
    }
}

From source file:org.eclipse.papyrus.diagram.activity.edit.parts.DecisionInputEditPart.java

License:Open Source License

/**
 * @generated NOT do not edit label if hidden
 *///w w  w  .  j  a v a 2  s .co m
protected void performDirectEditRequest(Request request) {
    //do not edit label if hidden
    boolean decisionSet = ((DecisionNode) resolveSemanticElement()).getDecisionInput() != null;
    if (!decisionSet) {
        return;
    }

    final Request theRequest = request;

    if (IDirectEdition.UNDEFINED_DIRECT_EDITOR == directEditionMode) {
        directEditionMode = getDirectEditionType();
    }
    switch (directEditionMode) {
    case IDirectEdition.NO_DIRECT_EDITION:
        // no direct edition mode => does nothing
        return;
    case IDirectEdition.EXTENDED_DIRECT_EDITOR:
        updateExtendedEditorConfiguration();
        if (configuration == null || configuration.getLanguage() == null) {
            performDefaultDirectEditorEdit(theRequest);
        } else {
            configuration.preEditAction(resolveSemanticElement());
            Dialog dialog = null;
            if (configuration instanceof IAdvancedEditorConfiguration) {
                dialog = ((IAdvancedEditorConfiguration) configuration).createDialog(
                        PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(),
                        resolveSemanticElement(), configuration.getTextToEdit(resolveSemanticElement()));
            } else if (configuration instanceof IDirectEditorConfiguration) {
                dialog = new ExtendedDirectEditionDialog(
                        PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(),
                        resolveSemanticElement(),
                        ((IDirectEditorConfiguration) configuration).getTextToEdit(resolveSemanticElement()),
                        (IDirectEditorConfiguration) configuration);
            } else {
                return;
            }
            final Dialog finalDialog = dialog;

            if (Window.OK == dialog.open()) {
                TransactionalEditingDomain domain = getEditingDomain();
                RecordingCommand command = new RecordingCommand(domain, "Edit Label") {

                    @Override
                    protected void doExecute() {
                        configuration.postEditAction(resolveSemanticElement(),
                                ((ILabelEditorDialog) finalDialog).getValue());

                    }
                };
                domain.getCommandStack().execute(command);
            }
        }
        break;
    case IDirectEdition.DEFAULT_DIRECT_EDITOR:

        // initialize the direct edit manager
        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();
        }
        break;
    default:
        break;
    }
}

From source file:org.eclipse.papyrus.diagram.activity.edit.parts.JoinSpecEditPart.java

License:Open Source License

/**
 * @generated NOT default direct edit occurs only if there is a defined join specification
 *//*www.  ja v a  2  s.  co m*/
protected void performDirectEditRequest(Request request) {

    final Request theRequest = request;

    if (IDirectEdition.UNDEFINED_DIRECT_EDITOR == directEditionMode) {
        directEditionMode = getDirectEditionType();
    }
    switch (directEditionMode) {
    case IDirectEdition.NO_DIRECT_EDITION:
        // no direct edition mode => does nothing
        return;
    case IDirectEdition.EXTENDED_DIRECT_EDITOR:
        updateExtendedEditorConfiguration();
        if (configuration == null || configuration.getLanguage() == null) {
            performDefaultDirectEditorEdit(theRequest);
        } else {
            configuration.preEditAction(resolveSemanticElement());
            Dialog dialog = null;
            if (configuration instanceof IAdvancedEditorConfiguration) {
                dialog = ((IAdvancedEditorConfiguration) configuration).createDialog(
                        PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(),
                        resolveSemanticElement(), configuration.getTextToEdit(resolveSemanticElement()));
            } else if (configuration instanceof IDirectEditorConfiguration) {
                dialog = new ExtendedDirectEditionDialog(
                        PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(),
                        resolveSemanticElement(),
                        ((IDirectEditorConfiguration) configuration).getTextToEdit(resolveSemanticElement()),
                        (IDirectEditorConfiguration) configuration);
            } else {
                return;
            }
            final Dialog finalDialog = dialog;

            if (Window.OK == dialog.open()) {
                TransactionalEditingDomain domain = getEditingDomain();
                RecordingCommand command = new RecordingCommand(domain, "Edit Label") {

                    @Override
                    protected void doExecute() {
                        configuration.postEditAction(resolveSemanticElement(),
                                ((ILabelEditorDialog) finalDialog).getValue());

                    }
                };
                domain.getCommandStack().execute(command);
            }
        }
        break;
    case IDirectEdition.DEFAULT_DIRECT_EDITOR:
        // prevent default direct edition if no join specification
        EObject element = resolveSemanticElement();
        if (element instanceof JoinNode && ((JoinNode) element).getJoinSpec() == null) {
            break;
        }
        // initialize the direct edit manager
        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();
        }
        break;
    default:
        break;
    }
}

From source file:org.eclipse.papyrus.diagram.clazz.edit.parts.AbstractionNameEditPart.java

License:Open Source License

/**
 * @generated/* ww w .ja va2 s . co  m*/
 */
@Override
protected void performDirectEditRequest(Request request) {

    final Request theRequest = request;

    if (IDirectEdition.UNDEFINED_DIRECT_EDITOR == directEditionMode) {
        directEditionMode = getDirectEditionType();
    }
    switch (directEditionMode) {
    case IDirectEdition.NO_DIRECT_EDITION:
        // no direct edition mode => does nothing
        return;
    case IDirectEdition.EXTENDED_DIRECT_EDITOR:
        updateExtendedEditorConfiguration();
        if (configuration == null || configuration.getLanguage() == null) {
            performDefaultDirectEditorEdit(theRequest);
        } else {
            configuration.preEditAction(resolveSemanticElement());
            Dialog dialog = null;
            if (configuration instanceof IPopupEditorConfiguration) {
                IPopupEditorHelper helper = ((IPopupEditorConfiguration) configuration)
                        .createPopupEditorHelper(this);
                helper.showEditor();
                return;
            } else if (configuration instanceof IAdvancedEditorConfiguration) {
                dialog = ((IAdvancedEditorConfiguration) configuration).createDialog(
                        PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(),
                        resolveSemanticElement(), configuration.getTextToEdit(resolveSemanticElement()));
            } else if (configuration instanceof IDirectEditorConfiguration) {
                dialog = new ExtendedDirectEditionDialog(
                        PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(),
                        resolveSemanticElement(),
                        ((IDirectEditorConfiguration) configuration).getTextToEdit(resolveSemanticElement()),
                        (IDirectEditorConfiguration) configuration);
            } else {
                return;
            }
            final Dialog finalDialog = dialog;

            if (Window.OK == dialog.open()) {
                TransactionalEditingDomain domain = getEditingDomain();
                RecordingCommand command = new RecordingCommand(domain, "Edit Label") {

                    @Override
                    protected void doExecute() {
                        configuration.postEditAction(resolveSemanticElement(),
                                ((ILabelEditorDialog) finalDialog).getValue());

                    }
                };
                domain.getCommandStack().execute(command);
            }
        }
        break;
    case IDirectEdition.DEFAULT_DIRECT_EDITOR:

        // initialize the direct edit manager
        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();
        }
        break;
    default:
        break;
    }
}

From source file:org.eclipse.papyrus.extensionpoints.editors.ui.OpenEmbeddedTextEditorObjectActionDelegate.java

License:Open Source License

/**
 * {@inheritDoc}//from  w ww .jav a 2 s .  c o  m
 */
public void run(IAction action) {
    // retrieves graphical context (in which shell it should open for
    // exemple)

    final IDirectEditorConfiguration configuration = directEditorExtensionPoint.getDirectEditorConfiguration();
    configuration.preEditAction(getEditedObject());

    Dialog dialog = null;
    if (configuration instanceof IPopupEditorConfiguration) {
        IPopupEditorConfiguration popupEditor = (IPopupEditorConfiguration) configuration;
        popupEditor.createPopupEditorHelper(getSelectedElement()).showEditor();
        return;
    }
    if (configuration instanceof IAdvancedEditorConfiguration) {
        dialog = ((IAdvancedEditorConfiguration) configuration).createDialog(
                PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(), getEditedObject(),
                configuration.getTextToEdit(getEditedObject()));
    } else if (configuration instanceof IDirectEditorConfiguration) {
        dialog = new ExtendedDirectEditionDialog(
                PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(), getEditedObject(),
                ((IDirectEditorConfiguration) configuration).getTextToEdit(getEditedObject()),
                (IDirectEditorConfiguration) configuration);
    } else {
        return;
    }
    final Dialog finalDialog = dialog;

    if (Window.OK == dialog.open()) {
        TransactionalEditingDomain domain = ((DiagramEditor) part).getEditingDomain();
        RecordingCommand command = new RecordingCommand(domain, "Edit Label") {

            @Override
            protected void doExecute() {
                configuration.postEditAction(getEditedObject(), ((ILabelEditorDialog) finalDialog).getValue());

            }
        };
        domain.getCommandStack().execute(command);
    }
}

From source file:org.eclipse.papyrus.uml.diagram.activity.edit.parts.AcceptEventActionLabelEditPart.java

License:Open Source License

/**
 * @generated// w  w  w  .  j a va  2s .c  om
 */
protected void performDirectEditRequest(Request request) {
    final Request theRequest = request;
    if (IDirectEdition.UNDEFINED_DIRECT_EDITOR == directEditionMode) {
        directEditionMode = getDirectEditionType();
    }
    switch (directEditionMode) {
    case IDirectEdition.NO_DIRECT_EDITION:
        // no direct edition mode => does nothing
        return;
    case IDirectEdition.EXTENDED_DIRECT_EDITOR:
        updateExtendedEditorConfiguration();
        if (configuration == null || configuration.getLanguage() == null) {
            performDefaultDirectEditorEdit(theRequest);
        } else {
            configuration.preEditAction(resolveSemanticElement());
            Dialog dialog = null;
            if (configuration instanceof IPopupEditorConfiguration) {
                IPopupEditorHelper helper = ((IPopupEditorConfiguration) configuration)
                        .createPopupEditorHelper(this);
                helper.showEditor();
                return;
            } else if (configuration instanceof IAdvancedEditorConfiguration) {
                dialog = ((IAdvancedEditorConfiguration) configuration).createDialog(
                        PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(),
                        resolveSemanticElement(), configuration.getTextToEdit(resolveSemanticElement()));
            } else if (configuration instanceof IDirectEditorConfiguration) {
                dialog = new ExtendedDirectEditionDialog(
                        PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(),
                        resolveSemanticElement(),
                        ((IDirectEditorConfiguration) configuration).getTextToEdit(resolveSemanticElement()),
                        (IDirectEditorConfiguration) configuration);
            } else {
                return;
            }
            final Dialog finalDialog = dialog;
            if (Window.OK == dialog.open()) {
                TransactionalEditingDomain domain = getEditingDomain();
                RecordingCommand command = new RecordingCommand(domain, "Edit Label") {

                    @Override
                    protected void doExecute() {
                        configuration.postEditAction(resolveSemanticElement(),
                                ((ILabelEditorDialog) finalDialog).getValue());
                    }
                };
                domain.getCommandStack().execute(command);
            }
        }
        break;
    case IDirectEdition.DEFAULT_DIRECT_EDITOR:
        // initialize the direct edit manager
        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();
        }
        break;
    default:
        break;
    }
}

From source file:org.eclipse.papyrus.uml.diagram.activity.edit.parts.AcceptTimeEventActionAppliedStereotypeEditPart.java

License:Open Source License

/**
 * @generated//ww w.  jav a2s  . c o  m
 */
protected void performDirectEditRequest(Request request) {
    final Request theRequest = request;
    if (IDirectEdition.UNDEFINED_DIRECT_EDITOR == directEditionMode) {
        directEditionMode = getDirectEditionType();
    }
    switch (directEditionMode) {
    case IDirectEdition.NO_DIRECT_EDITION:
        // no direct edition mode => does nothing
        return;
    case IDirectEdition.EXTENDED_DIRECT_EDITOR:
        updateExtendedEditorConfiguration();
        if (configuration == null || configuration.getLanguage() == null) {
            performDefaultDirectEditorEdit(theRequest);
        } else {
            configuration.preEditAction(resolveSemanticElement());
            Dialog dialog = null;
            if (configuration instanceof IAdvancedEditorConfiguration) {
                dialog = ((IAdvancedEditorConfiguration) configuration).createDialog(
                        PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(),
                        resolveSemanticElement(), configuration.getTextToEdit(resolveSemanticElement()));
            } else if (configuration instanceof IDirectEditorConfiguration) {
                dialog = new ExtendedDirectEditionDialog(
                        PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(),
                        resolveSemanticElement(),
                        ((IDirectEditorConfiguration) configuration).getTextToEdit(resolveSemanticElement()),
                        (IDirectEditorConfiguration) configuration);
            } else {
                return;
            }
            final Dialog finalDialog = dialog;
            if (Window.OK == dialog.open()) {
                TransactionalEditingDomain domain = getEditingDomain();
                RecordingCommand command = new RecordingCommand(domain, "Edit Label") {

                    @Override
                    protected void doExecute() {
                        configuration.postEditAction(resolveSemanticElement(),
                                ((ILabelEditorDialog) finalDialog).getValue());
                    }
                };
                domain.getCommandStack().execute(command);
            }
        }
        break;
    case IDirectEdition.DEFAULT_DIRECT_EDITOR:
        // initialize the direct edit manager
        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();
        }
        break;
    default:
        break;
    }
}