package net.sourceforge.squirrel_sql.client.session.mainpanel.overview;
import net.sourceforge.squirrel_sql.client.resources.SquirrelResources;
import net.sourceforge.squirrel_sql.client.session.mainpanel.overview.datascale.DataScaleTable;
import net.sourceforge.squirrel_sql.fw.util.StringManager;
import net.sourceforge.squirrel_sql.fw.util.StringManagerFactory;
import javax.swing.*;
import java.awt.*;
public class OverviewPanel extends JPanel
{
JScrollPane scrollPane = new JScrollPane();
private static final StringManager s_stringMgr = StringManagerFactory.getStringManager(OverviewPanel.class);
JButton btnPrev;
JButton btnNext;
JButton btnShowInTableWin;
JButton btnShowInTable;
JComboBox cboCallDepth;
JButton btnReport;
JSplitPane split;
JToggleButton btnCreateBarChart;
int standardDividerSize;
public OverviewPanel(SquirrelResources rsrc, JScrollPane pnlChartConfig)
{
setLayout(new GridBagLayout());
GridBagConstraints gbc;
gbc = new GridBagConstraints(0,0,1,1,0,0,GridBagConstraints.NORTHEAST, GridBagConstraints.HORIZONTAL, new Insets(5,5,5,5),0,0);
add(createButtonPanel(rsrc), gbc);
gbc = new GridBagConstraints(0,1,1,1,1,1,GridBagConstraints.NORTHEAST, GridBagConstraints.BOTH, new Insets(5,5,5,5),0,0);
split = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT);
add(split, gbc);
split.setLeftComponent(scrollPane);
split.setRightComponent(pnlChartConfig);
standardDividerSize = split.getDividerSize();
split.setDividerSize(0);
split.setDividerLocation(Integer.MAX_VALUE);
}
private JPanel createButtonPanel(SquirrelResources rsrc)
{
JPanel ret = new JPanel(new GridBagLayout());
GridBagConstraints gbc;
gbc = new GridBagConstraints(0,0,1,1,0,0,GridBagConstraints.NORTHEAST, GridBagConstraints.NONE, new Insets(0,0,0,5),0,0);
btnPrev = new JButton(rsrc.getIcon(SquirrelResources.IImageNames.PREV_SCALE));
btnPrev.setToolTipText(s_stringMgr.getString("OverwiewPanel.prevOverview"));
btnPrev.setEnabled(false);
ret.add(btnPrev, gbc);
gbc = new GridBagConstraints(1,0,1,1,0,0,GridBagConstraints.NORTHEAST, GridBagConstraints.NONE, new Insets(0,0,0,20),0,0);
btnNext = new JButton(rsrc.getIcon(SquirrelResources.IImageNames.NEXT_SCALE));
btnNext.setToolTipText(s_stringMgr.getString("OverwiewPanel.nextOverview"));
btnNext.setEnabled(false);
ret.add(btnNext, gbc);
gbc = new GridBagConstraints(2,0,1,1,0,0,GridBagConstraints.NORTHEAST, GridBagConstraints.NONE, new Insets(0,0,0,5),0,0);
btnShowInTable = new JButton(s_stringMgr.getString("OverwiewPanel.showInTable"));
btnShowInTable.setToolTipText(s_stringMgr.getString("OverwiewPanel.showInTableToolTip"));
ret.add(btnShowInTable, gbc);
gbc = new GridBagConstraints(3,0,1,1,0,0,GridBagConstraints.NORTHEAST, GridBagConstraints.NONE, new Insets(0,0,0,5),0,0);
btnShowInTableWin = new JButton(s_stringMgr.getString("OverwiewPanel.showTableInWin"));
btnShowInTableWin.setToolTipText(s_stringMgr.getString("OverwiewPanel.showTableInWinToolTip"));
ret.add(btnShowInTableWin, gbc);
gbc = new GridBagConstraints(4,0,1,1,0,0,GridBagConstraints.NORTHEAST, GridBagConstraints.NONE, new Insets(0,15,0,5),0,0);
ret.add(createMaxIntervalCountPanel(rsrc), gbc);
gbc = new GridBagConstraints(5,0,1,1,0,0,GridBagConstraints.NORTHEAST, GridBagConstraints.NONE, new Insets(0,10,0,0),0,0);
btnReport = new JButton(s_stringMgr.getString("OverwiewPanel.report"));
btnReport.setToolTipText(s_stringMgr.getString("OverwiewPanel.reportToolTip"));
ret.add(btnReport, gbc);
gbc = new GridBagConstraints(6,0,1,1,1,1,GridBagConstraints.NORTHEAST, GridBagConstraints.HORIZONTAL, new Insets(5,5,5,5),0,0);
ret.add(new JPanel(), gbc);
gbc = new GridBagConstraints(7,0,1,1,0,0,GridBagConstraints.NORTHEAST, GridBagConstraints.NONE, new Insets(0,15,0,0),0,0);
btnCreateBarChart = new JToggleButton(s_stringMgr.getString("OverwiewPanel.createBarChart"));
ret.add(btnCreateBarChart, gbc);
return ret;
}
private JPanel createMaxIntervalCountPanel(SquirrelResources rsrc)
{
JPanel ret = new JPanel(new GridBagLayout());
GridBagConstraints gbc;
gbc = new GridBagConstraints(0,0,1,1,0,0,GridBagConstraints.EAST, GridBagConstraints.NONE, new Insets(0,0,0,5),0,0);
ret.add(new JLabel(s_stringMgr.getString("OverwiewPanel.maxIntervalCount")), gbc);
gbc = new GridBagConstraints(1,0,1,1,0,0,GridBagConstraints.EAST, GridBagConstraints.NONE, new Insets(0,0,0,5),0,0);
cboCallDepth = new JComboBox();
ret.add(cboCallDepth, gbc);
return ret;
}
public void setTable(DataScaleTable dataScaleTable)
{
scrollPane.setViewportView(dataScaleTable);
}
}