1 /**********************************************************************
2 * Copyright (c) 2003 IBM Corporation and others.
3 * All rights reserved. This program and the accompanying materials
4 * are made available under the terms of the Common Public License v1.0
5 * which accompanies this distribution, and is available at
6 * http://www.eclipse.org/legal/cpl-v10.html
9 * IBM - Initial API and implementation
10 **********************************************************************/
11 package net.sourceforge.phpeclipse.wiki.ui.internal;
13 import java.util.ArrayList;
14 import java.util.Iterator;
15 import java.util.List;
17 import net.sourceforge.phpeclipse.wiki.editor.WikiEditorPlugin;
18 import net.sourceforge.phpeclipse.wiki.internal.IConfiguration;
20 import org.eclipse.jface.viewers.IStructuredContentProvider;
21 import org.eclipse.jface.viewers.Viewer;
23 * Configuration content provider.
25 public class ConfigurationContentProvider implements IStructuredContentProvider {
27 * ConfigurationContentProvider constructor comment.
29 public ConfigurationContentProvider() {
34 * Disposes of this content provider.
35 * This is called by the viewer when it is disposed.
37 public void dispose() { }
40 * Returns the elements to display in the viewer
41 * when its input is set to the given element.
42 * These elements can be presented as rows in a table, items in a list, etc.
43 * The result is not modified by the viewer.
45 * @param inputElement the input element
46 * @return the array of elements to display in the viewer
48 public Object[] getElements(Object inputElement) {
49 List list = new ArrayList();
50 Iterator iterator = WikiEditorPlugin.getConfigurations().iterator();
51 while (iterator.hasNext()) {
52 IConfiguration monitor = (IConfiguration) iterator.next();
55 return list.toArray();
59 * Notifies this content provider that the given viewer's input
60 * has been switched to a different element.
62 * A typical use for this method is registering the content provider as a listener
63 * to changes on the new input (using model-specific means), and deregistering the viewer
64 * from the old input. In response to these change notifications, the content provider
65 * propagates the changes to the viewer.
68 * @param viewer the viewer
69 * @param oldInput the old input element, or <code>null</code> if the viewer
70 * did not previously have an input
71 * @param newInput the new input element, or <code>null</code> if the viewer
72 * does not have an input
74 public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {}