--- /dev/null
+/*******************************************************************************
+ * Copyright (c) 2000, 2004 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.phpdt.internal.ui.text;
+
+import org.eclipse.jface.text.IDocument;
+import org.eclipse.jface.text.IRegion;
+import org.eclipse.jface.text.TextPresentation;
+import org.eclipse.jface.text.presentation.PresentationReconciler;
+
+/**
+ * Presentation reconciler, adding functionality for operation without a viewer.
+ *
+ * @since 3.0
+ */
+public class JavaPresentationReconciler extends PresentationReconciler {
+
+ /** Last used document */
+ private IDocument fLastDocument;
+
+ /**
+ * Constructs a "repair description" for the given damage and returns this
+ * description as a text presentation.
+ * <p>
+ * NOTE: Should not be used if this reconciler is installed on a viewer.
+ * </p>
+ *
+ * @param damage
+ * the damage to be repaired
+ * @param document
+ * the document whose presentation must be repaired
+ * @return the presentation repair description as text presentation
+ */
+ public TextPresentation createRepairDescription(IRegion damage,
+ IDocument document) {
+ if (document != fLastDocument) {
+ setDocumentToDamagers(document);
+ setDocumentToRepairers(document);
+ }
+ return createPresentation(damage, document);
+ }
+}