Example usage for javafx.stage FileChooser showSaveDialog

List of usage examples for javafx.stage FileChooser showSaveDialog

Introduction

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

Prototype

public File showSaveDialog(final Window ownerWindow) 

Source Link

Document

Shows a new file save dialog.

Usage

From source file:dsfixgui.FileIO.DSFixFileController.java

public void exportDSFIniFile() {
    FileChooser fileChooser = new FileChooser();
    fileChooser.setTitle(DIALOG_TITLE_EXPORT_INI);
    FileChooser.ExtensionFilter iniFilter = new FileChooser.ExtensionFilter(INI_EXT_FILTER[0],
            INI_EXT_FILTER[1]);// w w  w. j a  v  a 2s .  c  o  m
    fileChooser.getExtensionFilters().add(iniFilter);
    File exportedFile = fileChooser.showSaveDialog(ui.getStage());

    if (exportedFile != null) {
        ui.getConfig().writeSettingsToIniFile(exportedFile.getPath());
    }
}

From source file:dsfixgui.FileIO.DSFixFileController.java

public void exportDSFKeybindsIniFile() {
    FileChooser fileChooser = new FileChooser();
    fileChooser.setTitle(DIALOG_TITLE_EXPORT_INI);
    FileChooser.ExtensionFilter iniFilter = new FileChooser.ExtensionFilter(INI_EXT_FILTER[0],
            INI_EXT_FILTER[1]);/*from w  w  w.ja  va2s  .c  o m*/
    fileChooser.getExtensionFilters().add(iniFilter);
    File exportedFile = fileChooser.showSaveDialog(ui.getStage());

    if (exportedFile != null) {
        ui.getDSFKeybinds().writeSettingsToIniFile(exportedFile.getPath());
    }
}

From source file:Main.java

private void saveLayoutAsImage() {
    FileChooser fc = new FileChooser();
    fc.getExtensionFilters().addAll(new FileChooser.ExtensionFilter("Portable Network Graphics(*.png)",
            Collections.singletonList("*.png")));
    File output = fc.showSaveDialog(boundsLayoutNode.getScene().getWindow());
    if (output == null) {
        return;// w  ww. j  av a 2 s.  c o  m
    } else {
        String fn = output.getName();
        if (!fn.toLowerCase().endsWith(".png")) {
            output = new File(output.getParent(), fn + ".png");
        }
    }

    try {
        WritableImage wImg = boundsLayoutNode.snapshot(null, null);
        //WritableImage wImg = mainRect.snapshot(null, null);
        BufferedImage bImg = SwingFXUtils.fromFXImage(wImg, null);
        ImageIO.write(bImg, "png", output);
    } catch (IOException e) {
        e.printStackTrace();
    }
}

From source file:com.joliciel.talismane.terminology.viewer.TerminologyViewerController.java

@FXML
protected void handleExportButtonAction(ActionEvent event) {
    FileChooser fileChooser = new FileChooser();

    //Set extension filter
    FileChooser.ExtensionFilter extFilter = new FileChooser.ExtensionFilter("CSV (*.csv)", "*.csv");
    fileChooser.getExtensionFilters().add(extFilter);
    FileChooser.ExtensionFilter allFilter = new FileChooser.ExtensionFilter("All files (*)", "*");
    fileChooser.getExtensionFilters().add(allFilter);

    String currentDir = System.getProperty("user.dir");
    fileChooser.setInitialDirectory(new File(currentDir));

    //Show save file dialog
    File file = fileChooser.showSaveDialog(primaryStage);
    if (file != null) {
        try {//ww  w .  jav  a2  s  . c  o  m
            CSV.setAddQuotesAlways(true);
            CSV.setCsvSeparator(csvSeparator);
            Writer writer = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(file)));
            ObservableList<Term> terms = tblTerms.getItems();
            writer.append(CSV.format("Term") + CSV.format("Frequency") + CSV.format("Expansions")
                    + CSV.format("Contexts") + "\n");
            for (Term term : terms) {
                if (term instanceof TermWrapper) {
                    term = ((TermWrapper) term).getWrappedTerm();
                }
                writer.append(CSV.format(term.getText()));
                writer.append(CSV.format(term.getFrequency()));
                writer.append(CSV.format(term.getExpansionCount()));
                StringBuilder sb = new StringBuilder();
                for (Context context : terminologyBase.getContexts(term)) {
                    sb.append(context.getTextSegment() + "|");
                }
                writer.append(CSV.format(sb.toString()));
                writer.append("\n");
                writer.flush();
            }
            writer.close();
        } catch (IOException ioe) {
            throw new RuntimeException(ioe);
        }
    }

}

From source file:acmi.l2.clientmod.l2smr.Controller.java

@FXML
private void exportSM() {
    List<Actor> actors = this.table.getSelectionModel().getSelectedItems().stream().map(Actor::clone)
            .collect(Collectors.toList());

    if (actors.isEmpty())
        return;// ww w. j a va2  s.  c o  m

    int xy = 18 | (20 << 8);
    try {
        xy = getXY(getMapsDir(), this.unrChooser.getSelectionModel().getSelectedItem());
    } catch (IOException e) {
        showAlert(Alert.AlertType.WARNING, "Export", null, "Couldn't read map coords, using default 18_20");
    }
    ImportExportDialog dlg = new ImportExportDialog(xy & 0xff, (xy >> 8) & 0xff);
    ButtonType response = dlg.showAndWait().orElse(null);
    if (response != ButtonType.OK)
        return;

    FileChooser fileChooser = new FileChooser();
    fileChooser.getExtensionFilters().add(new FileChooser.ExtensionFilter("JSON", "*.json"));
    fileChooser.setTitle("Save");
    File file = fileChooser.showSaveDialog(getStage());
    if (file == null)
        return;

    longTask(progress -> {
        float x = dlg.getX(), y = dlg.getY(), z = dlg.getZ();
        double angle = dlg.getAngle();
        AffineTransform rotate = AffineTransform.getRotateInstance(Math.PI * angle / 180, x, y);
        AffineTransform translate = AffineTransform.getTranslateInstance(-x, -y);

        for (int i = 0; i < actors.size(); i++) {
            progress.accept((double) i / actors.size());
            Actor o = actors.get(i);
            Point2D.Float point = new Point2D.Float(o.getX(), o.getY());
            rotate.transform(point, point);
            translate.transform(point, point);

            o.setX(point.x);
            o.setY(point.y);
            o.setZ(o.getZ() - z);
            if (o.getYaw() == null)
                o.setYaw(0);
            o.setYaw(((int) (o.getYaw() + angle * 0xFFFF / 360)) & 0xFFFF);
        }
        progress.accept(-1.0);

        L2Map map = new L2Map(x, y, z, actors);
        ObjectMapper objectMapper = new ObjectMapper();

        try (ByteArrayOutputStream baos = new ByteArrayOutputStream()) {
            objectMapper.writeValue(baos, map);

            try (OutputStream fos = new FileOutputStream(file)) {
                baos.writeTo(fos);
            }
        }
    }, e -> onException("Export failed", e));
}

From source file:acmi.l2.clientmod.xdat.Controller.java

@FXML
private void saveAs() {
    FileChooser fileChooser = new FileChooser();
    fileChooser.setTitle("Save");
    fileChooser.getExtensionFilters().addAll(new FileChooser.ExtensionFilter("XDAT (*.xdat)", "*.xdat"),
            new FileChooser.ExtensionFilter("All files", "*.*"));
    fileChooser.setInitialFileName(xdatFile.getValue().getName());

    if (initialDirectory.getValue() != null && initialDirectory.getValue().exists()
            && initialDirectory.getValue().isDirectory())
        fileChooser.setInitialDirectory(initialDirectory.getValue());

    File file = fileChooser.showSaveDialog(editor.getStage());
    if (file == null)
        return;/*from w  w w .ja v  a  2 s.com*/

    this.xdatFile.setValue(file);
    initialDirectory.setValue(file.getParentFile());

    save();
}

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());
        }/*  w ww .  ja v a 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:acmi.l2.clientmod.l2smr.Controller.java

@FXML
private void exportSMT3d() {
    List<Actor> actors = this.table.getSelectionModel().getSelectedItems().stream().map(Actor::clone)
            .collect(Collectors.toList());

    if (actors.isEmpty())
        return;//  w w  w .ja  v a 2  s .c o m

    if (showConfirm(Alert.AlertType.CONFIRMATION, "Export", null, "Separate? (new file per Actor)")) {
        DirectoryChooser directoryChooser = new DirectoryChooser();
        directoryChooser.setTitle("Select save folder");
        File dir = directoryChooser.showDialog(getStage());
        if (dir == null)
            return;

        longTask(progress -> {
            Object obj = getClassLoader().getOrCreateObject("Engine.Actor", IS_STRUCT);

            T3d t3d = new T3d(getClassLoader());
            try (UnrealPackage up = new UnrealPackage(
                    new File(getMapsDir(), unrChooser.getSelectionModel().getSelectedItem()), false)) {
                for (int i = 0; i < actors.size(); i++) {
                    progress.accept((double) i / actors.size());
                    Actor actor = actors.get(i);
                    UnrealPackage.ExportEntry entry = up.getExportTable().get(actor.getInd());
                    try (Writer fos = new FileWriter(new File(dir, entry.getObjectName().getName() + ".t3d"))) {
                        fos.write(t3d.toT3d(entry, 0).toString());
                    }
                }
                progress.accept(1.0);
            }
        }, e -> onException("Export failed", e));
    } else {
        FileChooser fileChooser = new FileChooser();
        fileChooser.getExtensionFilters().add(new FileChooser.ExtensionFilter("Unreal text", "*.t3d"));
        fileChooser.setTitle("Save");
        File file = fileChooser.showSaveDialog(getStage());
        if (file == null)
            return;

        longTask(progress -> {
            Object obj = getClassLoader().getOrCreateObject("Engine.Actor", IS_STRUCT);

            StringBuilder sb = new StringBuilder("Begin Map");
            T3d t3d = new T3d(getClassLoader());
            try (UnrealPackage up = new UnrealPackage(
                    new File(getMapsDir(), unrChooser.getSelectionModel().getSelectedItem()), false)) {
                for (int i = 0; i < actors.size(); i++) {
                    progress.accept((double) i / actors.size());
                    Actor actor = actors.get(i);
                    UnrealPackage.ExportEntry entry = up.getExportTable().get(actor.getInd());
                    sb.append(Util.newLine()).append(t3d.toT3d(entry, 0));
                }
            }
            sb.append(newLine()).append("End Map");
            progress.accept(-1.0);

            try (Writer fos = new FileWriter(file)) {
                fos.write(sb.toString());
            }
        }, e -> onException("Export failed", e));
    }
}

From source file:io.github.mzmine.modules.plots.msspectrum.MsSpectrumPlotWindowController.java

public void handleExportTXT(Event event) {
    FileChooser fileChooser = new FileChooser();
    fileChooser.setTitle("Export to TXT");
    fileChooser.getExtensionFilters().add(new ExtensionFilter("TXT", "*.txt"));

    // Remember last directory
    if (lastSaveDirectory != null && lastSaveDirectory.isDirectory())
        fileChooser.setInitialDirectory(lastSaveDirectory);

    // Show the file chooser
    File file = fileChooser.showSaveDialog(chartNode.getScene().getWindow());

    // If nothing was chosen, quit
    if (file == null)
        return;//from ww w  . j av  a  2 s  . co m

    // Save the last open directory
    lastSaveDirectory = file.getParentFile();

    final List<MsSpectrum> spectra = new ArrayList<>();
    for (MsSpectrumDataSet dataset : datasets) {
        spectra.add(dataset.getSpectrum());
    }

    // Do the export in a new thread
    final File finalFile = file;
    new Thread(() -> {
        try {
            TxtExportAlgorithm.exportSpectra(finalFile, spectra);
        } catch (Exception e) {
            MZmineGUI.displayMessage("Unable to export: " + e.getMessage());
            e.printStackTrace();
        }
    }).start();
}

From source file:io.github.mzmine.modules.plots.msspectrum.MsSpectrumPlotWindowController.java

public void handleExportMSP(Event event) {
    FileChooser fileChooser = new FileChooser();
    fileChooser.setTitle("Export to MSP");
    fileChooser.getExtensionFilters().add(new ExtensionFilter("NIST MSP format", "*.msp"));

    // Remember last directory
    if (lastSaveDirectory != null && lastSaveDirectory.isDirectory())
        fileChooser.setInitialDirectory(lastSaveDirectory);

    // Show the file chooser
    File file = fileChooser.showSaveDialog(chartNode.getScene().getWindow());

    // If nothing was chosen, quit
    if (file == null)
        return;/*from   w  w w .  j a  v a  2 s  .  c o  m*/

    // Save the last open directory
    lastSaveDirectory = file.getParentFile();

    final List<MsSpectrum> spectra = new ArrayList<>();
    for (MsSpectrumDataSet dataset : datasets) {
        spectra.add(dataset.getSpectrum());
    }

    // Do the export in a new thread
    final File finalFile = file;
    new Thread(() -> {
        try {
            MspExportAlgorithm.exportSpectra(finalFile, spectra);
        } catch (Exception e) {
            MZmineGUI.displayMessage("Unable to export: " + e.getMessage());
            e.printStackTrace();
        }
    }).start();
}