package com.calipso.reportgenerator.userinterface.dinamicchart;
import com.calipso.reportgenerator.userinterface.ChartCustomizer;
import com.calipso.reportgenerator.userinterface.IReportFrame;
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import java.awt.event.ItemListener;
import java.awt.event.ItemEvent;
import java.util.Vector;
/**
*
* User: soliveri
* Date: Aug 7, 2003
* Time: 5:42:31 PM
*
*/
public class ChartPivotTableSelection extends JPanel implements ActionListener, ItemListener{
private JComboBox cbChartType;
private JRadioButton btRow, btColumn;
private int currentChartType;
private ChartPivotTableManager manager = ChartPivotTableManager.getManager();
private JButton btChartCustomizer;
private ChartCustomizer chartCustomizer;
private IReportFrame owner;
public ChartPivotTableSelection(IReportFrame ownerPa) {
owner = ownerPa;
initialize();
}
private void initialize() {
setLayout(new BorderLayout());
cbChartType = new JComboBox(getChartTypesDescription());
cbChartType.setFont(new Font("Arial", Font.ROMAN_BASELINE, 11));
cbChartType.addItemListener(this);
ButtonGroup btGroup = new ButtonGroup();
btRow = new JRadioButton(com.calipso.reportgenerator.common.LanguageTraslator.traslate("110"));
btRow.setFont(new Font("Arial", Font.ROMAN_BASELINE, 11));
btRow.addActionListener(this);
btRow.setSelected(true);
btColumn = new JRadioButton(com.calipso.reportgenerator.common.LanguageTraslator.traslate("111"));
btColumn.setFont(new Font("Arial", Font.ROMAN_BASELINE, 11));
btColumn.addActionListener(this);
btGroup.add(btRow);
btGroup.add(btColumn);
JPanel southPanel = new JPanel(new FlowLayout());
southPanel.add(btRow);
southPanel.add(btColumn);
btChartCustomizer = new JButton(com.calipso.reportgenerator.common.LanguageTraslator.traslate("239"));
btChartCustomizer.addActionListener(this);
add(cbChartType, BorderLayout.CENTER);
add(southPanel, BorderLayout.SOUTH);
add(btChartCustomizer,BorderLayout.EAST);
}
private Vector getChartTypesDescription() {
Vector chartTypes = new Vector();
chartTypes.add(com.calipso.reportgenerator.common.LanguageTraslator.traslate("244"));
chartTypes.add(com.calipso.reportgenerator.common.LanguageTraslator.traslate("115"));
chartTypes.add(com.calipso.reportgenerator.common.LanguageTraslator.traslate("245"));
chartTypes.add(com.calipso.reportgenerator.common.LanguageTraslator.traslate("242"));
chartTypes.add(com.calipso.reportgenerator.common.LanguageTraslator.traslate("243"));
chartTypes.add(com.calipso.reportgenerator.common.LanguageTraslator.traslate("114"));
return chartTypes;
}
public boolean getCurrentValue() {
if(btRow.isSelected()) {
return false;
}
return true;
}
public int getCurrentChartType() {
return currentChartType;
}
public void actionPerformed(ActionEvent e) {
if(e.getSource() == btRow) {
manager.chartTypeChanged(currentChartType, false);
} else if (e.getSource() == btColumn) {
manager.chartTypeChanged(currentChartType, true);
}
if(e.getSource() == btChartCustomizer){
getChartCustomizer().setVisible(true);
manager.chartCustomizerChanged(currentChartType, (!btRow.isSelected()));
}
}
public void itemStateChanged(ItemEvent e) {
if(e.getSource() == cbChartType) {
currentChartType = cbChartType.getSelectedIndex();
manager.chartChanged(currentChartType, getCurrentValue());
}
}
public ChartCustomizer getChartCustomizer() {
if (chartCustomizer == null){
chartCustomizer = new ChartCustomizer(owner.owner(), true);
}
return chartCustomizer;
}
}
|