/*******************************************************************************
* Copyright (c) 2007 Exadel, Inc. and Red Hat, Inc.
* Distributed under license by Red Hat, Inc. All rights reserved.
* This program is made available under the terms of the
* Eclipse Public License v1.0 which accompanies this distribution,
* and is available at http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* Exadel, Inc. and Red Hat, Inc. - initial API and implementation
******************************************************************************/
package org.jboss.tools.common.model.ui.views.palette.model;
import java.util.ArrayList;
import org.eclipse.swt.graphics.Image;
import org.jboss.tools.common.model.XModelObject;
public class PaletteGroup implements IPaletteNode {
private XModelObject xobject;
private String title;
private Image image;
private ArrayList<IPaletteNode> elems = new ArrayList<IPaletteNode>();
public PaletteGroup(XModelObject xobject) {
this(xobject, null, null);
}
public PaletteGroup(XModelObject xobject, String title) {
this(xobject, title, null);
}
public PaletteGroup(XModelObject xobject, String title, Image image) {
this.xobject = xobject;
this.title = title;
this.image = image;
}
public String getTitle() {
return title;
}
public String getDescription() {
return null;
}
public Image getImage() {
return image;
}
public IPaletteNode[] getChildren() {
if (elems.size() > 0) {
return (IPaletteNode[])elems.toArray(new IPaletteNode[elems.size()]);
} else {
return null;
}
}
public XModelObject getXModelObject() {
return xobject;
}
public void setImage(Image image) {
this.image = image;
}
public IPaletteNode addChild(IPaletteNode node) {
elems.add(node);
return node;
}
public void clear() {
elems.clear();
}
}