diff options
Diffstat (limited to 'jsf/plugins/org.eclipse.jst.jsf.facesconfig.ui/src/org/eclipse/jst/jsf/facesconfig/ui/pageflow/editpart/PageflowDirectEditManager.java')
-rw-r--r-- | jsf/plugins/org.eclipse.jst.jsf.facesconfig.ui/src/org/eclipse/jst/jsf/facesconfig/ui/pageflow/editpart/PageflowDirectEditManager.java | 138 |
1 files changed, 0 insertions, 138 deletions
diff --git a/jsf/plugins/org.eclipse.jst.jsf.facesconfig.ui/src/org/eclipse/jst/jsf/facesconfig/ui/pageflow/editpart/PageflowDirectEditManager.java b/jsf/plugins/org.eclipse.jst.jsf.facesconfig.ui/src/org/eclipse/jst/jsf/facesconfig/ui/pageflow/editpart/PageflowDirectEditManager.java deleted file mode 100644 index 5fa56d1fd..000000000 --- a/jsf/plugins/org.eclipse.jst.jsf.facesconfig.ui/src/org/eclipse/jst/jsf/facesconfig/ui/pageflow/editpart/PageflowDirectEditManager.java +++ /dev/null @@ -1,138 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2005 Sybase, Inc. 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: - * Sybase, Inc. - initial API and implementation - *******************************************************************************/ - -package org.eclipse.jst.jsf.facesconfig.ui.pageflow.editpart; - -import org.eclipse.draw2d.IFigure; -import org.eclipse.draw2d.Label; -import org.eclipse.draw2d.geometry.Dimension; -import org.eclipse.gef.GraphicalEditPart; -import org.eclipse.gef.tools.CellEditorLocator; -import org.eclipse.gef.tools.DirectEditManager; -import org.eclipse.swt.SWT; -import org.eclipse.swt.events.VerifyEvent; -import org.eclipse.swt.events.VerifyListener; -import org.eclipse.swt.graphics.Font; -import org.eclipse.swt.graphics.FontData; -import org.eclipse.swt.graphics.GC; -import org.eclipse.swt.graphics.Point; -import org.eclipse.swt.widgets.Text; - -/** - * DirectEditManager for Pageflow node - * - * @author - Xiaoguang Zhang - */ -/*package*/ final class PageflowDirectEditManager extends DirectEditManager { - /** text font */ - private Font scaledFont; - - /** verify listener for the text control */ - private VerifyListener verifyListener; - - /** the direct editor's parent label. */ - private final Label label; - - /** - * Creates a new PageflowDirectEditManager with the given attributes. - * - * @param source - * the source EditPart - * @param editorType - * type of editor - * @param locator - * the CellEditorLocator - * @param label - */ - public PageflowDirectEditManager(GraphicalEditPart source, - Class editorType, CellEditorLocator locator, Label label) { - super(source, editorType, locator); - this.label = label; - } - - /* - * (non-javadoc) - * - * @see org.eclipse.gef.tools.DirectEditManager#bringDown() - */ - protected void bringDown() { - // This method might be re-entered when super.bringDown() is called. - Font disposeFont = scaledFont; - scaledFont = null; - super.bringDown(); - if (disposeFont != null && !disposeFont.isDisposed()) { - disposeFont.dispose(); - } - } - - /* - * (non-javadoc) - * - * @see org.eclipse.gef.tools.DirectEditManager#initCellEditor() - */ - protected void initCellEditor() { - Text text = (Text) getCellEditor().getControl(); - verifyListener = new VerifyListener() { - public void verifyText(VerifyEvent event) { - Text text_ = (Text) getCellEditor().getControl(); - String oldText = text_.getText(); - // get the left string of the new input character - String leftText = oldText.substring(0, event.start); - // get the right string of the new input charactor - String rightText = oldText.substring(event.end, oldText - .length()); - - GC gc = new GC(text_); - Point size = gc.textExtent(leftText + event.text + rightText); - gc.dispose(); - if (size.x != 0) { - size = text_.computeSize(size.x, SWT.DEFAULT); - } - getCellEditor().getControl().setSize(size.x, size.y); - } - }; - text.addVerifyListener(verifyListener); - - // set the initial text, font, to the direct editor - String initialLabelText = label.getText(); - getCellEditor().setValue(initialLabelText); - IFigure figure = getEditPart().getFigure(); - final Font figureFont = figure.getFont(); - // take a copy of the font data for the label we are cell editing - FontData data = figureFont.getFontData()[0]; - Dimension fontSize = new Dimension(0, data.getHeight()); - label.translateToAbsolute(fontSize); - data.setHeight(fontSize.height); - - if (scaledFont != null && !scaledFont.isDisposed()) - { - scaledFont.dispose(); - } - scaledFont = new Font(figureFont.getDevice(), data); - - text.setFont(scaledFont); - text.selectAll(); - } - - /* - * (non-javadoc) - * - * @see org.eclipse.gef.tools.DirectEditManager#unhookListeners() - */ - protected void unhookListeners() { - super.unhookListeners(); - Text text = (Text) getCellEditor().getControl(); - text.removeVerifyListener(verifyListener); - verifyListener = null; - } - -} |