Search in sources :

Example 76 with Command

use of org.eclipse.gef.commands.Command in project tdi-studio-se by Talend.

the class TalendConnectionCreationTool method performConnectionStartWith.

/**
     * The node part of the source must be given in argument. This will define the fist point of the connection.
     * 
     * @param sourcePart the edit part that will be the source of the connection
     */
public void performConnectionStartWith(EditPart sourcePart) {
    this.sourcePart = sourcePart;
    setConnectionSource(sourcePart);
    updateTargetRequest();
    Command cmd = ((AbstractEditPart) sourcePart).getCommand(getTargetRequest());
    setCurrentCommand(cmd);
    setState(STATE_CONNECTION_STARTED);
}
Also used : CompoundCommand(org.eclipse.gef.commands.CompoundCommand) Command(org.eclipse.gef.commands.Command) AbstractEditPart(org.eclipse.gef.editparts.AbstractEditPart)

Example 77 with Command

use of org.eclipse.gef.commands.Command in project tdi-studio-se by Talend.

the class JobletContainerLayoutEditPolicy method getCreateCommand.

@Override
protected Command getCreateCommand(CreateRequest request) {
    Rectangle constraint = (Rectangle) getConstraintFor(request);
    Process linkedProcess = (Process) ((JobletContainer) getHost().getModel()).getNode().getProcess();
    Command command = null;
    if (Note.class.equals(request.getNewObjectType())) {
        command = new CreateNoteCommand(linkedProcess, (Note) request.getNewObject(), constraint.getLocation());
    } else if (request.getNewObject() instanceof Node) {
        Node node = (Node) request.getNewObject();
        NodeContainer nodeContainer = ((Process) node.getProcess()).loadNodeContainer(node, false);
        command = new CreateNodeContainerCommand(linkedProcess, nodeContainer, constraint.getLocation());
    }
    return command;
}
Also used : CreateNodeContainerCommand(org.talend.designer.core.ui.editor.cmd.CreateNodeContainerCommand) CreateNodeContainerCommand(org.talend.designer.core.ui.editor.cmd.CreateNodeContainerCommand) CreateNoteCommand(org.talend.designer.core.ui.editor.cmd.CreateNoteCommand) Command(org.eclipse.gef.commands.Command) Note(org.talend.designer.core.ui.editor.notes.Note) Node(org.talend.designer.core.ui.editor.nodes.Node) Rectangle(org.eclipse.draw2d.geometry.Rectangle) Process(org.talend.designer.core.ui.editor.process.Process) CreateNoteCommand(org.talend.designer.core.ui.editor.cmd.CreateNoteCommand) NodeContainer(org.talend.designer.core.ui.editor.nodecontainer.NodeContainer)

Example 78 with Command

use of org.eclipse.gef.commands.Command in project tdi-studio-se by Talend.

the class BasicNotePropertyComposite method createFontsGroup.

/**
     * Create font tool bar group
     * 
     * @param parent - parent composite
     * @return - font tool bar
     */
