/**
* TitledTable.java
* Created On 2006, Feb 25, 2006 3:25:48 PM
* @author E. Rajasekar
*/
package app.astrosoft.ui.comp;
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Dimension;
import javax.swing.BorderFactory;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.border.Border;
import app.astrosoft.ui.table.AstrosoftTable;
import app.astrosoft.ui.util.UIConsts;
import app.astrosoft.ui.util.UIUtil;
public class TitledTable extends JPanel {
private static final Color bgClr = Color.WHITE;
private static final int titleHeight = 40;
private JScrollPane scrollPane;
private AstrosoftTable table;
private Border scrollPaneBorder;
public TitledTable() {
setLayout(new BorderLayout());
}
public TitledTable(JLabel title, AstrosoftTable table, Dimension tableSize, JPanel footer){
this();
this.table = table;
JPanel labelPanel = new JPanel();
//JPanel tablePanel = new JPanel();
scrollPane = new JScrollPane(table);
scrollPane.setPreferredSize(tableSize);
/*tablePanel.setLayout(new BorderLayout());
tablePanel.setPreferredSize(tableSize);
tablePanel.add(table.getTableHeader(), BorderLayout.PAGE_START);
tablePanel.add(table, BorderLayout.PAGE_END);*/
if (title != null){
labelPanel.add(title);
labelPanel.setPreferredSize(new Dimension(tableSize.width, titleHeight));
add(labelPanel, BorderLayout.PAGE_START);
}
add(scrollPane, BorderLayout.CENTER);
if (footer != null){
footer.setBackground(UIConsts.THEME_CLR);
footer.setBorder(BorderFactory.createMatteBorder(
0, 1, 1, 1, Color.GRAY));
add(footer, BorderLayout.PAGE_END);
}
scrollPaneBorder = scrollPane.getBorder();
//setBorder(UIConsts.getTitleBorder("abc"));
}
public TitledTable(AstrosoftTable table, Dimension tableSize){
this(null, table, tableSize, null);
}
public TitledTable(JLabel title , AstrosoftTable table, Dimension tableSize) {
this(title,table,tableSize,null);
}
public void setScrollPaneSize(Dimension size){
scrollPane.setPreferredSize(size);
}
public void removeScrollPaneBorder(){
scrollPane.setBorder(BorderFactory.createEmptyBorder());
table.addBorder();
}
public void addScrollPaneBorder(){
scrollPane.setBorder(scrollPaneBorder);
}
}