01: /*******************************************************************************
02: * Copyright (c) 2000, 2005 IBM Corporation and others.
03: * All rights reserved. This program and the accompanying materials
04: * are made available under the terms of the Eclipse Public License v1.0
05: * which accompanies this distribution, and is available at
06: * http://www.eclipse.org/legal/epl-v10.html
07: *
08: * Contributors:
09: * IBM Corporation - initial API and implementation
10: *******************************************************************************/package org.eclipse.jface.text.reconciler;
11:
12: import org.eclipse.core.runtime.IProgressMonitor;
13:
14: /**
15: * Extends {@link org.eclipse.jface.text.reconciler.IReconcilingStrategy}
16: * with the following functions:
17: * <ul>
18: * <li>usage of a progress monitor</li>
19: * <li>initial reconciling step: if a reconciler runs as periodic activity in the background, this
20: * methods offers the reconciler a chance for initializing its strategies and achieving a
21: * reconciled state before the periodic activity starts.</li>
22: * </ul>
23: *
24: * @since 2.0
25: */
26: public interface IReconcilingStrategyExtension {
27:
28: /**
29: * Tells this reconciling strategy with which progress monitor
30: * it will work. This method will be called before any other
31: * method and can be called multiple times.
32: *
33: * @param monitor the progress monitor with which this strategy will work
34: */
35: void setProgressMonitor(IProgressMonitor monitor);
36:
37: /**
38: * Called only once in the life time of this reconciling strategy.
39: */
40: void initialReconcile();
41: }
|