protected Composite createFontsGroup(Composite parent) {
    Composite familySize = getWidgetFactory().createComposite(parent);
    GridLayout layout = new GridLayout(2, false);
    layout.horizontalSpacing = 0;
    layout.verticalSpacing = 0;
    layout.marginHeight = 0;
    layout.marginWidth = 0;
    familySize.setLayout(layout);
    fontFamilyCombo = getWidgetFactory().createCCombo(familySize, SWT.DROP_DOWN | SWT.READ_ONLY | SWT.BORDER);
    fontFamilyCombo.setItems(FontHelper.getFontNames());
    fontFamilyCombo.setText((String) note.getPropertyValue(EParameterName.NOTE_FONT.getName()));
    fontFamilyCombo.addSelectionListener(new SelectionAdapter() {

        @Override
        public void widgetSelected(SelectionEvent event) {
            updateFontFamily();
        }
    });
    fontSizeCombo = getWidgetFactory().createCCombo(familySize, SWT.DROP_DOWN | SWT.READ_ONLY | SWT.BORDER);
    fontSizeCombo.setItems(FontHelper.getFontSizes());
    fontSizeCombo.setText((String) note.getPropertyValue(EParameterName.FONT_SIZE.getName()));
    fontSizeCombo.addSelectionListener(new SelectionAdapter() {

        @Override
        public void widgetSelected(SelectionEvent event) {
            updateFontSize();
        }
    });
    Composite toolBar = new Composite(parent, SWT.SHADOW_NONE);
    toolBar.setLayout(new GridLayout(7, false));
    toolBar.setBackground(parent.getBackground());
    fontBoldButton = new Button(toolBar, SWT.TOGGLE);
    fontBoldButton.setImage(ImageProvider.getImage(EImage.BOLD_ICON));
    fontBoldButton.getAccessible().addAccessibleListener(new AccessibleAdapter() {

        @Override
        public void getName(AccessibleEvent e) {
            e.result = "Bold";
        }
    });
    fontItalicButton = new Button(toolBar, SWT.TOGGLE);
    fontItalicButton.setImage(ImageProvider.getImage(EImage.ITALIC_ICON));
    fontItalicButton.getAccessible().addAccessibleListener(new AccessibleAdapter() {

        @Override
        public void getName(AccessibleEvent e) {
            e.result = "Italic";
        }
    });
    fontBoldButton.addSelectionListener(new SelectionAdapter() {

        @Override
        public void widgetSelected(SelectionEvent event) {
            updateFontBold();
        }
    });
    fontItalicButton.addSelectionListener(new SelectionAdapter() {

        @Override
        public void widgetSelected(SelectionEvent event) {
            updateFontItalic();
        }
    });
    new Label(toolBar, SWT.LEFT);
    fontColorButton = new Button(toolBar, SWT.PUSH);
    Image overlyedImage = new ColorOverlayImageDescriptor(ImageProvider.getImageDesc(EImage.FONT_COLOR_ICON).getImageData(), ColorUtils.stringToRGB((String) note.getPropertyValue(EParameterName.NOTETXT_COLOR.getName()))).createImage();
    fontColorButton.setImage(overlyedImage);
    fontColorButton.getAccessible().addAccessibleListener(new AccessibleAdapter() {

        @Override
        public void getName(AccessibleEvent e) {
            e.result = "Font Color";
        }
    });
    fontColorButton.addSelectionListener(new SelectionAdapter() {

        @Override
        public void widgetSelected(SelectionEvent event) {
            ColorPalettePopup popup = new ColorPalettePopup(fontColorButton.getParent().getShell(), IDialogConstants.BUTTON_BAR_HEIGHT);
            Rectangle r = fontColorButton.getBounds();
            Point location = fontColorButton.getParent().toDisplay(r.x, r.y);
            popup.open(new Point(location.x, location.y + r.height));
            if (popup.getSelectedColor() == null && !popup.useDefaultColor()) {
                return;
            }
            // selectedColor should be null if we are to use the default color
            RGB selectedColor = popup.getSelectedColor();
            if (popup.useDefaultColor()) {
                selectedColor = new RGB(0, 0, 0);
            }
            if (selectedColor != null) {
                //$NON-NLS-1$ //$NON-NLS-2$
                String value = selectedColor.red + ";" + selectedColor.green + ";" + selectedColor.blue;
                Command cmd = new PropertyChangeCommand(note, EParameterName.NOTETXT_COLOR.getName(), value);
                getCommandStack().execute(cmd);
                note.refresh();
                Image overlyedImage = new ColorOverlayImageDescriptor(ImageProvider.getImageDesc(EImage.FONT_COLOR_ICON).getImageData(), selectedColor).createImage();
                fontColorButton.setImage(overlyedImage);
                text.setForeground(new Color(null, ColorUtils.stringToRGB((String) note.getPropertyValue(EParameterName.NOTETXT_COLOR.getName()))));
            }
        }
    });
    new Label(toolBar, SWT.LEFT);
    lineColorButton = new Button(toolBar, SWT.PUSH);
    overlyedImage = new ColorOverlayImageDescriptor(ImageProvider.getImageDesc(EImage.LINE_COLOR_ICON).getImageData(), ColorUtils.stringToRGB((String) note.getPropertyValue(EParameterName.NOTE_LINECOLOR.getName()))).createImage();
    lineColorButton.setImage(overlyedImage);
    lineColorButton.getAccessible().addAccessibleListener(new AccessibleAdapter() {

        @Override
        public void getName(AccessibleEvent e) {
            e.result = "Line Color";
        }
    });
    lineColorButton.addSelectionListener(new SelectionAdapter() {

        @Override
        public void widgetSelected(SelectionEvent event) {
            ColorPalettePopup popup = new ColorPalettePopup(lineColorButton.getParent().getShell(), IDialogConstants.BUTTON_BAR_HEIGHT);
            Rectangle r = lineColorButton.getBounds();
            Point location = lineColorButton.getParent().toDisplay(r.x, r.y);
            popup.open(new Point(location.x, location.y + r.height));
            if (popup.getSelectedColor() == null && !popup.useDefaultColor()) {
                return;
            }
            // selectedColor should be null if we are to use the default color
            RGB selectedColor = popup.getSelectedColor();
            if (popup.useDefaultColor()) {
                selectedColor = new RGB(237, 201, 122);
            }
            if (selectedColor != null) {
                //$NON-NLS-1$ //$NON-NLS-2$
                String value = selectedColor.red + ";" + selectedColor.green + ";" + selectedColor.blue;
                Command cmd = new PropertyChangeCommand(note, EParameterName.NOTE_LINECOLOR.getName(), value);
                getCommandStack().execute(cmd);
                note.refresh();
                Image overlyedImage = new ColorOverlayImageDescriptor(ImageProvider.getImageDesc(EImage.LINE_COLOR_ICON).getImageData(), selectedColor).createImage();
                lineColorButton.setImage(overlyedImage);
            }
        }
    });
    fillColorButton = new Button(toolBar, SWT.PUSH);
    overlyedImage = new ColorOverlayImageDescriptor(ImageProvider.getImageDesc(EImage.FILL_COLOR_ICON).getImageData(), ColorUtils.stringToRGB((String) note.getPropertyValue(EParameterName.NOTE_COLOR.getName()))).createImage();
    fillColorButton.setImage(overlyedImage);
    fillColorButton.getAccessible().addAccessibleListener(new AccessibleAdapter() {

        @Override
        public void getName(AccessibleEvent e) {
            e.result = "Fill Color";
        }
    });
    fillColorButton.addSelectionListener(new SelectionAdapter() {

        @Override
        public void widgetSelected(SelectionEvent event) {
            ColorPalettePopup popup = new ColorPalettePopup(fillColorButton.getParent().getShell(), IDialogConstants.BUTTON_BAR_HEIGHT);
            Rectangle r = fillColorButton.getBounds();
            Point location = fillColorButton.getParent().toDisplay(r.x, r.y);
            popup.open(new Point(location.x, location.y + r.height));
            if (popup.getSelectedColor() == null && !popup.useDefaultColor()) {
                return;
            }
            // selectedColor should be null if we are to use the default color
            RGB selectedColor = popup.getSelectedColor();
            if (popup.useDefaultColor()) {
                selectedColor = new RGB(255, 255, 203);
            }
            if (selectedColor != null) {
                //$NON-NLS-1$ //$NON-NLS-2$
                String value = selectedColor.red + ";" + selectedColor.green + ";" + selectedColor.blue;
                Command cmd = new PropertyChangeCommand(note, EParameterName.NOTE_COLOR.getName(), value);
                getCommandStack().execute(cmd);
                note.refresh();
                Image overlyedImage = new ColorOverlayImageDescriptor(ImageProvider.getImageDesc(EImage.FILL_COLOR_ICON).getImageData(), selectedColor).createImage();
                fillColorButton.setImage(overlyedImage);
            }
        }
    });
    return toolBar;
}
Also used : Composite(org.eclipse.swt.widgets.Composite) SelectionAdapter(org.eclipse.swt.events.SelectionAdapter) Color(org.eclipse.swt.graphics.Color) CLabel(org.eclipse.swt.custom.CLabel) Label(org.eclipse.swt.widgets.Label) Rectangle(org.eclipse.swt.graphics.Rectangle) AccessibleAdapter(org.eclipse.swt.accessibility.AccessibleAdapter) ColorPalettePopup(org.talend.commons.ui.gmf.util.ColorPalettePopup) Point(org.eclipse.swt.graphics.Point) Image(org.eclipse.swt.graphics.Image) EImage(org.talend.commons.ui.runtime.image.EImage) RGB(org.eclipse.swt.graphics.RGB) GridLayout(org.eclipse.swt.layout.GridLayout) PropertyChangeCommand(org.talend.designer.core.ui.editor.cmd.PropertyChangeCommand) Button(org.eclipse.swt.widgets.Button) ChangeNoteOpacityCommand(org.talend.designer.core.ui.editor.cmd.ChangeNoteOpacityCommand) ChangeNoteTextCommand(org.talend.designer.core.ui.editor.cmd.ChangeNoteTextCommand) Command(org.eclipse.gef.commands.Command) PropertyChangeCommand(org.talend.designer.core.ui.editor.cmd.PropertyChangeCommand) SelectionEvent(org.eclipse.swt.events.SelectionEvent) AccessibleEvent(org.eclipse.swt.accessibility.AccessibleEvent)

