Example usage for javafx.stage FileChooser FileChooser

List of usage examples for javafx.stage FileChooser FileChooser

Introduction

In this page you can find the example usage for javafx.stage FileChooser FileChooser.

Prototype

FileChooser

Source Link

Usage

From source file:ninja.javafx.smartcsv.fx.SmartCSVController.java

private void loadFile(String filterText, String filter, String title, FileStorage storageFile) {
    final FileChooser fileChooser = new FileChooser();

    //Set extension filter
    final FileChooser.ExtensionFilter extFilter = new FileChooser.ExtensionFilter(filterText, filter);
    fileChooser.getExtensionFilters().add(extFilter);
    fileChooser.setTitle(title);//w  w  w . jav  a  2s .c  om

    if (storageFile.getFile() != null) {
        fileChooser.setInitialDirectory(storageFile.getFile().getParentFile());
    }

    //Show open file dialog
    File file = fileChooser.showOpenDialog(applicationPane.getScene().getWindow());
    if (file != null) {
        storageFile.setFile(file);
        useLoadFileService(storageFile, t -> resetContent());
    }
}

From source file:spdxedit.PackageEditor.java

public void handleAddFileClick(MouseEvent event) {
    FileChooser chooser = new FileChooser();
    chooser.setTitle("Add file");
    File file = chooser.showOpenDialog(btnAddFile.getParent().getScene().getWindow());
    if (file == null) //Dialog cancelled.
        return;//from   w w  w. ja  va 2  s  .  com
    Path path = Paths.get(file.getAbsolutePath());
    SpdxLogic.addFileToPackage(pkg, path, file.toURI().toString());
}

From source file:ui.main.MainViewController.java

private void sendFile() {
    if (!contactsManager.getAvailabilityforSharing(currentChat.getParticipant())) {
        Alert alert = new Alert(Alert.AlertType.INFORMATION);
        alert.setTitle("Attention!");
        alert.setHeaderText("The user is not available!");
        alert.setContentText("The file receiving user should be available online to receive the file.");
        alert.showAndWait();//from www .  j  a  v  a2  s. c  o  m
        return;
    }
    ItemType type = contactsManager.getUserType(currentChat.getParticipant());

    if (type.equals(ItemType.none)) {
        Alert alert = new Alert(Alert.AlertType.INFORMATION);
        alert.setTitle("Attention!");
        alert.setHeaderText("This user is not available for you!");
        alert.setContentText(
                "The user has not accepted the Friend Request." + " The user is not available for you.");
        alert.showAndWait();
        return;
    } else if (type.equals(ItemType.from)) {
        Alert alert = new Alert(Alert.AlertType.INFORMATION);
        alert.setTitle("Attention!");
        alert.setHeaderText("An unaccepted user!");
        alert.setContentText("You have not accepted the Friend Request."
                + " You can not send any messages until you accept the friend request.");
        alert.showAndWait();
        return;
    } else if (type.equals(ItemType.to)) {
        Alert alert = new Alert(Alert.AlertType.INFORMATION);
        alert.setTitle("Attention!");
        alert.setHeaderText("The user has not accepted!");
        alert.setContentText("The user has not accepted the Friend Request."
                + " You can not send any messages until the user accepts the friend request.");
        alert.showAndWait();
        return;
    }
    if (!contactsManager.getAvailabilityforSharing(currentChat.getParticipant())) {
        Alert alert = new Alert(Alert.AlertType.INFORMATION);
        alert.setTitle("Attention!");
        alert.setHeaderText("The user is not available!");
        alert.setContentText("The file receiving user should be available online to receive the file.");
        alert.showAndWait();
        return;
    }
    FileChooser fc = new FileChooser();
    File file = fc.showOpenDialog(presence.getScene().getWindow());
    if (file == null) {
        return;
    }
    Thread t = new Thread(new Runnable() {
        @Override
        public void run() {
            try {
                fileManager.sendFile(file, currentChat.getParticipant());
                if (history.isSelected()) {
                    Timestamp time = new Timestamp(System.currentTimeMillis());
                    DBSingleChat.saveFileMessage(currentChat.getParticipant(), false, file.getPath(), time);
                }

                paintSentFile(currentChat, file.getAbsolutePath(), dtfT.print(DateTime.now()));
                Task tt = new Task() {
                    @Override
                    protected Object call() throws Exception {
                        Thread.sleep(500);
                        return new Object();
                    }
                };

                tt.setOnSucceeded(value -> scrollPane.setVvalue(scrollPane.getHmax()));

                Thread thread1 = new Thread(tt);
                thread1.start();
            } catch (FileNotFoundException ex) {
                Alert alert = new Alert(Alert.AlertType.ERROR);
                alert.setTitle("IMP");
                alert.setHeaderText("File is not Found!");
                alert.setContentText("File you selected does not exist.");
                alert.showAndWait();
                return;
            }
        }
    });
    t.start();
}

