--- /dev/null
+package net.sourceforge.phpeclipse.phpeditor;
+
+/**********************************************************************
+Copyright (c) 2000, 2002 IBM Corp. 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 implementation
+ Klaus Hartlage - www.eclipseproject.de
+**********************************************************************/
+
+import org.eclipse.jface.viewers.TreeViewer;
+import org.eclipse.swt.widgets.Control;
+import org.eclipse.ui.views.contentoutline.ContentOutlinePage;
+
+/**
+ * An abstraction of a content outline page
+ */
+public abstract class AbstractContentOutlinePage extends ContentOutlinePage {
+
+ protected Object fInput;
+ /**
+ * Sets the input of the outline page
+ */
+ public void setInput(Object input) {
+ fInput = input;
+ update();
+ }
+
+ /**
+ * Updates the outline page.
+ */
+ public void update() {
+ TreeViewer viewer = getTreeViewer();
+
+ if (viewer != null) {
+ Control control = viewer.getControl();
+ if (control != null && !control.isDisposed()) {
+ control.setRedraw(false);
+ viewer.setInput(fInput);
+ viewer.expandAll();
+ control.setRedraw(true);
+ }
+ }
+ }
+
+
+}
import java.util.List;
import java.util.TreeSet;
-import net.sourceforge.phpdt.internal.compiler.parser.*;
+import net.sourceforge.phpdt.internal.compiler.parser.Outlineable;
+import net.sourceforge.phpdt.internal.compiler.parser.OutlineableWithChildren;
+import net.sourceforge.phpdt.internal.compiler.parser.PHPOutlineInfo;
+import net.sourceforge.phpdt.internal.compiler.parser.PHPSegment;
+import net.sourceforge.phpdt.internal.compiler.parser.PHPSegmentWithChildren;
import net.sourceforge.phpdt.internal.ui.viewsupport.ImageDescriptorRegistry;
import net.sourceforge.phpeclipse.PHPeclipsePlugin;
import org.eclipse.jface.viewers.Viewer;
import org.eclipse.swt.graphics.Image;
import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
import org.eclipse.ui.texteditor.IDocumentProvider;
import org.eclipse.ui.texteditor.ITextEditor;
-import org.eclipse.ui.views.contentoutline.ContentOutlinePage;
-import test.PHPParserSuperclass;
+
import test.PHPParserManager;
+import test.PHPParserSuperclass;
/**
* A content outline page which always represents the functions of the
* connected PHPEditor.
*/
-public class PHPContentOutlinePage extends ContentOutlinePage {
+public class PHPContentOutlinePage extends AbstractContentOutlinePage {
private static final String ERROR = "error"; //$NON-NLS-1$
private static final String WARNING = "warning"; //$NON-NLS-1$
}
}
- protected Object fInput;
protected IDocumentProvider fDocumentProvider;
protected ITextEditor fTextEditor;
protected PHPEditor fEditor;
- protected ContentProvider contentProvider;
+ protected ContentProvider fContentProvider;
/**
* Creates a content outline page using the given provider and the given editor.
*/
public PHPContentOutlinePage(IDocumentProvider provider, ITextEditor editor) {
super();
- contentProvider = null;
+ fContentProvider = null;
fDocumentProvider = provider;
fTextEditor = editor;
if (editor instanceof PHPEditor)
TreeViewer viewer = getTreeViewer();
- contentProvider = new ContentProvider();
- viewer.setContentProvider(contentProvider);
+ fContentProvider = new ContentProvider();
+ viewer.setContentProvider(fContentProvider);
viewer.setLabelProvider(new OutlineLabelProvider());
viewer.addSelectionChangedListener(this);
}
}
}
-
- /**
- * Sets the input of the outline page
- */
- public void setInput(Object input) {
- fInput = input;
- update();
- }
-
- /**
- * Updates the outline page.
- */
- public void update() {
- TreeViewer viewer = getTreeViewer();
-
- if (viewer != null) {
- Control control = viewer.getControl();
- if (control != null && !control.isDisposed()) {
- control.setRedraw(false);
- viewer.setInput(fInput);
- viewer.expandAll();
- control.setRedraw(true);
- }
- }
- }
public Object[] getVariables() {
- if (contentProvider != null) {
- return contentProvider.getVariables();
+ if (fContentProvider != null) {
+ return fContentProvider.getVariables();
}
return null;
}
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.ui.IEditorInput;
-import org.eclipse.ui.IViewPart;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.PartInitException;
import org.eclipse.ui.actions.ActionContext;
import org.eclipse.ui.actions.ActionGroup;
import org.eclipse.ui.texteditor.ContentAssistAction;
// protected PHPActionGroup fActionGroups;
/** The outline page */
- private PHPContentOutlinePage fOutlinePage;
+ private AbstractContentOutlinePage fOutlinePage;
// protected PHPSyntaxParserThread fValidationThread = null;
return fActionGroups;
}
- public PHPContentOutlinePage getfOutlinePage() {
+ public AbstractContentOutlinePage getfOutlinePage() {
return fOutlinePage;
}
import net.sourceforge.phpdt.internal.ui.text.template.IdentifierEngine;
import net.sourceforge.phpdt.internal.ui.text.template.TemplateEngine;
import net.sourceforge.phpeclipse.PHPeclipsePlugin;
+import net.sourceforge.phpeclipse.phpeditor.AbstractContentOutlinePage;
import net.sourceforge.phpeclipse.phpeditor.PHPContentOutlinePage;
import net.sourceforge.phpeclipse.phpeditor.PHPEditor;
fComparator = new PHPCompletionProposalComparator();
}
-
+
/**
* Tells this processor to order the proposals alphabetically.
*
public void orderProposalsAlphabetically(boolean order) {
fComparator.setOrderAlphabetically(order);
}
-
+
/**
* Sets this processor's set of characters triggering the activation of the
* completion proposal computation.
* @param activationSet the activation set
*/
public void setCompletionProposalAutoActivationCharacters(char[] activationSet) {
- fProposalAutoActivationSet= activationSet;
+ fProposalAutoActivationSet = activationSet;
}
/* (non-Javadoc)
* Method declared on IContentAssistProcessor
if (offset > 0) {
PHPEditor editor = null;
- PHPContentOutlinePage outlinePage = null;
+ AbstractContentOutlinePage outlinePage = null;
IEditorPart targetEditor = PHPeclipsePlugin.getActiveWorkbenchWindow().getActivePage().getActiveEditor();
if (targetEditor != null && (targetEditor instanceof PHPEditor)) {
editor = (PHPEditor) targetEditor;
outlinePage = editor.getfOutlinePage();
- identifiers = outlinePage.getVariables();
+ if (outlinePage instanceof PHPContentOutlinePage) {
+ identifiers = ((PHPContentOutlinePage) outlinePage).getVariables();
+ }
}
}
*/
public char[] getCompletionProposalAutoActivationCharacters() {
return fProposalAutoActivationSet;
-// return null; // new char[] { '$' };
+ // return null; // new char[] { '$' };
}
/* (non-Javadoc)