Example 79 with Command

use of org.eclipse.gef.commands.Command in project tdi-studio-se by Talend.

the class BasicNotePropertyComposite method updateFontItalic.

private void updateFontItalic() {
    Boolean value = fontItalicButton.getSelection();
    Command cmd = new PropertyChangeCommand(note, EParameterName.FONT_ITALIC.getName(), value);
    getCommandStack().execute(cmd);
    note.refresh();
    textChanged();
}
Also used : PropertyChangeCommand(org.talend.designer.core.ui.editor.cmd.PropertyChangeCommand) ChangeNoteOpacityCommand(org.talend.designer.core.ui.editor.cmd.ChangeNoteOpacityCommand) ChangeNoteTextCommand(org.talend.designer.core.ui.editor.cmd.ChangeNoteTextCommand) Command(org.eclipse.gef.commands.Command) PropertyChangeCommand(org.talend.designer.core.ui.editor.cmd.PropertyChangeCommand)

Example 80 with Command

use of org.eclipse.gef.commands.Command in project tdi-studio-se by Talend.

the class BasicNotePropertyComposite method updateFontSize.

private void updateFontSize() {
    if (fontSizeCombo.getText() != null || !fontSizeCombo.getText().equals("")) {
        //$NON-NLS-1$
        String value = fontSizeCombo.getText();
        Command cmd = new PropertyChangeCommand(note, EParameterName.FONT_SIZE.getName(), value);
        getCommandStack().execute(cmd);
        note.refresh();
        textChanged();
    }
}
Also used : PropertyChangeCommand(org.talend.designer.core.ui.editor.cmd.PropertyChangeCommand) ChangeNoteOpacityCommand(org.talend.designer.core.ui.editor.cmd.ChangeNoteOpacityCommand) ChangeNoteTextCommand(org.talend.designer.core.ui.editor.cmd.ChangeNoteTextCommand) Command(org.eclipse.gef.commands.Command) PropertyChangeCommand(org.talend.designer.core.ui.editor.cmd.PropertyChangeCommand)

