package views;

import javafx.application.Application;
import javafx.collections.ObservableList;
import javafx.event.ActionEvent;
import javafx.event.EventHandler;
import javafx.geometry.Insets;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.control.ChoiceBox;
import javafx.scene.control.ComboBox;
import javafx.scene.control.ListView;
import javafx.scene.control.SelectionMode;
import javafx.scene.layout.HBox;
import javafx.scene.layout.VBox;
import javafx.stage.Stage;

public class ViewsDemo extends Application {
    public static void main(String[] args) {
        launch(args);
    }

    @Override
    public void start(Stage primaryStage) throws Exception {
    	// Set listView
    	ListView<String> listView = new ListView<>();
    	listView.getItems().add("Option 1");
    	listView.getItems().add("Option 2");
    	listView.getItems().addAll("Option 3", "Option 4");
        listView.getSelectionModel().setSelectionMode(SelectionMode.MULTIPLE);

    	//Button
        Button lvButton = new Button("Ok");
        lvButton.setOnAction(new EventHandler<ActionEvent>() {
			@Override
			public void handle(ActionEvent arg0) {
				String message = "Selected options:\n";
				
				ObservableList<String> selectedItems = listView.getSelectionModel().getSelectedItems();
				for(String m: selectedItems) {
		            message += m + "\n";
				}
				
		        System.out.println(message);
			}
        });

        //Layout
        VBox lvLayout = new VBox(10);
        lvLayout.setPadding(new Insets(20, 20, 20, 20));
        lvLayout.getChildren().addAll(listView, lvButton);
        
        //----------------------------------------------------
        
        HBox layout = new HBox(20);
        layout.getChildren().add(lvLayout);
        primaryStage.setTitle("Views Demo");
        primaryStage.setScene(new Scene(layout));
        primaryStage.show();
    }
}

