Search in sources :

Example 6 with AccessibleAdapter

use of org.eclipse.swt.accessibility.AccessibleAdapter 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)

Aggregations

AccessibleAdapter (org.eclipse.swt.accessibility.AccessibleAdapter)6 AccessibleEvent (org.eclipse.swt.accessibility.AccessibleEvent)6 Point (org.eclipse.swt.graphics.Point)4 Rectangle (org.eclipse.swt.graphics.Rectangle)4 AccessibleControlAdapter (org.eclipse.swt.accessibility.AccessibleControlAdapter)3 AccessibleControlEvent (org.eclipse.swt.accessibility.AccessibleControlEvent)3 SelectionEvent (org.eclipse.swt.events.SelectionEvent)3 Label (org.eclipse.swt.widgets.Label)3 AccessibleTextAdapter (org.eclipse.swt.accessibility.AccessibleTextAdapter)2 AccessibleTextEvent (org.eclipse.swt.accessibility.AccessibleTextEvent)2 SelectionAdapter (org.eclipse.swt.events.SelectionAdapter)2 GridLayout (org.eclipse.swt.layout.GridLayout)2 Button (org.eclipse.swt.widgets.Button)2 Composite (org.eclipse.swt.widgets.Composite)2 Command (org.eclipse.gef.commands.Command)1 Accessible (org.eclipse.swt.accessibility.Accessible)1 CLabel (org.eclipse.swt.custom.CLabel)1 DropTargetEvent (org.eclipse.swt.dnd.DropTargetEvent)1 DropTargetListener (org.eclipse.swt.dnd.DropTargetListener)1 FocusEvent (org.eclipse.swt.events.FocusEvent)1