Search in sources :

Example 16 with FlameReader

use of org.jwildfire.create.tina.io.FlameReader in project JWildfire by thargor6.

the class IFlamesController method loadIFlameFromClipboardButton_clicked.

public void loadIFlameFromClipboardButton_clicked() {
    try {
        Clipboard clipboard = Toolkit.getDefaultToolkit().getSystemClipboard();
        Transferable clipData = clipboard.getContents(clipboard);
        if (clipData != null) {
            if (clipData.isDataFlavorSupported(DataFlavor.stringFlavor)) {
                String xml = (String) (clipData.getTransferData(DataFlavor.stringFlavor));
                List<Flame> flames = new FlameReader(prefs).readFlamesfromXML(xml);
                Flame flame = flames.get(0);
                importFlame(flame);
                messageHelper.showStatusMessage(getFlame(), "opened from clipboard");
            }
        }
    } catch (Throwable ex) {
        errorHandler.handleError(ex);
    }
}
Also used : FlameReader(org.jwildfire.create.tina.io.FlameReader) Transferable(java.awt.datatransfer.Transferable) Clipboard(java.awt.datatransfer.Clipboard) Flame(org.jwildfire.create.tina.base.Flame) RenderedFlame(org.jwildfire.create.tina.render.RenderedFlame)

Example 17 with FlameReader

use of org.jwildfire.create.tina.io.FlameReader in project JWildfire by thargor6.

the class IFlamesController method reloadFlameLibrary.

private void reloadFlameLibrary() {
    flameLibrary.clear();
    if (prefs.getIflamesFlameLibraryPath() != null && prefs.getIflamesFlameLibraryPath().length() > 0) {
        List<String> filenames = new ArrayList<String>();
        _scanFiles(prefs.getIflamesFlameLibraryPath(), filenames);
        for (String filename : filenames) {
            if (filename.endsWith("." + Tools.FILEEXT_FLAME)) {
                try {
                    List<Flame> flames = new FlameReader(prefs).readFlames(filename);
                    for (int i = flames.size() - 1; i >= 0; i--) {
                        addFlameToFlameLibrary(flames.get(i), new ThumbnailCacheKey(filename, String.valueOf(i)));
                    }
                } catch (Exception ex) {
                    ex.printStackTrace();
                }
            }
        }
    }
    refreshFlameLibrary();
    flameLibraryScrollPane.getParent().repaint();
}
Also used : FlameReader(org.jwildfire.create.tina.io.FlameReader) ThumbnailCacheKey(org.jwildfire.create.tina.swing.ThumbnailCacheKey) ArrayList(java.util.ArrayList) Flame(org.jwildfire.create.tina.base.Flame) RenderedFlame(org.jwildfire.create.tina.render.RenderedFlame)

Example 18 with FlameReader

use of org.jwildfire.create.tina.io.FlameReader in project JWildfire by thargor6.

the class IFlamesController method loadFlamesButton_clicked.

public void loadFlamesButton_clicked() {
    JFileChooser chooser = new FlameFileChooser(prefs);
    if (prefs.getInputFlamePath() != null) {
        try {
            chooser.setCurrentDirectory(new File(prefs.getInputFlamePath()));
        } catch (Exception ex) {
            ex.printStackTrace();
        }
    }
    chooser.setMultiSelectionEnabled(true);
    if (chooser.showOpenDialog(centerPanel) == JFileChooser.APPROVE_OPTION) {
        Throwable lastError = null;
        for (File file : chooser.getSelectedFiles()) {
            try {
                List<Flame> flames = new FlameReader(prefs).readFlames(file.getAbsolutePath());
                prefs.setLastInputFlameFile(file);
                for (int i = flames.size() - 1; i >= 0; i--) {
                    addFlameToFlameLibrary(flames.get(i), new ThumbnailCacheKey(file.getAbsolutePath(), String.valueOf(i)));
                }
            } catch (Throwable ex) {
                lastError = ex;
            }
        }
        refreshFlameLibrary();
        if (lastError != null) {
            errorHandler.handleError(lastError);
        }
    }
}
Also used : JFileChooser(javax.swing.JFileChooser) FlameReader(org.jwildfire.create.tina.io.FlameReader) ThumbnailCacheKey(org.jwildfire.create.tina.swing.ThumbnailCacheKey) FlameFileChooser(org.jwildfire.create.tina.swing.FlameFileChooser) File(java.io.File) Flame(org.jwildfire.create.tina.base.Flame) RenderedFlame(org.jwildfire.create.tina.render.RenderedFlame)

