Project

General

Profile

Download (2.18 KB) Statistics
| Branch: | Tag: | Revision:
1
/*******************************************************************************
2
 * Copyright (c) 2006, 2009 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

    
12
package org.eclipse.ui.navigator;
13

    
14
import org.eclipse.ui.IMemento;
15

    
16
/**
17
 * 
18
 * Provides initialization data for a content extension. Supplied in the
19
 * <code>init()</code> methods of various interfaces allowed by the framework.
20
 * 
21
 * @since 3.2
22
 * @noextend This interface is not intended to be extended by clients.
23
 * @noimplement This interface is not intended to be implemented by clients.
24
 * @see ICommonLabelProvider
25
 * @see ICommonContentProvider
26
 * 
27
 */
28
public interface ICommonContentExtensionSite {
29

    
30
	/**
31
	 * The extension state model allows an extension to isolate all of the
32
	 * dynamic state information that affects how it presents content or
33
	 * displays actions. Clients may use this state model to drive values from
34
	 * actions that will cause label or content providers to change their
35
	 * behavior.
36
	 * 
37
	 * @return The state model associated with this logical extension.
38
	 */
39
	IExtensionStateModel getExtensionStateModel();
40

    
41
	/**
42
	 * Advanced extensions may expose user-customizeable properties that affect
43
	 * the structure or behavior of the extension. Clients may use the given
44
	 * memento to restore or persist these settings between sessions.
45
	 * 
46
	 * @return A memento which can be used to restore or persist settings
47
	 *         between workbench sessions.
48
	 */
49
	IMemento getMemento(); 
50
  
51
	/**
52
	 * 
53
	 * @return The extension instance. Clients may use their extension
54
	 *         instance to get access to other components defined by the logical
55
	 *         extension.
56
	 */
57
	INavigatorContentExtension getExtension();
58
	
59
	/**
60
	 * 
61
	 * @return The content service associated with this extension site.
62
	 * @since 3.3
63
	 */
64
	INavigatorContentService getService();
65
}
(13-13/49)