package com.dragome.render.serverside.swing;
import java.awt.Component;
import java.awt.Container;
import com.dragome.templates.ContentImpl;
import com.dragome.templates.TemplateImpl;
import com.dragome.templates.interfaces.Template;
import com.dragome.templates.interfaces.TemplateLoadingStrategy;
public class SwingTemplateLoadingStrategy implements TemplateLoadingStrategy
{
public static Container mainPanel;
public void loadMainTemplate(String templateName)
{
}
public void hideContainer()
{
}
public void setupContainer()
{
}
public void showContainer()
{
}
public Template loadTemplate(String templateName, String aContainerId)
{
return null;
}
public Template loadTemplate(String templateName)
{
return null;
}
public Template getMainTemplate()
{
TemplateImpl parent= new TemplateImpl("main");
return createTemplate(mainPanel, parent);
}
public static Template createTemplate(Component component, Template parent)
{
Template template= parent;
if (component.getName() != null)
{
template= new TemplateImpl(component.getName());
template.setContent(new ContentImpl<Object>(component));
}
template.setFiringEvents(false);
if (component instanceof Container)
{
Container childContainer= (Container) component;
for (Component child : childContainer.getComponents())
{
Template createTemplate= createTemplate(child, template);
if (createTemplate != null)
template.addChild(createTemplate);
createTemplate.setFiringEvents(true);
}
}
return template;
}
public Template loadTemplateCloned(String templateName, String aContainerId)
{
return null;
}
}