Example 19 with FlameReader

use of org.jwildfire.create.tina.io.FlameReader in project JWildfire by thargor6.

the class MeshGenController method fromClipboardButton_clicked.

public void fromClipboardButton_clicked() {
    Flame newFlame = null;
    try {
        Clipboard clipboard = Toolkit.getDefaultToolkit().getSystemClipboard();
        Transferable clipData = clipboard.getContents(clipboard);
        if (clipData != null) {
            if (clipData.isDataFlavorSupported(DataFlavor.stringFlavor)) {
                String xml = (String) (clipData.getTransferData(DataFlavor.stringFlavor));
                List<Flame> flames = new FlameReader(prefs).readFlamesfromXML(xml);
                if (flames.size() > 0) {
                    newFlame = flames.get(0);
                }
            }
        }
        if (newFlame == null) {
            throw new Exception("There is currently no valid flame in the clipboard");
        } else {
            importFlame(newFlame);
        }
    } catch (Throwable ex) {
        errorHandler.handleError(ex);
    }
}
Also used : FlameReader(org.jwildfire.create.tina.io.FlameReader) Transferable(java.awt.datatransfer.Transferable) Clipboard(java.awt.datatransfer.Clipboard) Flame(org.jwildfire.create.tina.base.Flame) RenderedFlame(org.jwildfire.create.tina.render.RenderedFlame)

Example 20 with FlameReader

use of org.jwildfire.create.tina.io.FlameReader in project JWildfire by thargor6.

the class TinaSWFAnimatorController method loadFlameButton_clicked.

public void loadFlameButton_clicked() {
    try {
        JFileChooser chooser = new FlameFileChooser(prefs);
        if (prefs.getInputFlamePath() != null) {
            try {
                chooser.setCurrentDirectory(new File(prefs.getInputFlamePath()));
            } catch (Exception ex) {
                ex.printStackTrace();
            }
        }
        if (chooser.showOpenDialog(swfAnimatorPreviewRootPanel) == JFileChooser.APPROVE_OPTION) {
            File file = chooser.getSelectedFile();
            List<Flame> flames = new FlameReader(prefs).readFlames(file.getAbsolutePath());
            Flame newFlame = flames.get(0);
            prefs.setLastInputFlameFile(file);
            addFlame(newFlame);
            enableControls();
        }
    } catch (Throwable ex) {
        errorHandler.handleError(ex);
    }
}
Also used : JFileChooser(javax.swing.JFileChooser) FlameReader(org.jwildfire.create.tina.io.FlameReader) File(java.io.File) Flame(org.jwildfire.create.tina.base.Flame) RenderedFlame(org.jwildfire.create.tina.render.RenderedFlame)

Aggregations

FlameReader (org.jwildfire.create.tina.io.FlameReader)25 Flame (org.jwildfire.create.tina.base.Flame)24 RenderedFlame (org.jwildfire.create.tina.render.RenderedFlame)20 File (java.io.File)12 JFileChooser (javax.swing.JFileChooser)10 Clipboard (java.awt.datatransfer.Clipboard)7 Transferable (java.awt.datatransfer.Transferable)7 FlameFileChooser (org.jwildfire.create.tina.swing.FlameFileChooser)5 FlameRenderer (org.jwildfire.create.tina.render.FlameRenderer)3 RenderInfo (org.jwildfire.create.tina.render.RenderInfo)3 ArrayList (java.util.ArrayList)2 ThumbnailCacheKey (org.jwildfire.create.tina.swing.ThumbnailCacheKey)2 HashMap (java.util.HashMap)1 ImageIcon (javax.swing.ImageIcon)1 XForm (org.jwildfire.create.tina.base.XForm)1 FACLFlameWriter (org.jwildfire.create.tina.faclrender.FACLFlameWriter)1 FACLRenderResult (org.jwildfire.create.tina.faclrender.FACLRenderResult)1 FlameWriter (org.jwildfire.create.tina.io.FlameWriter)1 RGBPalette (org.jwildfire.create.tina.palette.RGBPalette)1 Variation (org.jwildfire.create.tina.variation.Variation)1