/*
 * C'est ici que l'on définit toutes les fenêtres et dialogues utilisés
 */

package fr.free.cdmrail;

import java.awt.GraphicsDevice;
import java.awt.Rectangle;
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JPanel;

// Dans cette classe on trouve la création de toutes les fenêtres
public class CdmWin implements CdmMenu {
	// Instances des fenêtres
	CdmWinMain winMain; // Fenêtre principale de CDM-Rail
	
	// Constructeur
	CdmWin (String winType) {
		/**
		 * @param winType
		 */
		switch (winType) {
			case WIN_MAIN :
				winMain = new CdmWinMain("CDM-Rail - " + CDM_VERSION);
				GlobalVar.g_TheWinMain = winMain;
				break;
			default :
				break;
		}
	}
	
	/*
	 * Classe de la fenêtre principale de CDM-Rail
	 */

	class CdmWinMain extends JFrame{
		
		// La barre du menu
		private JMenuBar menuBar = new JMenuBar();
		// Les éléments du menu
		private JMenu [] theMenu = new JMenu[MENU_MAIN_FR.length];
		
		
		// Constructeur
		CdmWinMain(String ptitle){
			/**
			 * @param ptitle
			 */
			
			// Zone d'affichage de la fenêtre
			Rectangle screenBounds = GlobalVar.SCREEN_PRIMARY_BOUNDS;

			// On place la fenêtre sur le bon écran
			this.setBounds(screenBounds.x, screenBounds.y, screenBounds.width, screenBounds.height);
			
			// Son titre
			this.setTitle(ptitle);
			
			// Quitte l'application quand on clique sur le bouton de fermeture de la fenêtre
			this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
			
			// Pour que la fenêtre reste toujours au premier plan
			this.setAlwaysOnTop(true);
			
			// Création de la zone d'affichage des éléments ajoutés à la fenêtre
			JPanel displayArea = new JPanel();
			
			// Couleur de fond de la zone
			displayArea.setBackground(GlobalVar.g_PrimaryBackgroundColor);
			
			// Indique que c'est la zone de la fenêtre
			this.setContentPane(displayArea);
			
			// Affiche le menu principal
			SetMenu(this, menuBar, theMenu);
			
			// Affiche la fenêtre
			this.setVisible(true);
		}
	}
	
	public void SetMenu(JFrame pframe, JMenuBar pmenuBar, JMenu [] ptheMenu) {
		// Les éléments du menu
		if (g_whichLanguage == LANGUAGE_FR) {
			// Menu en Français
			for (byte i = 0; i < MENU_MAIN_FR.length; i++) {
				ptheMenu[i] = new JMenu(MENU_MAIN_FR[i]);
				pmenuBar.add(ptheMenu[i]);
			}
		}
		pframe.setJMenuBar(pmenuBar);
	}
}





