diff options
Diffstat (limited to 'examples/org.eclipse.swt.examples/src/org/eclipse/swt/examples/graphics/GradientDialog.java')
-rw-r--r-- | examples/org.eclipse.swt.examples/src/org/eclipse/swt/examples/graphics/GradientDialog.java | 277 |
1 files changed, 0 insertions, 277 deletions
diff --git a/examples/org.eclipse.swt.examples/src/org/eclipse/swt/examples/graphics/GradientDialog.java b/examples/org.eclipse.swt.examples/src/org/eclipse/swt/examples/graphics/GradientDialog.java deleted file mode 100644 index af8a685590..0000000000 --- a/examples/org.eclipse.swt.examples/src/org/eclipse/swt/examples/graphics/GradientDialog.java +++ /dev/null @@ -1,277 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2006 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - *******************************************************************************/ - -package org.eclipse.swt.examples.graphics; - -import java.util.*; - -import org.eclipse.swt.*; -import org.eclipse.swt.graphics.*; -import org.eclipse.swt.layout.*; -import org.eclipse.swt.widgets.*; - -/** - * This dialog is used for prompting the user to select two colors for the - * creation of a gradient. - */ -public class GradientDialog extends Dialog { - - Canvas canvas; - - Button colorButton1, colorButton2; // color buttons - - Button okButton, cancelButton; - - Menu menu1, menu2; - - RGB rgb1, rgb2; // first and second color used in gradient - int returnVal; // value to be returned by open(), set to SWT.OK - // if the ok button has been pressed - ArrayList resources; - - public GradientDialog(Shell parent) { - this (parent, SWT.PRIMARY_MODAL); - } - - public GradientDialog(Shell parent, int style) { - super(parent, style); - rgb1 = rgb2 = null; - returnVal = SWT.CANCEL; - resources = new ArrayList(); - } - - /** - * Sets up the dialog and opens it. - * */ - public int open() { - final Shell dialog = new Shell(getParent(), SWT.DIALOG_TRIM | SWT.RESIZE | getStyle()); - dialog.setText(GraphicsExample.getResourceString("Gradient")); //$NON-NLS-1$ - - GridLayout gridLayout = new GridLayout(); - gridLayout.numColumns = 2; - gridLayout.marginHeight = 10; - gridLayout.marginWidth = 10; - dialog.setLayout(gridLayout); - - // create the controls in the dialog - createDialogControls(dialog); - - dialog.addListener(SWT.Close, new Listener() { - public void handleEvent(Event event) { - for (int i = 0; i < resources.size(); i++) { - Object obj = resources.get(i); - if (obj != null && obj instanceof Resource) { - ((Resource) obj).dispose(); - } - } - dialog.dispose(); - } - }); - - dialog.setDefaultButton (okButton); - dialog.pack (); - Rectangle rect = getParent().getMonitor().getBounds(); - Rectangle bounds = dialog.getBounds(); - dialog.setLocation(rect.x + (rect.width - bounds.width) / 2, rect.y + (rect.height - bounds.height) / 2); - dialog.setMinimumSize(bounds.width, bounds.height); - - dialog.open (); - - Display display = getParent().getDisplay(); - while (!dialog.isDisposed()) { - if (!display.readAndDispatch()) display.sleep(); - } - - if (menu1 != null) { - menu1.dispose(); - menu1 = null; - } - - if (menu2 != null) { - menu2.dispose(); - menu2 = null; - } - - return returnVal; - } - - /** - * Creates the controls of the dialog. - * */ - public void createDialogControls(final Shell parent) { - final Display display = parent.getDisplay(); - - // message - Label message = new Label(parent, SWT.NONE); - message.setText(GraphicsExample.getResourceString("GradientDlgMsg")); - GridData gridData = new GridData(GridData.HORIZONTAL_ALIGN_FILL); - gridData.horizontalSpan = 2; - message.setLayoutData(gridData); - - // default colors are white and black - if (rgb1 == null || rgb2 == null) { - rgb1 = display.getSystemColor(SWT.COLOR_WHITE).getRGB(); - rgb2 = display.getSystemColor(SWT.COLOR_BLACK).getRGB(); - } - - // canvas - canvas = new Canvas(parent, SWT.NONE); - gridData = new GridData(GridData.FILL_BOTH); - gridData.widthHint = 200; - gridData.heightHint = 100; - canvas.setLayoutData(gridData); - canvas.addListener (SWT.Paint, new Listener () { - public void handleEvent (Event e) { - Image preview = null; - Point size = canvas.getSize(); - Color color1 = new Color(display, rgb1); - Color color2 = new Color(display, rgb2); - preview = GraphicsExample.createImage(display, color1, color2, size.x, size.y); - if (preview != null) { - e.gc.drawImage (preview, 0, 0); - } - preview.dispose(); - color1.dispose(); - color2.dispose(); - } - }); - - // composite used for both color buttons - Composite colorButtonComp = new Composite(parent, SWT.NONE); - - // layout buttons - RowLayout layout = new RowLayout();; - layout.type = SWT.VERTICAL; - layout.pack = false; - colorButtonComp.setLayout(layout); - - // position composite - gridData = new GridData(GridData.VERTICAL_ALIGN_BEGINNING); - colorButtonComp.setLayoutData(gridData); - - ColorMenu colorMenu = new ColorMenu(); - - // color controls: first color - colorButton1 = new Button(colorButtonComp, SWT.PUSH); - colorButton1.setText(GraphicsExample.getResourceString("GradientDlgButton1")); - Color color1 = new Color(display, rgb1); - Image img1 = GraphicsExample.createImage(display, color1); - color1.dispose(); - colorButton1.setImage(img1); - resources.add(img1); - menu1 = colorMenu.createMenu(parent.getParent(), new ColorListener() { - public void setColor(GraphicsBackground gb) { - rgb1 = gb.getBgColor1().getRGB(); - colorButton1.setImage(gb.getThumbNail()); - if (canvas != null) canvas.redraw(); - } - }); - colorButton1.addListener(SWT.Selection, new Listener() { - public void handleEvent(Event event) { - final Button button = (Button) event.widget; - final Composite parent = button.getParent(); - Rectangle bounds = button.getBounds(); - Point point = parent.toDisplay(new Point(bounds.x, bounds.y)); - menu1.setLocation(point.x, point.y + bounds.height); - menu1.setVisible(true); - } - }); - - // color controls: second color - colorButton2 = new Button(colorButtonComp, SWT.PUSH); - colorButton2.setText(GraphicsExample.getResourceString("GradientDlgButton2")); - Color color2 = new Color(display, rgb2); - Image img2 = GraphicsExample.createImage(display, color2); - color2.dispose(); - colorButton2.setImage(img2); - resources.add(img2); - menu2 = colorMenu.createMenu(parent.getParent(), new ColorListener() { - public void setColor(GraphicsBackground gb) { - rgb2 = gb.getBgColor1().getRGB(); - colorButton2.setImage(gb.getThumbNail()); - if (canvas != null) canvas.redraw(); - } - }); - colorButton2.addListener(SWT.Selection, new Listener() { - public void handleEvent(Event event) { - final Button button = (Button) event.widget; - final Composite parent = button.getParent(); - Rectangle bounds = button.getBounds(); - Point point = parent.toDisplay(new Point(bounds.x, bounds.y)); - menu2.setLocation(point.x, point.y + bounds.height); - menu2.setVisible(true); - } - }); - - // composite used for ok and cancel buttons - Composite okCancelComp = new Composite(parent, SWT.NONE); - - // layout buttons - RowLayout rowLayout = new RowLayout(); - rowLayout.pack = false; - rowLayout.marginTop = 5; - okCancelComp.setLayout(rowLayout); - - // position composite - gridData = new GridData(GridData.HORIZONTAL_ALIGN_END); - gridData.horizontalSpan = 2; - okCancelComp.setLayoutData(gridData); - - // OK button - okButton = new Button (okCancelComp, SWT.PUSH); - okButton.setText("&OK"); - okButton.addListener(SWT.Selection, new Listener() { - public void handleEvent(Event event) { - returnVal = SWT.OK; - parent.close(); - } - }); - - // cancel button - cancelButton = new Button (okCancelComp, SWT.PUSH); - cancelButton.setText("&Cancel"); - cancelButton.addListener(SWT.Selection, new Listener() { - public void handleEvent(Event event) { - parent.close(); - } - }); - } - - /** - * Returns the first RGB selected by the user. - * */ - public RGB getFirstRGB() { - return rgb1; - } - - /** - * Sets the first RGB. - * @param rgb - */ - public void setFirstRGB(RGB rgb) { - this.rgb1 = rgb; - } - - /** - * Returns the second RGB selected by the user. - * */ - public RGB getSecondRGB() { - return rgb2; - } - - /** - * Sets the second RGB. - * @param rgb - */ - public void setSecondRGB(RGB rgb) { - this.rgb2 = rgb; - } -} |