+++ /dev/null
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package net.sourceforge.phpeclipse.phpeditor;
-
-
-import org.eclipse.swt.widgets.Composite;
-
-import org.eclipse.jface.text.information.IInformationPresenter;
-import org.eclipse.jface.text.source.IOverviewRuler;
-import org.eclipse.jface.text.source.IVerticalRuler;
-import org.eclipse.jface.text.source.SourceViewer;
-import org.eclipse.jface.text.source.SourceViewerConfiguration;
-
-//import net.sourceforge.phpdt.ui.text.JavaSourceViewerConfiguration;
-
-
-
-public class JavaSourceViewer extends SourceViewer {
-
- /**
- * Text operation code for requesting the outline for the current input.
- */
- public static final int SHOW_OUTLINE= 51;
-
- /**
- * Text operation code for requesting the outline for the element at the current position.
- */
- public static final int OPEN_STRUCTURE= 52;
-
-
- private IInformationPresenter fOutlinePresenter;
- private IInformationPresenter fStructurePresenter;
-
- public JavaSourceViewer(Composite parent, IVerticalRuler verticalRuler, IOverviewRuler overviewRuler, boolean showAnnotationsOverview, int styles) {
- super(parent, verticalRuler, overviewRuler, showAnnotationsOverview, styles);
- }
-
- /*
- * @see ITextOperationTarget#doOperation(int)
- */
- public void doOperation(int operation) {
- if (getTextWidget() == null)
- return;
-
- switch (operation) {
- case SHOW_OUTLINE:
- fOutlinePresenter.showInformation();
- return;
- case OPEN_STRUCTURE:
- fStructurePresenter.showInformation();
- return;
- }
-
- super.doOperation(operation);
- }
-
- /*
- * @see ITextOperationTarget#canDoOperation(int)
- */
- public boolean canDoOperation(int operation) {
- if (operation == SHOW_OUTLINE)
- return fOutlinePresenter != null;
- if (operation == OPEN_STRUCTURE)
- return fStructurePresenter != null;
- return super.canDoOperation(operation);
- }
-
- /*
- * @see ISourceViewer#configure(SourceViewerConfiguration)
- */
- public void configure(SourceViewerConfiguration configuration) {
- super.configure(configuration);
- if (configuration instanceof PHPSourceViewerConfiguration) {
- fOutlinePresenter= ((PHPSourceViewerConfiguration)configuration).getOutlinePresenter(this, false);
- fOutlinePresenter.install(this);
- }
- if (configuration instanceof PHPSourceViewerConfiguration) {
- fStructurePresenter= ((PHPSourceViewerConfiguration)configuration).getOutlinePresenter(this, true);
- fStructurePresenter.install(this);
- }
- }
-
- /*
- * @see TextViewer#handleDispose()
- */
- protected void handleDispose() {
- if (fOutlinePresenter != null) {
- fOutlinePresenter.uninstall();
- fOutlinePresenter= null;
- }
- if (fStructurePresenter != null) {
- fStructurePresenter.uninstall();
- fStructurePresenter= null;
- }
- super.handleDispose();
- }
-}