Example usage for com.badlogic.gdx.graphics.g2d ParticleEmitter setName

List of usage examples for com.badlogic.gdx.graphics.g2d ParticleEmitter setName

Introduction

In this page you can find the example usage for com.badlogic.gdx.graphics.g2d ParticleEmitter setName.

Prototype

public void setName(String name) 

Source Link

Usage

From source file:com.lynk.gdx.tool.particleeditor.EffectPanel.java

License:Apache License

void saveEffect() {
    FileDialog dialog = new FileDialog(editor, "Save Effect", FileDialog.SAVE);
    if (lastDir != null)
        dialog.setDirectory(lastDir);//www . jav a  2 s  .  com
    dialog.setVisible(true);
    String file = dialog.getFile();
    String dir = dialog.getDirectory();
    if (dir == null || file == null || file.trim().length() == 0)
        return;
    lastDir = dir;
    int index = 0;
    File effectFile = new File(dir, file);

    // save each image path as relative path to effect file directory
    URI effectDirUri = effectFile.getParentFile().toURI();
    for (ParticleEmitter emitter : editor.effect.getEmitters()) {
        emitter.setName((String) emitterTableModel.getValueAt(index++, 0));
        String imagePath = emitter.getImagePath();
        if ((imagePath.contains("/") || imagePath.contains("\\")) && !imagePath.contains("..")) {
            // it's absolute, make it relative:
            URI imageUri = new File(emitter.getImagePath()).toURI();
            emitter.setImagePath(effectDirUri.relativize(imageUri).getPath());
        }
    }

    File outputFile = new File(dir, file);
    Writer fileWriter = null;
    try {
        fileWriter = new FileWriter(outputFile);
        editor.effect.save(fileWriter);
    } catch (Exception ex) {
        System.out.println("Error saving effect: " + outputFile.getAbsolutePath());
        ex.printStackTrace();
        JOptionPane.showMessageDialog(editor, "Error saving effect.");
    } finally {
        StreamUtils.closeQuietly(fileWriter);
    }
}