package fr.univ.lyon1.gui;

import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.stage.Stage;

import java.util.List;

public class MainGui extends Application {
    private ClientPanel clientPanel;
    private ClientGUI client;

    @Override
    public void start(Stage stage) throws Exception {
        List<String> parameters = this.getParameters().getUnnamed();
        client = new ClientGUI(this, parameters.get(0), Integer.parseInt(parameters.get(1)));
        //ToDo: error management especially for bad server IP/port
        //ToDo: Server IP/port enter by user on the GUI

        stage.setTitle("Chat client");
        stage.setWidth(440);

        clientPanel = new ClientPanel(this);
        Group root = new Group();
        root.getChildren().add(clientPanel);
        Scene scene = new Scene(root, 600, 500);

        stage.setScene(scene);
        stage.show();
        client.run();
    }

    public static void main(String[] args) {
        Application.launch(MainGui.class, args);
    }

    public void sendMessage(String msg) {
        client.sendMessage(msg);
    }

    public void receiveMessage(String msg) {
        clientPanel.addMessage(msg);
    }
}