1 /*******************************************************************************
2  * Copyright (c) 2005, 2015 IBM Corporation and others.
3  *
4  * This program and the accompanying materials
5  * are made available under the terms of the Eclipse Public License 2.0
6  * which accompanies this distribution, and is available at
7  * https://www.eclipse.org/legal/epl-2.0/
8  *
9  * SPDX-License-Identifier: EPL-2.0
10  *
11  * Contributors:
12  *     IBM Corporation - initial API and implementation
13  *******************************************************************************/
14 package org.eclipse.ui.views;
15 
16 import org.eclipse.core.runtime.IPath;
17 
18 /**
19  * Represents a categorization of views.
20  *
21  * <p>
22  * This interface is not intended to be implemented by clients.
23  * </p>
24  *
25  * @since 3.1
26  */
27 public interface IViewCategory {
28 
29 	/**
30 	 * Return the views contained within this category. Never <code>null</code>, but
31 	 * may be empty.
32 	 *
33 	 * @return the views contained within this category
34 	 */
getViews()35 	IViewDescriptor[] getViews();
36 
37 	/**
38 	 * Return the id of this category. Never <code>null</code>.
39 	 *
40 	 * @return the id
41 	 */
getId()42 	String getId();
43 
44 	/**
45 	 * Return the human readable name of this view category. Never
46 	 * <code>null</code>.
47 	 *
48 	 * @return the label
49 	 */
getLabel()50 	String getLabel();
51 
52 	/**
53 	 * Return this categories path. The segments of this path will correspond to
54 	 * category ids.
55 	 *
56 	 * @return the path
57 	 */
getPath()58 	IPath getPath();
59 }
60