Search in sources :

Example 11 with Loader

use of com.cburch.logisim.file.Loader in project logisim-evolution by reds-heig.

the class ProjectActions method doSave.

public static boolean doSave(Project proj) {
    Loader loader = proj.getLogisimFile().getLoader();
    File f = loader.getMainFile();
    if (f == null)
        return doSaveAs(proj);
    else
        return doSave(proj, f);
}
Also used : Loader(com.cburch.logisim.file.Loader) LogisimFile(com.cburch.logisim.file.LogisimFile) File(java.io.File)

Example 12 with Loader

use of com.cburch.logisim.file.Loader in project logisim-evolution by reds-heig.

the class ProjectActions method doOpen.

public static Project doOpen(SplashScreen monitor, File source, Map<File, File> substitutions) throws LoadFailedException {
    if (monitor != null)
        monitor.setProgress(SplashScreen.FILE_LOAD);
    Loader loader = new Loader(monitor);
    LogisimFile file = loader.openLogisimFile(source, substitutions);
    AppPreferences.updateRecentFile(source);
    return completeProject(monitor, loader, file, false);
}
Also used : LogisimFile(com.cburch.logisim.file.LogisimFile) Loader(com.cburch.logisim.file.Loader)

Example 13 with Loader

use of com.cburch.logisim.file.Loader in project logisim-evolution by reds-heig.

the class ProjectActions method createNewFile.

public static LogisimFile createNewFile(Project baseProject) {
    Loader loader = new Loader(baseProject == null ? null : baseProject.getFrame());
    InputStream templReader = AppPreferences.getTemplate().createStream();
    LogisimFile file;
    try {
        file = loader.openLogisimFile(templReader);
    } catch (IOException ex) {
        displayException(baseProject.getFrame(), ex);
        file = createEmptyFile(loader, baseProject);
    } catch (LoadFailedException ex) {
        if (!ex.isShown()) {
            displayException(baseProject.getFrame(), ex);
        }
        file = createEmptyFile(loader, baseProject);
    } finally {
        try {
            templReader.close();
        } catch (IOException e) {
        }
    }
    return file;
}
Also used : LogisimFile(com.cburch.logisim.file.LogisimFile) InputStream(java.io.InputStream) Loader(com.cburch.logisim.file.Loader) IOException(java.io.IOException) LoadFailedException(com.cburch.logisim.file.LoadFailedException)

Example 14 with Loader

use of com.cburch.logisim.file.Loader in project logisim-evolution by reds-heig.

the class ProjectActions method doSave.

private static boolean doSave(Project proj, File f) {
    Loader loader = proj.getLogisimFile().getLoader();
    Tool oldTool = proj.getTool();
    proj.setTool(null);
    boolean ret = loader.save(proj.getLogisimFile(), f);
    if (ret) {
        AppPreferences.updateRecentFile(f);
        proj.setFileAsClean();
    }
    proj.setTool(oldTool);
    return ret;
}
Also used : Loader(com.cburch.logisim.file.Loader) Tool(com.cburch.logisim.tools.Tool)

Example 15 with Loader

use of com.cburch.logisim.file.Loader in project logisim-evolution by reds-heig.

the class Projects method findProjectFor.

public static Project findProjectFor(File query) {
    for (Project proj : openProjects) {
        Loader loader = proj.getLogisimFile().getLoader();
        if (loader == null) {
            continue;
        }
        File f = loader.getMainFile();
        if (query.equals(f)) {
            return proj;
        }
    }
    return null;
}
Also used : Loader(com.cburch.logisim.file.Loader) File(java.io.File)

Aggregations

Loader (com.cburch.logisim.file.Loader)16 LogisimFile (com.cburch.logisim.file.LogisimFile)12 File (java.io.File)10 LoadFailedException (com.cburch.logisim.file.LoadFailedException)6 JFileChooser (javax.swing.JFileChooser)6 IOException (java.io.IOException)5 Library (com.cburch.logisim.tools.Library)3 Circuit (com.cburch.logisim.circuit.Circuit)2 Project (com.cburch.logisim.proj.Project)2 InputStream (java.io.InputStream)2 JarFile (java.util.jar.JarFile)2 CircuitState (com.cburch.logisim.circuit.CircuitState)1 LoadedLibrary (com.cburch.logisim.file.LoadedLibrary)1 Frame (com.cburch.logisim.gui.main.Frame)1 Print (com.cburch.logisim.gui.main.Print)1 LogisimMenuBar (com.cburch.logisim.gui.menu.LogisimMenuBar)1 Instance (com.cburch.logisim.instance.Instance)1 Tool (com.cburch.logisim.tools.Tool)1 FileNotFoundException (java.io.FileNotFoundException)1 MalformedURLException (java.net.MalformedURLException)1