/**
 * @(#)AnswerReport.java
 *
 *
 * @author 
 * @version 1.00 2012/1/12
 */



import java.awt.event.*;
import java.awt.*;
import javax.swing.*;
  import java.awt.BorderLayout;
import javax.swing.*;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import java.util.ArrayList;
import javax.swing.table.DefaultTableModel; 
import javax.swing.table.TableColumn; 
import javax.swing.table.JTableHeader; 
import javax.swing.table.DefaultTableCellRenderer;
import javax.swing.table.TableCellRenderer;

public class select_multible extends DefaultTableCellRenderer implements ActionListener{
  public static  boolean visable=false;	
  static JFrame frame = new JFrame("select qustion"); 
    public  static javax.swing.JTable table = new JTable(); 
    static  DefaultTableModel jdtm=new DefaultTableModel();
   Font font= new Font("Aparajita", Font.BOLD + Font.ITALIC,20);
  JButton detail=new JButton(new ImageIcon(getClass().getResource("image/ok.jpg")) );
  
  public static ArrayList  <JCheckBox> selction= new ArrayList<JCheckBox>();
  
       public select_multible() {
       	
       
       	
                detail.addActionListener(this);
                table.setModel(jdtm);
               
                jdtm.addColumn("Qustion");
                jdtm.addColumn("Answer");
                 jdtm.addColumn(" level ");
                 jdtm.addColumn("Time");
                 jdtm.addColumn("Selected ?");
                 
                    
                      table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
                   	
                    	TableColumn col = table.getColumnModel().getColumn(0);
	                     	int width = 500;
	                     	col.setPreferredWidth(width);
	                     	
	                     	TableColumn col2 = table.getColumnModel().getColumn(1);
	                     	int width2 = 350;
	                     	col2.setPreferredWidth(width2);
	                     	
	                     		TableColumn col3= table.getColumnModel().getColumn(2);
	                     	int width3 = 50;
	                     	col3.setPreferredWidth(width3);
	                     	
	                     		TableColumn col4 = table.getColumnModel().getColumn(3);
	                     	int width4 = 50;
	                     	col4.setPreferredWidth(width4);
	                     	
                    
                  table.getTableHeader().setFont(font);
                     table.getTableHeader().setBackground(new Color(185,185,255));
                    
                    for(int j=0;j<5;j++){
                    	
                    	TableColumn	tcol = table.getColumnModel().getColumn(j);
	                     	tcol.setCellRenderer(new CustomTableCellRenderer());
                    }
                    
                       for(int g=0;g<Connect.qustion.size();g++){
                       	
                       		JCheckBox C1 = new JCheckBox("");
                       		selction.add(C1);
                       }
                    
                 table.getColumnModel().getColumn(4).setCellRenderer(new CheckSameh());
  
           
           for(int i=0;i<Connect.qustion.size();i++){
                            	
                                
                                String qustion=""+Connect.qustion.get(i);
                                
                                String answer=""+Connect.Answer.get(i) ;
                              
                                String level=""+Connect.level.get(i);
                                
                                String time=""+Connect.time.get(i);
                                
                                Object obj[] = {qustion,answer,level,time,true};
                                jdtm.addRow(obj);
                                
                                Object o = new Object();

                                
                        }
                                   
                    
        // Make the frame
        
        frame.setSize(1150,700);
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);   // Action when window closes

               // Make table
       
        JScrollPane scrollPane = new JScrollPane(table);        // Make scrollpane with table

        // Add scrollpane with table to the frame and show the frame to user
        frame.getContentPane().add(scrollPane, BorderLayout.CENTER);
        JPanel s=new JPanel(new BorderLayout(10,10));
        s.add(new JLabel(new ImageIcon(getClass().getResource("image/user_header.jpg")) ), BorderLayout.NORTH);
        frame.getContentPane().add(s, BorderLayout.NORTH);
         frame.getContentPane().add(new JLabel("               ") , BorderLayout.EAST);
          frame.getContentPane().add(new JLabel("              ") , BorderLayout.WEST);
           JPanel s2=new JPanel(new FlowLayout(FlowLayout.CENTER));s2.add(detail);
           frame.getContentPane().add(s2 , BorderLayout.SOUTH);
          frame.setVisible(true);
    

   
                       
                      
                             
         }               
       
          public static  void setvisable(boolean visb){
    	visable=visb;
    	frame.setVisible(visb);
    }
        
  	public class CustomTableCellRenderer extends DefaultTableCellRenderer{
		public Component getTableCellRendererComponent (JTable table, Object obj, boolean isSelected, boolean hasFocus, int row, int column) {
			Component cell = super.getTableCellRendererComponent(table, obj, isSelected, hasFocus, row, column);
			if (isSelected) {
				cell.setBackground(Color.green);
			} 
			else {
				if (row % 2 == 0) {
					cell.setBackground(new Color(160,185,255));
				}
				else {
					cell.setBackground(Color.white);
				}
			}
			return cell;
		}
	}
	
	  class CheckSameh extends JCheckBox implements TableCellRenderer
    {
        public CheckSameh()
        {
       
             setBackground(Color.WHITE);
            setHorizontalAlignment(CENTER);
        }

        public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected
                , boolean hasFocus, int row, int column) {
            setSelected(((Boolean)value).booleanValue());
            return this;
        }
    }

	
	
	 public void actionPerformed(ActionEvent e) {
   
   if(e.getSource()==detail){
   	frame.setVisible(false);
   	Log_in.a.setVisible(true);
   }
   
	 }
	 
	 // public static void main (String[] args) {
	  	
	 // 	Connect b=new Connect();
	 // 	select_multible g=new select_multible();
//} 
 
}