package org.lucci.madhoc.gui.runtime;

import java.awt.Insets;

import javax.swing.JPanel;
import javax.swing.border.EtchedBorder;

import org.lucci.madhoc.gui.SimulationRuntimeListener;

/*
 * Created on May 8, 2005
 */

/**
 * @author luc.hogie
 */
public abstract class RuntimeComponentElement extends JPanel implements SimulationRuntimeListener
{
    private RuntimeComponent runtimeComponent;
    
    public RuntimeComponentElement()
    {
        setBorder(new EtchedBorder());
    }
    
    public RuntimeComponent getRuntimeComponent()
    {
        return runtimeComponent;
    }
    public void setRuntimeComponent(RuntimeComponent runtimeComponent)
    {
        if (runtimeComponent == null)
            throw new IllegalArgumentException();

        this.runtimeComponent = runtimeComponent;
        this.runtimeComponent.getRuntime().addSimulationRuntimeListener(this);
    }
    
    public Insets getInsets()
    {
        return new Insets(0, 10, 10, 0);
    }
}