package gui;
import java.awt.BorderLayout;
import java.awt.Component;
import java.awt.LayoutManager;
import java.awt.Graphics;
import java.awt.Canvas;
import javax.swing.BorderFactory;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JSlider;
import javax.swing.JTable;
import javax.swing.SwingConstants;
import javax.swing.border.Border;
import javax.swing.event.ChangeEvent;
import javax.swing.event.ChangeListener;
import javax.swing.JTabbedPane;
import org.jdesktop.layout.GroupLayout;
import org.jdesktop.layout.LayoutStyle;
import org.rosuda.javaGD.*;
import dao.IViewport;
import dao.RCommand;
import dao.RObjectViewportTable;
import gui.ButtonTabComponent;
import helper.Constants;
import dao.RObject;
public class JRTablePanel extends JPanel {
private JButton jButtonCopy;
private JTabbedPane pane = new JTabbedPane();
public JRTablePanel(LayoutManager arg0, boolean arg1) {
super(arg0, arg1);
// TODO Auto-generated constructor stub
initComponents();
}
public JRTablePanel(LayoutManager arg0) {
super(arg0);
// TODO Auto-generated constructor stub
initComponents();
}
public JRTablePanel(boolean arg0) {
super(arg0);
// TODO Auto-generated constructor stub
initComponents();
}
public JRTablePanel() {
super();
// TODO Auto-generated constructor stub
initComponents();
}
private void initComponents() {
jButtonCopy = new JButton("Copy");
ImageIcon icon_ButtonCopy = new ImageIcon(
"./images/i24x24/Copy24.gif");
jButtonCopy.setIcon(icon_ButtonCopy);
// jButtonCopy.setHorizontalAlignment(SwingConstants.CENTER);
BorderLayout myLayout = new BorderLayout();
this.setLayout(myLayout);
// this.add(jButtonCopy, BorderLayout.NORTH);
this.add(pane, BorderLayout.CENTER);
// jButtonCopy.setText("Copy");
// this.add(jButtonCopy);
// pane.setPreferredSize(this.getSize());
// this.add(pane);
}
private void jButtonCopyActionPerformed(java.awt.event.ActionEvent evt) {}
public void addTable(RObjectViewportTable rObjVp) {
rObjVp.setShown(true);
pane.add(rObjVp.getName(), new DataTablePanel(rObjVp));
pane.setTabComponentAt(pane.getTabCount() - 1,
new ButtonTabComponent(pane));
}
public void showTable(RObjectViewportTable rObjVp) {
for (int i = 0; i < pane.getTabCount(); i++) {
if (rObjVp.getName().equals(pane.getTitleAt(i))) {
pane.setSelectedIndex(i);
return;
}
}
addTable(rObjVp); // not found, so we add it
}
public JTabbedPane getPane() {
return pane;
}
public boolean rmTable(IViewport ro) {
return rmTable(ro.getAttachedRObject().getRVarName());
}
public boolean rmTable(RObject ro) {
return rmTable(ro.getRVarName());
}
public boolean rmTable(String varname) {
for (int i = 0; i < pane.getTabCount(); i++) {
if (pane.getTitleAt(i).equals(varname)) {
((DataTablePanel) pane.getComponentAt(i)).getContent().setShown(
false);
pane.remove(i);
return true;
}
}
return false;
}
}