// Path: src/principal/InitializerGUI.java
// public class InitializerGUI {
// 	/**
// 	 * 
// 	 */
// 	private InitializerGUI() {
// 
// 	}
// 
// 	private static WindowAdapter windowState = null;
// 
// 	/**
// 	 * @return the windowState
// 	 */
// 	public static WindowAdapter getWindowState() {
// 		return windowState;
// 	}
// 
// 	/**
// 	 * @param windowState the windowState to set
// 	 */
// 	public static void setWindowState(WindowAdapter wa) {
// 		InitializerGUI.windowState = wa;
// 	}
// 
// 	public static void show(Image appIcon, IWindow window, Set<Button> lButtons) throws IOException{
// 		IScreen screen;
// 		JMenuBar menu = new JMenuBar();
// 		IFrame frame = new Frame();
// 		JLabel subTitle = new JLabel("Conciliação - Banco do Brasil");
// 		
// 		window.setIconImage(appIcon);
// 		screen = new AppScreen();
// 
// 		for (Button button : lButtons) {
// 			menu.add(button);
// 		}
// 		
// 		screen.setTitle("Sistema de Conciliação Bancária - JUCEB");
// 		screen.setSubTitle(subTitle);
// 		screen.setWindow(window);
// 		screen.setMenu(menu);
// 		screen.setFrame(frame);
// 		
// 		screen.show();
// 	}
// 
// }


import java.awt.AWTException;
import java.awt.Button;
import java.awt.Image;
import java.awt.SystemTray;
import java.awt.TrayIcon;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.io.File;
import java.io.IOException;
import java.nio.file.FileSystems;
import java.util.HashSet;
import java.util.Set;
import javax.imageio.ImageIO;
import javax.swing.JFrame;
import javax.swing.JOptionPane;
import principal.InitializerGUI;
/**
 * 
 */
package gui;




/**
 * @author rodrigo
 *
 */
public class ButtonGenerator {

	/**
	 * 
	 */
	private ButtonGenerator() {

	}

	public static Set<Button> generate(IWindow window){
		Set<Button> lButtons = new HashSet<>();
		Button menuConfig, menuOcultar;
		
		menuConfig = new Button("Configurações");
		menuConfig.addActionListener(new ActionListener() {
			@Override
			public void actionPerformed(ActionEvent e) {
				JOptionPane.showMessageDialog(
						null, 
						e.getActionCommand() , 
						"CONCILIAÇÃO - "+e.getActionCommand(), 
						JOptionPane.INFORMATION_MESSAGE);
			}
		});
		
		menuOcultar = new Button("Ocultar");
		menuOcultar.addActionListener(new ActionListener() {
			@Override
			public void actionPerformed(ActionEvent e) {
				if(JOptionPane.showConfirmDialog(
						null, 
						"Você deseja "+ e.getActionCommand() +"?",
						"CONCILIAÇÃO - "+e.getActionCommand(), 
						JOptionPane.OK_CANCEL_OPTION) == JOptionPane.OK_OPTION){
// Path: src/principal/InitializerGUI.java
// public class InitializerGUI {
// 	/**
// 	 * 
// 	 */
// 	private InitializerGUI() {
// 
// 	}
// 
// 	private static WindowAdapter windowState = null;
// 
// 	/**
// 	 * @return the windowState
// 	 */
// 	public static WindowAdapter getWindowState() {
// 		return windowState;
// 	}
// 
// 	/**
// 	 * @param windowState the windowState to set
// 	 */
// 	public static void setWindowState(WindowAdapter wa) {
// 		InitializerGUI.windowState = wa;
// 	}
// 
// 	public static void show(Image appIcon, IWindow window, Set<Button> lButtons) throws IOException{
// 		IScreen screen;
// 		JMenuBar menu = new JMenuBar();
// 		IFrame frame = new Frame();
// 		JLabel subTitle = new JLabel("Conciliação - Banco do Brasil");
// 		
// 		window.setIconImage(appIcon);
// 		screen = new AppScreen();
// 
// 		for (Button button : lButtons) {
// 			menu.add(button);
// 		}
// 		
// 		screen.setTitle("Sistema de Conciliação Bancária - JUCEB");
// 		screen.setSubTitle(subTitle);
// 		screen.setWindow(window);
// 		screen.setMenu(menu);
// 		screen.setFrame(frame);
// 		
// 		screen.show();
// 	}
// 
// }


// Path: src/gui/ButtonGenerator.java
import java.awt.AWTException;
import java.awt.Button;
import java.awt.Image;
import java.awt.SystemTray;
import java.awt.TrayIcon;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.io.File;
import java.io.IOException;
import java.nio.file.FileSystems;
import java.util.HashSet;
import java.util.Set;
import javax.imageio.ImageIO;
import javax.swing.JFrame;
import javax.swing.JOptionPane;
import principal.InitializerGUI;

/**
 * 
 */
package gui;




/**
 * @author rodrigo
 *
 */
public class ButtonGenerator {

	/**
	 * 
	 */
	private ButtonGenerator() {

	}

	public static Set<Button> generate(IWindow window){
		Set<Button> lButtons = new HashSet<>();
		Button menuConfig, menuOcultar;
		
		menuConfig = new Button("Configurações");
		menuConfig.addActionListener(new ActionListener() {
			@Override
			public void actionPerformed(ActionEvent e) {
				JOptionPane.showMessageDialog(
						null, 
						e.getActionCommand() , 
						"CONCILIAÇÃO - "+e.getActionCommand(), 
						JOptionPane.INFORMATION_MESSAGE);
			}
		});
		
		menuOcultar = new Button("Ocultar");
		menuOcultar.addActionListener(new ActionListener() {
			@Override
			public void actionPerformed(ActionEvent e) {
				if(JOptionPane.showConfirmDialog(
						null, 
						"Você deseja "+ e.getActionCommand() +"?",
						"CONCILIAÇÃO - "+e.getActionCommand(), 
						JOptionPane.OK_CANCEL_OPTION) == JOptionPane.OK_OPTION){
					if(InitializerGUI.getWindowState() == null){