From source file:com.core.meka.SOMController.java

private String guardarArrayAArchivo(String array, TextArea resultado) throws IOException {
    String result = "";
    FileChooser chooser = new FileChooser();
    chooser.getExtensionFilters().add(new FileChooser.ExtensionFilter("Text doc(*.txt)", "*.txt"));
    File file = chooser.showSaveDialog(base.getScene().getWindow());
    if (file != null) {
        file = new File(file.getAbsolutePath() + ".txt");
        String path = file.getAbsolutePath();
        try {//w w w.ja v a2s . c o m
            PrintWriter writer = new PrintWriter(path, "UTF-8");
            writer.print(array);
            writer.close();
        } catch (Exception e) {
            resultado.setText("Problemas al almacenar el vector\n" + e.getMessage().replaceAll("\\)", "\n"));
        }
    }
    return result;
}

From source file:ninja.javafx.smartcsv.fx.SmartCSVController.java

private File saveFile(String filterText, String filter, FileStorage fileStorage) {
    File file = fileStorage.getFile();
    if (fileStorage.getContent() != null) {
        final FileChooser fileChooser = new FileChooser();

        //Set extension filter
        final FileChooser.ExtensionFilter extFilter = new FileChooser.ExtensionFilter(filterText, filter);
        fileChooser.getExtensionFilters().add(extFilter);

        if (fileStorage.getFile() != null) {
            fileChooser.setInitialDirectory(fileStorage.getFile().getParentFile());
            fileChooser.setInitialFileName(fileStorage.getFile().getName());
        }/*from  w w w .  java  2 s. c o  m*/
        fileChooser.setTitle("Save File");

        //Show open file dialog
        file = fileChooser.showSaveDialog(applicationPane.getScene().getWindow());
        if (file != null) {
            fileStorage.setFile(file);
            useSaveFileService(fileStorage);
        }
    }
    return file;
}

From source file:UI.MainStageController.java

/**
 * exports the created table to a .csv file
 * uses a fileChooser to determine where to save the .csv file
 *
 * @param tableValues/*  w  w w .jav a 2s  .  c  om*/
 * @param isPValue
 */
private void exportTableToCSV(String[][] tableValues, boolean isPValue) {
    //We'll split up the table values into two parts - if we need correlations, we take the 0th one,
    // if we want p values, we take the 1st
    int splitNumber;
    splitNumber = isPValue ? 1 : 0;

    FileChooser chooser = new FileChooser();
    chooser.setInitialDirectory(new File((String) UserSettings.userSettings.get("defaultFileChooserLocation")));
    File outputFile = chooser.showSaveDialog(getPrimaryStage());
    try {
        BufferedWriter writer = new BufferedWriter(new FileWriter(outputFile));

        //Write names into first row
        writer.write(",");
        for (int i = 0; i < tableValues.length; i++) {
            writer.write(tableValues[i][0] + ",");
        }
        writer.write("\n");

        for (String[] tableRow : tableValues) {
            for (String s : tableRow) {
                String[] split = s.split("\n");

                //                    System.out.println(s + split.length);
                //                    for (String s1 : split) {
                //                        System.out.println(s1);
                //                    }
                if (split.length > 1)
                    writer.write(split[splitNumber] + ",");
                else
                    writer.write(split[0] + ",");
            }
            writer.write("\n");
        }

        writer.flush();
        writer.close();
    } catch (IOException e) {
        e.printStackTrace();
    }
}

From source file:com.chart.SwingChart.java

/**
 * /*  ww w.  j  a  v  a 2  s  .  c  o m*/
 * @param name Chart name
 * @param parent Skeleton parent
 * @param axes Configuration of axes
 * @param abcissaName Abcissa name
 */
public SwingChart(String name, final Skeleton parent, List<AxisChart> axes, String abcissaName) {
    this.skeleton = parent;
    this.axes = axes;
    this.name = name;

    this.abcissaFormat = NumberFormat.getInstance(Locale.getDefault());
    this.ordinateFormat = NumberFormat.getInstance(Locale.getDefault());

    plot = new XYPlot();
    plot.setBackgroundPaint(scene2awtColor(javafx.scene.paint.Color.web(strChartBackgroundColor)));
    plot.setDomainGridlinePaint(scene2awtColor(javafx.scene.paint.Color.web(strGridlineColor)));
    plot.setRangeGridlinePaint(scene2awtColor(javafx.scene.paint.Color.web(strGridlineColor)));
    plot.setAxisOffset(new RectangleInsets(5.0, 5.0, 5.0, 5.0));

    abcissaAxis = new NumberAxis(abcissaName);
    ((NumberAxis) abcissaAxis).setAutoRangeIncludesZero(false);
    abcissaAxis.setTickLabelFont(new Font("SansSerif", Font.PLAIN, 12));
    abcissaAxis.setLabelFont(new Font("SansSerif", Font.PLAIN, 12));
    abcissaAxis.setLabelPaint(scene2awtColor(javafx.scene.paint.Color.web(strTickColor)));
    abcissaAxis.setTickLabelPaint(scene2awtColor(javafx.scene.paint.Color.web(strTickColor)));
    abcissaAxis.setAutoRange(true);
    abcissaAxis.setLowerMargin(0.0);
    abcissaAxis.setUpperMargin(0.0);
    abcissaAxis.setTickLabelsVisible(true);
    abcissaAxis.setLabelFont(abcissaAxis.getLabelFont().deriveFont(fontSize));
    abcissaAxis.setTickLabelFont(abcissaAxis.getLabelFont().deriveFont(fontSize));

    plot.setDomainAxis(abcissaAxis);

    for (int i = 0; i < axes.size(); i++) {
        AxisChart categoria = axes.get(i);
        addAxis(categoria.getName());

        for (int j = 0; j < categoria.configSerieList.size(); j++) {
            SimpleSeriesConfiguration cs = categoria.configSerieList.get(j);
            addSeries(categoria.getName(), cs);
        }
    }
    chart = new JFreeChart("", new Font("SansSerif", Font.BOLD, 16), plot, false);

    chart.setBackgroundPaint(scene2awtColor(javafx.scene.paint.Color.web(strBackgroundColor)));

    chartPanel = new ChartPanel(chart);
    chartPanel.setBorder(BorderFactory.createCompoundBorder(BorderFactory.createEmptyBorder(4, 4, 4, 4),
            BorderFactory.createLineBorder(scene2awtColor(javafx.scene.paint.Color.web(strBackgroundColor)))));

    chartPanel.getInputMap().put(KeyStroke.getKeyStroke("ESCAPE"), "escape");
    chartPanel.getActionMap().put("escape", new AbstractAction() {

        @Override
        public void actionPerformed(java.awt.event.ActionEvent e) {
            for (int i = 0; i < plot.getDatasetCount(); i++) {
                XYDataset test = plot.getDataset(i);
                XYItemRenderer r = plot.getRenderer(i);
                r.removeAnnotations();
            }
        }
    });

    chartPanel.addChartMouseListener(cml = new ChartMouseListener() {
        @Override
        public void chartMouseClicked(ChartMouseEvent event) {
        }

        @Override
        public void chartMouseMoved(ChartMouseEvent event) {
            try {
                XYItemEntity xyitem = (XYItemEntity) event.getEntity(); // get clicked entity
                XYDataset dataset = (XYDataset) xyitem.getDataset(); // get data set    
                double x = dataset.getXValue(xyitem.getSeriesIndex(), xyitem.getItem());
                double y = dataset.getYValue(xyitem.getSeriesIndex(), xyitem.getItem());

                final XYPlot plot = chart.getXYPlot();
                for (int i = 0; i < plot.getDatasetCount(); i++) {
                    XYDataset test = plot.getDataset(i);
                    XYItemRenderer r = plot.getRenderer(i);
                    r.removeAnnotations();
                    if (test == dataset) {
                        NumberAxis ejeOrdenada = AxesList.get(i);
                        double y_max = ejeOrdenada.getUpperBound();
                        double y_min = ejeOrdenada.getLowerBound();
                        double x_max = abcissaAxis.getUpperBound();
                        double x_min = abcissaAxis.getLowerBound();
                        double angulo;
                        if (y > (y_max + y_min) / 2 && x > (x_max + x_min) / 2) {
                            angulo = 3.0 * Math.PI / 4.0;
                        } else if (y > (y_max + y_min) / 2 && x < (x_max + x_min) / 2) {
                            angulo = 1.0 * Math.PI / 4.0;
                        } else if (y < (y_max + y_min) / 2 && x < (x_max + x_min) / 2) {
                            angulo = 7.0 * Math.PI / 4.0;
                        } else {
                            angulo = 5.0 * Math.PI / 4.0;
                        }

                        CircleDrawer cd = new CircleDrawer((Color) r.getSeriesPaint(xyitem.getSeriesIndex()),
                                new BasicStroke(2.0f), null);
                        //XYAnnotation bestBid = new XYDrawableAnnotation(dataset.getXValue(xyitem.getSeriesIndex(), xyitem.getItem()), dataset.getYValue(xyitem.getSeriesIndex(), xyitem.getItem()), 11, 11, cd);
                        String txt = "X:" + abcissaFormat.format(x) + ", Y:" + ordinateFormat.format(y);
                        XYPointerAnnotation anotacion = new XYPointerAnnotation(txt,
                                dataset.getXValue(xyitem.getSeriesIndex(), xyitem.getItem()),
                                dataset.getYValue(xyitem.getSeriesIndex(), xyitem.getItem()), angulo);
                        anotacion.setTipRadius(10.0);
                        anotacion.setBaseRadius(35.0);
                        anotacion.setFont(new Font("SansSerif", Font.PLAIN, 10));

                        if (Long.parseLong((strChartBackgroundColor.replace("#", "")), 16) > 0xffffff / 2) {
                            anotacion.setPaint(Color.black);
                            anotacion.setArrowPaint(Color.black);
                        } else {
                            anotacion.setPaint(Color.white);
                            anotacion.setArrowPaint(Color.white);
                        }

                        //bestBid.setPaint((Color) r.getSeriesPaint(xyitem.getSeriesIndex()));
                        r.addAnnotation(anotacion);
                    }
                }

                //LabelValorVariable.setSize(LabelValorVariable.getPreferredSize());
            } catch (NullPointerException | ClassCastException ex) {

            }
        }
    });

    chartPanel.setPopupMenu(null);
    chartPanel.setBackground(scene2awtColor(javafx.scene.paint.Color.web(strBackgroundColor)));

    SwingNode sn = new SwingNode();
    sn.setContent(chartPanel);
    chartFrame = new VBox();
    chartFrame.getChildren().addAll(sn, legendFrame);
    VBox.setVgrow(sn, Priority.ALWAYS);
    VBox.setVgrow(legendFrame, Priority.NEVER);

    chartFrame.getStylesheets().addAll(SwingChart.class.getResource("overlay-chart.css").toExternalForm());

    legendFrame.setStyle("marco: " + strBackgroundColor + ";-fx-background-color: marco;");

    MenuItem mi;
    mi = new MenuItem("Print");
    mi.setOnAction((ActionEvent t) -> {
        print(chartFrame);
    });
    contextMenuList.add(mi);

    sn.setOnMouseClicked((MouseEvent t) -> {
        if (menu != null) {
            menu.hide();
        }
        if (t.getClickCount() == 2) {
            backgroundEdition();
        }
    });

    mi = new MenuItem("Copy to clipboard");
    mi.setOnAction((ActionEvent t) -> {
        copyClipboard(chartFrame);
    });
    contextMenuList.add(mi);

    mi = new MenuItem("Export values");
    mi.setOnAction((ActionEvent t) -> {
        FileChooser fileChooser = new FileChooser();
        fileChooser.setTitle("Export to file");
        fileChooser.getExtensionFilters()
                .addAll(new FileChooser.ExtensionFilter("Comma Separated Values", "*.csv"));

        Window w = null;
        try {
            w = parent.getScene().getWindow();
        } catch (NullPointerException e) {

        }
        File file = fileChooser.showSaveDialog(w);
        if (file != null) {
            export(file);
        }
    });
    contextMenuList.add(mi);

    chartFrame.setOnContextMenuRequested((ContextMenuEvent t) -> {
        if (menu != null) {
            menu.hide();
        }
        menu = new ContextMenu();
        menu.getItems().addAll(contextMenuList);
        menu.show(chartFrame, t.getScreenX(), t.getScreenY());
    });

}

From source file:com.ggvaidya.scinames.dataset.DatasetSceneController.java

private void exportToCSV(TableView tv, ActionEvent evt) {
    FileChooser chooser = new FileChooser();
    chooser.getExtensionFilters().setAll(new FileChooser.ExtensionFilter("CSV file", "*.csv"),
            new FileChooser.ExtensionFilter("Tab-delimited file", "*.txt"));
    File file = chooser.showSaveDialog(datasetView.getStage());
    if (file != null) {
        CSVFormat format = CSVFormat.RFC4180;

        String outputFormat = chooser.getSelectedExtensionFilter().getDescription();
        if (outputFormat.equalsIgnoreCase("Tab-delimited file"))
            format = CSVFormat.TDF;/* ww  w.ja  v  a 2 s  .co m*/

        try {
            List<List<String>> dataAsTable = getDataAsTable(tv);
            fillCSVFormat(format, new FileWriter(file), dataAsTable);

            Alert window = new Alert(Alert.AlertType.CONFIRMATION,
                    "CSV file '" + file + "' saved with " + (dataAsTable.get(0).size() - 1) + " rows.");
            window.showAndWait();

        } catch (IOException e) {
            Alert window = new Alert(Alert.AlertType.ERROR, "Could not save CSV to '" + file + "': " + e);
            window.showAndWait();
        }
    }
}

From source file:view.FXApplicationController.java

@FXML
protected void importHypnogrammAction() {
    FileChooser fileChooser = new FileChooser();

    // Set extension filter
    FileChooser.ExtensionFilter extFilter = new FileChooser.ExtensionFilter("TXT files (*.txt)", "*.txt");
    fileChooser.getExtensionFilters().add(extFilter);

    // Show open file dialog
    final File file = fileChooser.showOpenDialog(primaryStage);

    if (file != null) {
        try {//ww  w. j  av  a  2s . co  m
            openFile(file);

            hypnogram.updateAll();
            updateWindows();

            System.out.println("Finished importing Hypnogramm!");

        } catch (IOException e) {
            popUp.createPopup("Error during importing Hypnogramm!");
            Logger.getLogger(this.getClass().getName()).log(Level.SEVERE, "Error during importing Hypnogramm!",
                    e);
        }
    }
}

From source file:org.nmrfx.processor.gui.MainApp.java

private void saveProjectAs() {
    FileChooser chooser = new FileChooser();
    chooser.setTitle("Project Creator");
    File directoryFile = chooser.showSaveDialog(null);
    if (directoryFile != null) {
        GUIProject activeProject = getActive();
        if (activeProject != null) {
            GUIProject newProject = GUIProject.replace(appName, activeProject);

            try {
                newProject.createProject(directoryFile.toPath());
                newProject.saveProject();
            } catch (IOException ex) {
                ExceptionDialog dialog = new ExceptionDialog(ex);
                dialog.showAndWait();// w ww .j  a  va 2s .  co  m
            }
        }
    }

}