1 /******************************************************************************* 2 * Copyright (c) 2005 IBM Corporation and others. 3 * All rights reserved. This program and the accompanying materials 4 * are made available under the terms of the Eclipse Public License v1.0 5 * which accompanies this distribution, and is available at 6 * http://www.eclipse.org/legal/epl-v10.html 7 * 8 * Contributors: 9 * IBM Corporation - initial API and implementation 10 *******************************************************************************/ 11 package org.eclipse.ui.preferences; 12 13 import org.eclipse.core.runtime.jobs.Job; 14 15 /** 16 * IWorkbenchPreferenceContainer is the class that specifies 17 * the workbench specific preferences support. 18 * @since 3.1 19 * 20 */ 21 public interface IWorkbenchPreferenceContainer { 22 23 /** 24 * Open the page specified in the org.eclipse.ui.preferencePage 25 * extension point with id pageId. Apply data to it 26 * when it is opened. 27 * @param preferencePageId String the id specified for a page in 28 * the plugin.xml of its defining plug-in. 29 * @param data The data to be applied to the page when it 30 * opens. 31 * @return boolean <code>true</code> if the page was 32 * opened successfully and data was applied. 33 */ 34 public boolean openPage(String preferencePageId, Object data); 35 36 /** 37 * Get the working copy manager in use by this preference 38 * page container. This IWorkingCopyManager will have 39 * IWorkingCopyManager#applyChanges() 40 * @return IWorkingCopyManager 41 */ 42 public IWorkingCopyManager getWorkingCopyManager(); 43 44 /** 45 * Register a job to be run after the container has been closed. 46 * @param job 47 */ 48 public void registerUpdateJob(Job job); 49 50 } 51