public Fenetre(final ActionsClientMessagerie irc) {

		this.irc = irc;

		// Initialisation de la fenêtre
		this.setTitle("Messagerie instantanée");
		this.setSize(400, 700);
		this.setLocationRelativeTo(null);
		this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		JPanel panel = new JPanel();
		panel.setBackground(Color.gray);
		this.setContentPane(panel);
		this.setLayout(new GridBagLayout());
		GridBagConstraints constraint = new GridBagConstraints();

		// Ajouter la zone des messages
		this.messages = new JTextArea();
		constraint.fill = GridBagConstraints.BOTH;
		constraint.gridx = 0;
		constraint.gridy = 0;
		constraint.gridwidth = 2;
		constraint.weightx = 1;
		constraint.weighty = 0.8;
		this.messages.setEnabled(false);
		this.add(this.messages, constraint);

		// Ajouter la zone de saisie
		final JTextField saisie = new JTextField();
		constraint.fill = GridBagConstraints.BOTH;
		constraint.gridx = 0;
		constraint.gridy = 1;
		constraint.gridwidth = 1;
		constraint.weightx = 0.75;
		constraint.weighty = 0.1;
		this.add(saisie, constraint);

		// Ajouter le bouton d'envoi d'un message
		final JButton envoyer = new JButton("Envoyer");
		constraint.fill = GridBagConstraints.BOTH;
		constraint.gridx = 1;
		constraint.gridy = 1;
		constraint.gridwidth = 1;
		constraint.weightx = 0.25;
		constraint.weighty = 0.1;
		envoyer.setEnabled(false);
		this.add(envoyer, constraint);
		envoyer.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				try {
					irc.send(saisie.getText());
					saisie.setText("");
				} catch (RemoteException e1) {
					System.out.println("Erreur de réseau");
				}
			}
		});

		// Menu
		JMenu menuFichier = new JMenu("Fichier");
		JMenuItem quitter = new JMenuItem("Quitter");
		JMenuItem connecter = new JMenuItem("Connecter");
		JMenuItem listing = new JMenuItem("Liste des clients");
		JMenuItem deconnecter = new JMenuItem("Déconnecter");
		menuFichier.add(connecter);
		menuFichier.add(listing);
		menuFichier.add(deconnecter);
		menuFichier.add(quitter);
		JMenuBar menu = new JMenuBar();
		menu.add(menuFichier);
		this.setJMenuBar(menu);
		quitter.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				try {
					irc.bye();
				} catch (RemoteException e1) {
					e1.printStackTrace();
				}
				System.exit(0);
			}
		});
		connecter.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				try {
					irc.connect();
					envoyer.setEnabled(true);
				} catch (RemoteException e1) {
					System.out.println("Erreur de réseau");
				}
			}
		});
		deconnecter.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				try {
					irc.bye();
					envoyer.setEnabled(false);
				} catch (RemoteException e1) {
					System.out.println("Erreur de réseau");
				}
			}
		});
		listing.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				try {
					messages.append("Listing des clients connectés au serveur :\n"
							+ irc.who() + "\n");
				} catch (RemoteException e1) {
					System.out.println("Erreur de réseau : " + e1.getMessage());
					e1.printStackTrace();
				}
			}
		});

		// Affiche la fenetre
		this.setVisible(true);

	}