/* * Copyright (c) 2012, the Dart project authors. * * Licensed under the Eclipse Public License v1.0 (the "License"); you may not use this file except * in compliance with the License. You may obtain a copy of the License at * * http://www.eclipse.org/legal/epl-v10.html * * Unless required by applicable law or agreed to in writing, software distributed under the License * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express * or implied. See the License for the specific language governing permissions and limitations under * the License. */ package com.google.dart.tools.search.ui; import org.eclipse.jface.dialogs.DialogPage; import org.eclipse.jface.dialogs.IDialogPage; /** * Interface to be implemented by contributors to the extension point * <code>com.google.dart.tools.search.searchPages</code>. Represents a page in the search dialog. * Implemented typically subclass {@link DialogPage}. * <p> * The search dialog calls the {@link #performAction} method when the 'Search' button is pressed. * </p> * <p> * If the search page additionally implements {@link IReplacePage}, a 'Replace' button will be shown * in the search dialog. * </p> * * @see org.eclipse.jface.dialogs.IDialogPage * @see org.eclipse.jface.dialogs.DialogPage */ public interface ISearchPage extends IDialogPage { /** * Performs the action for this page. The search dialog calls this method when the Search button * is pressed. * * @return <code>true</code> if the dialog can be closed after execution */ public boolean performAction(); /** * Sets the container of this page. The search dialog calls this method to initialize this page. * Implementations may store the reference to the container. * * @param container the container for this page */ public void setContainer(ISearchPageContainer container); }