Aggregations

Command (org.eclipse.gef.commands.Command)100 ArrayList (java.util.ArrayList)38 List (java.util.List)35 PropertyChangeCommand (org.talend.designer.core.ui.editor.cmd.PropertyChangeCommand)35 CompoundCommand (org.eclipse.gef.commands.CompoundCommand)28 IElementParameter (org.talend.core.model.process.IElementParameter)22 Node (org.talend.designer.core.ui.editor.nodes.Node)20 INode (org.talend.core.model.process.INode)17 EditPart (org.eclipse.gef.EditPart)15 CommandStack (org.eclipse.gef.commands.CommandStack)15 IRepositoryViewObject (org.talend.core.model.repository.IRepositoryViewObject)15 GraphicalEditPart (org.eclipse.gef.GraphicalEditPart)14 IGraphicalEditPart (org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart)14 IMetadataTable (org.talend.core.model.metadata.IMetadataTable)13 RepositoryNode (org.talend.repository.model.RepositoryNode)13 RepositoryChangeMetadataCommand (org.talend.designer.core.ui.editor.cmd.RepositoryChangeMetadataCommand)12 Request (org.eclipse.gef.Request)11 NonResizableEditPolicy (org.eclipse.gef.editpolicies.NonResizableEditPolicy)11 DirectEditRequest (org.eclipse.gef.requests.DirectEditRequest)11 LabelDirectEditPolicy (org.eclipse.gmf.runtime.diagram.ui.editpolicies.LabelDirectEditPolicy)11