1 package com.calipso.reportgenerator.userinterface.dinamicchart; 2 3 import com.calipso.reportgenerator.userinterface.ChartCustomizer; 4 import com.calipso.reportgenerator.userinterface.IReportFrame; 5 6 import javax.swing.*; 7 import java.awt.*; 8 import java.awt.event.ActionListener ; 9 import java.awt.event.ActionEvent ; 10 import java.awt.event.ItemListener ; 11 import java.awt.event.ItemEvent ; 12 import java.util.Vector ; 13 14 21 22 public class ChartPivotTableSelection extends JPanel implements ActionListener , ItemListener { 23 24 private JComboBox cbChartType; 25 private JRadioButton btRow, btColumn; 26 private int currentChartType; 27 private ChartPivotTableManager manager = ChartPivotTableManager.getManager(); 28 private JButton btChartCustomizer; 29 private ChartCustomizer chartCustomizer; 30 private IReportFrame owner; 31 32 public ChartPivotTableSelection(IReportFrame ownerPa) { 33 owner = ownerPa; 34 initialize(); 35 } 36 37 private void initialize() { 38 setLayout(new BorderLayout()); 39 cbChartType = new JComboBox(getChartTypesDescription()); 40 cbChartType.setFont(new Font("Arial", Font.ROMAN_BASELINE, 11)); 41 cbChartType.addItemListener(this); 42 ButtonGroup btGroup = new ButtonGroup(); 43 btRow = new JRadioButton(com.calipso.reportgenerator.common.LanguageTraslator.traslate("110")); 44 btRow.setFont(new Font("Arial", Font.ROMAN_BASELINE, 11)); 45 btRow.addActionListener(this); 46 btRow.setSelected(true); 47 btColumn = new JRadioButton(com.calipso.reportgenerator.common.LanguageTraslator.traslate("111")); 48 btColumn.setFont(new Font("Arial", Font.ROMAN_BASELINE, 11)); 49 btColumn.addActionListener(this); 50 btGroup.add(btRow); 51 btGroup.add(btColumn); 52 JPanel southPanel = new JPanel(new FlowLayout()); 53 southPanel.add(btRow); 54 southPanel.add(btColumn); 55 56 btChartCustomizer = new JButton(com.calipso.reportgenerator.common.LanguageTraslator.traslate("239")); 57 btChartCustomizer.addActionListener(this); 58 59 add(cbChartType, BorderLayout.CENTER); 60 add(southPanel, BorderLayout.SOUTH); 61 add(btChartCustomizer,BorderLayout.EAST); 62 } 63 64 private Vector getChartTypesDescription() { 65 Vector chartTypes = new Vector (); 66 chartTypes.add(com.calipso.reportgenerator.common.LanguageTraslator.traslate("244")); 67 chartTypes.add(com.calipso.reportgenerator.common.LanguageTraslator.traslate("115")); 68 chartTypes.add(com.calipso.reportgenerator.common.LanguageTraslator.traslate("245")); 69 chartTypes.add(com.calipso.reportgenerator.common.LanguageTraslator.traslate("242")); 70 chartTypes.add(com.calipso.reportgenerator.common.LanguageTraslator.traslate("243")); 71 chartTypes.add(com.calipso.reportgenerator.common.LanguageTraslator.traslate("114")); 72 return chartTypes; 73 } 74 75 public boolean getCurrentValue() { 76 if(btRow.isSelected()) { 77 return false; 78 } 79 return true; 80 } 81 82 public int getCurrentChartType() { 83 return currentChartType; 84 } 85 86 public void actionPerformed(ActionEvent e) { 87 if(e.getSource() == btRow) { 88 manager.chartTypeChanged(currentChartType, false); 89 } else if (e.getSource() == btColumn) { 90 manager.chartTypeChanged(currentChartType, true); 91 } 92 if(e.getSource() == btChartCustomizer){ 93 getChartCustomizer().setVisible(true); 94 manager.chartCustomizerChanged(currentChartType, (!btRow.isSelected())); 95 } 96 } 97 98 public void itemStateChanged(ItemEvent e) { 99 if(e.getSource() == cbChartType) { 100 currentChartType = cbChartType.getSelectedIndex(); 101 manager.chartChanged(currentChartType, getCurrentValue()); 102 } 103 } 104 105 public ChartCustomizer getChartCustomizer() { 106 if (chartCustomizer == null){ 107 chartCustomizer = new ChartCustomizer(owner.owner(), true); 108 } 109 return chartCustomizer; 110 } 111 } 112 | Popular Tags |