package org.dgpf.gui;
import javax.swing.JScrollPane;
import javax.swing.JTabbedPane;
import javax.swing.JTextPane;
import org.dgpf.gui.tabs.ChartTab;
import org.dgpf.gui.tabs.PropertyTab;
import org.sfc.gui.text.DocumentWriter;
import org.sfc.io.MultiplexingWriter;
/**
* DGPF TabbedPane
*/
public class TabbedPane extends JTabbedPane
{
/**
* serial version UID.
*/
private static final long serialVersionUID = 1L;
/**
* @param p_tab The property tab.
*/
public void addPropertySetTab(PropertyTab p_tab)
{
addTab(p_tab.getTabName(), p_tab);
}
/**
*@param p_tab The chart tab.
*/
public void addAndShowTab(ChartTab p_tab)
{
addTab(p_tab.getTabName(), p_tab);
setSelectedIndex(getTabCount() - 1);
}
/**
* Addes a textpane
*
* @return text pane.
*/
public JTextPane addTextTab()
{
JTextPane l_logPane = new JTextPane();
JScrollPane l_logAreaPane = new JScrollPane(l_logPane);
l_logPane.setEditable(false);
add("PropertySet", l_logAreaPane);
return l_logPane;
}
/**
* Starts the logging.
*
* @param p_mDefaultWriter
* writer.
* @param p_mCSVWriter
* writer.
*/
public void startLogging(MultiplexingWriter p_mDefaultWriter,
MultiplexingWriter p_mCSVWriter)
{
JTextPane defaultLogPane = addTextTab();
p_mDefaultWriter.add(new DocumentWriter(defaultLogPane, 20000));
}
}