diff options
Diffstat (limited to 'bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/OptionsTextCellEditor.java')
-rw-r--r-- | bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/OptionsTextCellEditor.java | 241 |
1 files changed, 0 insertions, 241 deletions
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/OptionsTextCellEditor.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/OptionsTextCellEditor.java deleted file mode 100644 index 3f0e59191a..0000000000 --- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/OptionsTextCellEditor.java +++ /dev/null @@ -1,241 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2001, 2004 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.wst.xsd.ui.internal.properties; - -import org.eclipse.jface.viewers.CellEditor; -import org.eclipse.swt.SWT; -import org.eclipse.swt.events.FocusAdapter; -import org.eclipse.swt.events.FocusEvent; -import org.eclipse.swt.events.KeyEvent; -import org.eclipse.swt.events.KeyListener; -import org.eclipse.swt.events.SelectionAdapter; -import org.eclipse.swt.events.SelectionEvent; -import org.eclipse.swt.events.SelectionListener; -import org.eclipse.swt.graphics.Point; -import org.eclipse.swt.graphics.Rectangle; -import org.eclipse.swt.widgets.Button; -import org.eclipse.swt.widgets.Composite; -import org.eclipse.swt.widgets.Control; -import org.eclipse.swt.widgets.Layout; -import org.eclipse.swt.widgets.Shell; -import org.eclipse.swt.widgets.Text; -import org.eclipse.wst.xsd.ui.internal.util.ViewUtility; - - -public abstract class OptionsTextCellEditor extends CellEditor implements SelectionListener, KeyListener -{ - private Composite fEditor; - protected Text fText; - protected boolean isTextReadOnly; - Button moreButton; - Shell dialog; - - private String fSelection; - protected Object fValue; - int selection; - Object typeObject; - - private class ComboCellLayout extends Layout - { - public void layout(Composite editor, boolean force) - { - Rectangle bounds= editor.getClientArea(); - Point size= moreButton.computeSize(SWT.DEFAULT, bounds.height, force); - fText.setBounds(0, 0, bounds.width - size.x, bounds.height); - moreButton.setBounds(bounds.width - size.x, 0, size.x, size.y); - } - - public Point computeSize(Composite editor, int wHint, int hHint, boolean force) - { - if (wHint != SWT.DEFAULT && hHint != SWT.DEFAULT) - { - return new Point(wHint, hHint); - } - Point size= fText.computeSize(SWT.DEFAULT, SWT.DEFAULT, force); -// size.x += moreButton.computeSize(SWT.DEFAULT, SWT.DEFAULT, force).x; - return size; - } - } - -/** - * Creates a new combo box cell editor with the given choices. - */ - public OptionsTextCellEditor(Composite parent) - { - super(parent); - fSelection = ""; - } - - /* (non-Javadoc) - * @see org.eclipse.jface.viewers.CellEditor#createControl(org.eclipse.swt.widgets.Composite) - */ - protected Control createControl(Composite parent) - { - fEditor = ViewUtility.createComposite(parent, 2); - fEditor.setLayout(new ComboCellLayout()); - - if (isTextReadOnly) - { - fText = new Text(fEditor, SWT.LEFT | SWT.READ_ONLY); - } - else - { - fText = new Text(fEditor, SWT.LEFT); - } -// fText.setEnabled(false); - - fText.setBackground(parent.getBackground()); - fText.setText(""); - fText.addKeyListener(this); - fText.addFocusListener(new FocusAdapter() - { - public void focusLost(FocusEvent e) - { - if (!moreButton.isFocusControl()) - { - OptionsTextCellEditor.this.focusLost(); - } - } - }); - - moreButton = ViewUtility.createPushButton(fEditor, "..."); - moreButton.addSelectionListener(new SelectionAdapter() - { - public void widgetSelected(SelectionEvent e) - { - // System.out.println("More Button Clicked"); - openDialog(); - } - }); - moreButton.addKeyListener(this); - moreButton.addFocusListener(new FocusAdapter() { - public void focusLost(FocusEvent e) { - if (!fText.isFocusControl() && (dialog==null || - dialog.isDisposed() || - (dialog!=null && !dialog.isFocusControl()))) - { - // System.out.println("MoreButton focusLost"); - OptionsTextCellEditor.this.focusLost(); - } - } - }); - - - setValueValid(true); - - return fEditor; - } - - public void activate() - { - // System.out.println("Cell editor activated"); - fText.setText(fValue == null ? "" : fValue.toString()); - } - - protected void focusLost() { - // System.out.println("CELLEDITOR FOCUS LOST"); - if (isActivated()) { - applyEditorValueAndDeactivate(); - } - } - - void applyEditorValueAndDeactivate() { - // must set the selection before getting value -// if (dialog != null && !dialog.isDisposed()) -// { -// dialog.close(); -// dialog.dispose(); -// } - fireApplyEditorValue(); - deactivate(); - } - - public void keyPressed(KeyEvent e) - { - if (e.character == SWT.ESC) - { // Escape character - fireCancelEditor(); - } - else if ((e.character == SWT.CR) || (e.character == SWT.LF)) - { // Return key - applyEditorValueAndDeactivate(); - } - } - - public void keyReleased(KeyEvent e) - { - - } - - /* (non-Javadoc) - * @see org.eclipse.jface.viewers.CellEditor#doGetValue() - * Returns the cell editor's value. - */ - protected Object doGetValue() - { - return fValue; - } - - /* (non-Javadoc) - * @see org.eclipse.jface.viewers.CellEditor#doSetFocus() - * Set the focus to the cell editor's UI representation. - */ - protected void doSetFocus() - { -// fButton.setFocus(); -// System.out.println("doSetFocus() " + moreButton.setFocus()); - fText.setFocus(); - } - - /* (non-Javadoc) - * @see org.eclipse.jface.viewers.CellEditor#doSetValue(java.lang.Object) - * Sets the value of the cell editor to the given value. - */ - protected void doSetValue(Object value) - { - fValue = value; - } - - protected Point getButtonAbsoluteLocation() - { - Rectangle buttonBounds = moreButton.getBounds(); - int x = buttonBounds.x; - int y = buttonBounds.y; - Control c = moreButton; - while (c != null) - { - c = c.getParent(); - if (c == null) - break; - x += c.getBounds().x; - y += c.getBounds().y; - } - x += buttonBounds.width + 5; - y += buttonBounds.height; - Point p = new Point(x,y); - return p; - } - - protected void cancel() - { - dialog.close(); - dialog.dispose(); - } - - protected abstract void openDialog(); - - public void widgetSelected(SelectionEvent e) - { - } - public void widgetDefaultSelected(SelectionEvent e) - { - } -} |