/**
 * Material para as aulas 34 a 36 do Curso Técnico em Informática
 * do Colégio Estadual do Paraná
 * Prof. André Aparecido da Silva 
 * Disponível no site http://www.oxnar.com.br/2017/3ati
 */
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
import javax.swing.event.*;

public class OxnarExemploJPopupMenu extends JFrame 
implements ActionListener, MouseListener,  ItemListener
{
		JPopupMenu Oxnar_Menu_Popup =  new JPopupMenu();
		JCheckBoxMenuItem MenuItem_Cor_Vermelhor, MenuItem_Cor_Amarelo, MenuItem_Cor_Azul, MenuItem_Cor_Verde; 
		JMenu Menu_Arquivo, Menu_Cores; 
		JMenuBar Barra_De_Menu = new JMenuBar();
		JPanel Painel_Central = new JPanel();
			 
		JMenuItem MenuItem_Novo, MenuItem_Executar, MenuItem_Sair;
		JLabel lbl_PlanoDeFundo;


    	public OxnarExemploJPopupMenu() 
    	{
    			setJMenuBar(Barra_De_Menu);
    			Barra_De_Menu.add(Menu_Arquivo = new JMenu("ARQUIVO"));
    			Barra_De_Menu.add(Menu_Cores = new JMenu("CORES"));
    			Menu_Cores.add(MenuItem_Cor_Vermelhor = new JCheckBoxMenuItem("VERMELHO"));
    		    Menu_Cores.add(MenuItem_Cor_Amarelo = new JCheckBoxMenuItem("AMARELO"));
    		    Menu_Cores.add(MenuItem_Cor_Azul = new JCheckBoxMenuItem("AZUL"));
    		    Menu_Cores.add(MenuItem_Cor_Verde = new JCheckBoxMenuItem("VERDE"));
    			getContentPane().setLayout(null);
    			getContentPane().add(lbl_PlanoDeFundo = new JLabel( new ImageIcon("bg5.jpg")));
    			 
    			 
    			Oxnar_Menu_Popup.add(MenuItem_Novo     = new JMenuItem("NOVO"));
    			Oxnar_Menu_Popup.add(MenuItem_Executar = new JMenuItem("EXECUTAR"));
    			Oxnar_Menu_Popup.addSeparator();
    			Oxnar_Menu_Popup.add(MenuItem_Sair     = new JMenuItem("SAIR DO SISTEMA")); 
				//Tornando os botões sensiveis aos eventos
				MenuItem_Novo.addActionListener(this);
				MenuItem_Executar.addActionListener(this);
				MenuItem_Sair.addActionListener(this);
				/////////////////////////////////
				MenuItem_Cor_Vermelhor.addItemListener(this);
				MenuItem_Cor_Amarelo.addItemListener(this);
				MenuItem_Cor_Azul.addItemListener(this);
				MenuItem_Cor_Verde.addItemListener(this);
				//Configurações da tela
				setTitle("OXNAR - EXEMPLO JPOPUPMENU");
				setSize(600, 500);
				setVisible(true);
				super.addMouseListener(this);
				getContentPane().add(Painel_Central);
				

    	}
    	/////////////////////////////////////////
    	public void itemStateChanged( ItemEvent e )
    	{
 
    		if(e.getItemSelectable()==MenuItem_Cor_Verde)
    		{
    			 	MenuItem_Cor_Azul.setState(false);
    				MenuItem_Cor_Vermelhor.setState(false);
					MenuItem_Cor_Amarelo.setState(false);
    				getContentPane().setBackground(Color.GREEN);
    		}  
    		if(e.getItemSelectable()==MenuItem_Cor_Azul)
    		{
    			 	MenuItem_Cor_Azul.setState(false);
    				MenuItem_Cor_Vermelhor.setState(false);
					MenuItem_Cor_Amarelo.setState(false);
    				getContentPane().setBackground(Color.BLUE);
    		}  
     		if(e.getItemSelectable()==MenuItem_Cor_Vermelhor)
    		{
    			 	MenuItem_Cor_Azul.setState(false);
    				MenuItem_Cor_Vermelhor.setState(false);
					MenuItem_Cor_Amarelo.setState(false);
					
    				getContentPane().setBackground(Color.red);
    		}     			
    		if(e.getItemSelectable()==MenuItem_Cor_Amarelo)
    		{
 					MenuItem_Cor_Verde.setState(false);
    			 	MenuItem_Cor_Azul.setState(false);
    				MenuItem_Cor_Vermelhor.setState(false);
					MenuItem_Cor_Amarelo.setState(true);

    				getContentPane().setBackground(Color.yellow);
    		}    		
    	
    		
    	}
    	/////////////////////////////////////////
    	public void mouseClicked(MouseEvent e)
    		{}
        public void mouseEntered(MouseEvent e)
        	{}
        public void mouseExited(MouseEvent e)
        	{}
        public void mouseReleased(MouseEvent e)
        	{}
        public void mousePressed(MouseEvent e)
        {
               if(e.getButton() == e.BUTTON3)
               			{Oxnar_Menu_Popup.show(this, e.getX(), e.getY());}
        }
        ////////////////////////////////////////////////
    	public static void main (String args [])
    			{OxnarExemploJPopupMenu Framex = new OxnarExemploJPopupMenu();}
    	public void actionPerformed (ActionEvent e)
    	{
    			if(e.getSource()==MenuItem_Sair)
    					{System.exit(0);}    		
    	}        
}