package bluej.pkgmgr;

import java.io.File;
import java.util.List;
import java.util.stream.Collectors;
import javafx.scene.Node;
import javafx.scene.control.ButtonBar;
import javafx.scene.control.ButtonType;
import javafx.scene.control.Dialog;
import javafx.scene.control.Label;
import javafx.scene.control.ScrollPane;
import javafx.scene.layout.VBox;
import javafx.stage.Modality;
import javafx.stage.Window;

import bluej.BlueJTheme;
import bluej.Config;
import bluej.utility.Utility;
import bluej.utility.javafx.JavaFXUtil;
import threadchecker.OnThread;
import threadchecker.Tag;


| Dialog for showing the user a list of files which | had mismatched package lines on an open non-BlueJ. | | @author Andrew Patterson | @OnThread(Tag.FXPlatform) public class ImportMismatchDialog extends Dialog<Boolean>{ private static final String dialogTitle = Config.getString("pkgmgr.importmismatch.title"); private final ButtonType CONTINUE; public ImportMismatchDialog(Window parent, List<File> files) { initOwner(parent); setTitle(dialogTitle); initModality(Modality.WINDOW_MODAL); Config.addDialogStylesheets(getDialogPane()); setResizable(true); VBox mainPanel = new VBox(); JavaFXUtil.addStyleClass(mainPanel, "import-mismatch-content"); mainPanel.getChildren().add(new Label(Config.getStringList("pkgmgr.importmismatch.helpLine").stream().collect(Collectors.joining(" ")))); mainPanel.getChildren().add(new ScrollPane(new VBox(Utility.mapList(files, f -> new Label(f.toString())).toArray(new Node[0])))); CONTINUE = new ButtonType(BlueJTheme.getContinueLabel(), ButtonBar.ButtonData.OK_DONE); getDialogPane().getButtonTypes().setAll(ButtonType.CANCEL, CONTINUE); setResultConverter(bt -> bt == CONTINUE); getDialogPane().setContent(mainPanel); } }

.   ImportMismatchDialog




52 neLoCode + 3 LoComm