From: Jochen L. <lue...@us...> - 2004-08-28 08:19:30
|
Update of /cvsroot/e-p-i-c/org.epic.perleditor/src/org/epic/perleditor/actions In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv25904/src/org/epic/perleditor/actions Modified Files: FormatSourceAction.java Log Message: Updated to work with popup menu Index: FormatSourceAction.java =================================================================== RCS file: /cvsroot/e-p-i-c/org.epic.perleditor/src/org/epic/perleditor/actions/FormatSourceAction.java,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- FormatSourceAction.java 25 Oct 2003 12:51:35 -0000 1.3 +++ FormatSourceAction.java 28 Aug 2004 08:19:21 -0000 1.4 @@ -1,48 +1,85 @@ package org.epic.perleditor.actions; import org.eclipse.jface.action.Action; +import org.eclipse.jface.action.IAction; import org.eclipse.jface.text.IDocument; import org.eclipse.jface.text.source.ISourceViewer; +import org.eclipse.jface.viewers.ISelection; +import org.eclipse.ui.IEditorPart; +import org.eclipse.ui.PlatformUI; import org.epic.perleditor.editors.util.SourceFormatter; import org.epic.perleditor.editors.PerlEditor; - -public class FormatSourceAction extends Action { +public class FormatSourceAction extends Action implements + org.eclipse.ui.IEditorActionDelegate { PerlEditor editor = null; - + /** * Constructs and updates the action. */ public FormatSourceAction() { super(); } - - + public void run() { - IDocument document = editor.getDocumentProvider().getDocument(editor.getEditorInput()); + if (editor == null) { + return; + } + + IDocument document = editor.getDocumentProvider().getDocument( + editor.getEditorInput()); ISourceViewer viewer = editor.getViewer(); - int topIndex = viewer.getTextWidget().getTopIndex(); + int topIndex = viewer.getTextWidget().getTopIndex(); int carretOffset = viewer.getTextWidget().getCaretOffset(); - String text = new SourceFormatter().doConversion(document.get()); - - if(text != null) { - document.set(text); - viewer.getTextWidget().setTopIndex(topIndex); - viewer.getTextWidget().setCaretOffset(carretOffset); - viewer.getTextWidget().redraw(); - // Re-validate Syntax - if(editor != null) { - editor.revalidateSyntax(true); - } - } + String text = new SourceFormatter().doConversion(document.get()); + + if (text != null) { + document.set(text); + viewer.getTextWidget().setTopIndex(topIndex); + viewer.getTextWidget().setCaretOffset(carretOffset); + viewer.getTextWidget().redraw(); + // Re-validate Syntax + if (editor != null) { + editor.revalidateSyntax(true); + } + } } - + public void setEditor(PerlEditor editor) { this.editor = editor; } - - - - -} + + /* + * (non-Javadoc) + * + * @see org.eclipse.ui.IEditorActionDelegate#setActiveEditor(org.eclipse.jface.action.IAction, + * org.eclipse.ui.IEditorPart) + */ + public void setActiveEditor(IAction action, IEditorPart targetEditor) { + if (targetEditor instanceof PerlEditor) { + setEditor((PerlEditor) targetEditor); + } + } + + /* + * (non-Javadoc) + * + * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction) + */ + public void run(IAction action) { + run(); + } + + /* + * (non-Javadoc) + * + * @see org.eclipse.ui.IActionDelegate#selectionChanged(org.eclipse.jface.action.IAction, + * org.eclipse.jface.viewers.ISelection) + */ + public void selectionChanged(IAction action, ISelection selection) { + // TODO Auto-generated method stub + + } + +} \ No newline at end of file |