本文整理汇总了Java中com.cburch.logisim.file.LogisimFile类的典型用法代码示例。如果您正苦于以下问题:Java LogisimFile类的具体用法?Java LogisimFile怎么用?Java LogisimFile使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
LogisimFile类属于com.cburch.logisim.file包,在下文中一共展示了LogisimFile类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: createEmptyFile
import com.cburch.logisim.file.LogisimFile; //导入依赖的package包/类
private static LogisimFile createEmptyFile(Loader loader) {
InputStream templReader = AppPreferences.getEmptyTemplate().createStream();
LogisimFile file;
try {
file = loader.openLogisimFile(templReader);
} catch (Throwable t) {
file = LogisimFile.createNew(loader);
file.addCircuit(new Circuit("main"));
} finally {
try {
templReader.close();
} catch (IOException e) {
}
}
return file;
}
示例2: CircuitJList
import com.cburch.logisim.file.LogisimFile; //导入依赖的package包/类
public CircuitJList(Project proj, boolean includeEmpty) {
LogisimFile file = proj.getLogisimFile();
Circuit current = proj.getCurrentCircuit();
Vector<Circuit> options = new Vector<Circuit>();
boolean currentFound = false;
for (Circuit circ : file.getCircuits()) {
if (!includeEmpty || circ.getBounds() != Bounds.EMPTY_BOUNDS) {
if (circ == current)
currentFound = true;
options.add(circ);
}
}
setListData(options);
if (currentFound)
setSelectedValue(current, true);
setVisibleRowCount(Math.min(6, options.size()));
}
示例3: setFile
import com.cburch.logisim.file.LogisimFile; //导入依赖的package包/类
private void setFile(LogisimFile lib) {
model.fireStructureChanged();
expandRow(0);
for (Circuit circ : lib.getCircuits()) {
circ.addCircuitListener(this);
}
subListener = new SubListener(); // create new one so that old
// listeners die away
for (Library sublib : lib.getLibraries()) {
if (sublib instanceof LibraryEventSource) {
((LibraryEventSource) sublib).addLibraryListener(subListener);
}
}
}
示例4: doLoadBuiltinLibrary
import com.cburch.logisim.file.LogisimFile; //导入依赖的package包/类
public static void doLoadBuiltinLibrary(Project proj) {
LogisimFile file = proj.getLogisimFile();
List<Library> baseBuilt = file.getLoader().getBuiltin().getLibraries();
ArrayList<Library> builtins = new ArrayList<Library>(baseBuilt);
builtins.removeAll(file.getLibraries());
if (builtins.isEmpty()) {
JOptionPane.showMessageDialog(proj.getFrame(), Strings.get("loadBuiltinNoneError"),
Strings.get("loadBuiltinErrorTitle"), JOptionPane.INFORMATION_MESSAGE);
return;
}
LibraryJList list = new LibraryJList(builtins);
JScrollPane listPane = new JScrollPane(list);
int action = JOptionPane.showConfirmDialog(proj.getFrame(), listPane, Strings.get("loadBuiltinDialogTitle"),
JOptionPane.OK_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE);
if (action == JOptionPane.OK_OPTION) {
Library[] libs = list.getSelectedLibraries();
if (libs != null)
proj.doAction(LogisimFileActions.loadLibraries(libs));
}
}
示例5: doUnloadLibraries
import com.cburch.logisim.file.LogisimFile; //导入依赖的package包/类
public static void doUnloadLibraries(Project proj) {
LogisimFile file = proj.getLogisimFile();
ArrayList<Library> canUnload = new ArrayList<Library>();
for (Library lib : file.getLibraries()) {
String message = file.getUnloadLibraryMessage(lib);
if (message == null)
canUnload.add(lib);
}
if (canUnload.isEmpty()) {
JOptionPane.showMessageDialog(proj.getFrame(), Strings.get("unloadNoneError"),
Strings.get("unloadErrorTitle"), JOptionPane.INFORMATION_MESSAGE);
return;
}
LibraryJList list = new LibraryJList(canUnload);
JScrollPane listPane = new JScrollPane(list);
int action = JOptionPane.showConfirmDialog(proj.getFrame(), listPane, Strings.get("unloadLibrariesDialogTitle"),
JOptionPane.OK_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE);
if (action == JOptionPane.OK_OPTION) {
Library[] libs = list.getSelectedLibraries();
if (libs != null)
proj.doAction(LogisimFileActions.unloadLibraries(libs));
}
}
示例6: createEmptyFile
import com.cburch.logisim.file.LogisimFile; //导入依赖的package包/类
private static LogisimFile createEmptyFile(Loader loader,Project proj) {
InputStream templReader = AppPreferences.getEmptyTemplate()
.createStream();
LogisimFile file;
try {
file = loader.openLogisimFile(templReader);
} catch (Exception t) {
file = LogisimFile.createNew(loader,proj);
file.addCircuit(new Circuit("main", file,proj));
} finally {
try {
templReader.close();
} catch (IOException e) {
}
}
return file;
}
示例7: CircuitJList
import com.cburch.logisim.file.LogisimFile; //导入依赖的package包/类
@SuppressWarnings("unchecked")
public CircuitJList(Project proj, boolean includeEmpty) {
LogisimFile file = proj.getLogisimFile();
Circuit current = proj.getCurrentCircuit();
Vector<Circuit> options = new Vector<Circuit>();
boolean currentFound = false;
for (Circuit circ : file.getCircuits()) {
if (!includeEmpty || circ.getBounds() != Bounds.EMPTY_BOUNDS) {
if (circ == current)
currentFound = true;
options.add(circ);
}
}
setListData(options);
if (currentFound)
setSelectedValue(current, true);
setVisibleRowCount(Math.min(6, options.size()));
}
示例8: computeRevertEnabled
import com.cburch.logisim.file.LogisimFile; //导入依赖的package包/类
private void computeRevertEnabled() {
// do this separately since it can happen rather often
Project proj = frame.getProject();
LogisimFile file = proj.getLogisimFile();
Circuit cur = proj.getCurrentCircuit();
boolean isProjectCircuit = file.contains(cur);
boolean viewAppearance = frame.getEditorView().equals(
Frame.EDIT_APPEARANCE);
boolean canRevert = isProjectCircuit && viewAppearance
&& !cur.getAppearance().isDefaultAppearance();
boolean oldValue = menubar
.isEnabled(LogisimMenuBar.REVERT_APPEARANCE);
if (canRevert != oldValue) {
menubar.setEnabled(LogisimMenuBar.REVERT_APPEARANCE, canRevert);
fireEnableChanged();
}
}
示例9: doLoadBuiltinLibrary
import com.cburch.logisim.file.LogisimFile; //导入依赖的package包/类
public static void doLoadBuiltinLibrary(Project proj) {
LogisimFile file = proj.getLogisimFile();
List<Library> baseBuilt = file.getLoader().getBuiltin().getLibraries();
ArrayList<Library> builtins = new ArrayList<Library>(baseBuilt);
builtins.removeAll(file.getLibraries());
if (builtins.isEmpty()) {
JOptionPane.showMessageDialog(proj.getFrame(),
Strings.get("loadBuiltinNoneError"),
Strings.get("loadBuiltinErrorTitle"),
JOptionPane.INFORMATION_MESSAGE);
return;
}
LibraryJList list = new LibraryJList(builtins);
JScrollPane listPane = new JScrollPane(list);
int action = JOptionPane.showConfirmDialog(proj.getFrame(), listPane,
Strings.get("loadBuiltinDialogTitle"),
JOptionPane.OK_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE);
if (action == JOptionPane.OK_OPTION) {
Library[] libs = list.getSelectedLibraries();
if (libs != null)
proj.doAction(LogisimFileActions.loadLibraries(libs,proj.getLogisimFile()));
}
}
示例10: doUnloadLibraries
import com.cburch.logisim.file.LogisimFile; //导入依赖的package包/类
public static void doUnloadLibraries(Project proj) {
LogisimFile file = proj.getLogisimFile();
ArrayList<Library> canUnload = new ArrayList<Library>();
for (Library lib : file.getLibraries()) {
String message = file.getUnloadLibraryMessage(lib);
if (message == null)
canUnload.add(lib);
}
if (canUnload.isEmpty()) {
JOptionPane.showMessageDialog(proj.getFrame(),
Strings.get("unloadNoneError"),
Strings.get("unloadErrorTitle"),
JOptionPane.INFORMATION_MESSAGE);
return;
}
LibraryJList list = new LibraryJList(canUnload);
JScrollPane listPane = new JScrollPane(list);
int action = JOptionPane.showConfirmDialog(proj.getFrame(), listPane,
Strings.get("unloadLibrariesDialogTitle"),
JOptionPane.OK_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE);
if (action == JOptionPane.OK_OPTION) {
Library[] libs = list.getSelectedLibraries();
if (libs != null)
proj.doAction(LogisimFileActions.unloadLibraries(libs));
}
}
示例11: CircuitJList
import com.cburch.logisim.file.LogisimFile; //导入依赖的package包/类
public CircuitJList(Project proj, boolean includeEmpty) {
LogisimFile file = proj.getLogisimFile();
Circuit current = proj.getCurrentCircuit();
Vector<Circuit> options = new Vector<Circuit>();
boolean currentFound = false;
for (Circuit circ : file.getCircuits()) {
if (!includeEmpty || circ.getBounds() != Bounds.EMPTY_BOUNDS) {
if (circ == current) currentFound = true;
options.add(circ);
}
}
setListData(options);
if (currentFound) setSelectedValue(current, true);
setVisibleRowCount(Math.min(6, options.size()));
}
示例12: doLoadBuiltinLibrary
import com.cburch.logisim.file.LogisimFile; //导入依赖的package包/类
public static void doLoadBuiltinLibrary(Project proj) {
LogisimFile file = proj.getLogisimFile();
List<Library> baseBuilt = file.getLoader().getBuiltin().getLibraries();
ArrayList<Library> builtins = new ArrayList<Library>(baseBuilt);
builtins.removeAll(file.getLibraries());
if (builtins.isEmpty()) {
JOptionPane.showMessageDialog(proj.getFrame(),
Strings.get("loadBuiltinNoneError"),
Strings.get("loadBuiltinErrorTitle"),
JOptionPane.INFORMATION_MESSAGE);
return;
}
LibraryJList list = new LibraryJList(builtins);
JScrollPane listPane = new JScrollPane(list);
int action = JOptionPane.showConfirmDialog(proj.getFrame(), listPane,
Strings.get("loadBuiltinDialogTitle"), JOptionPane.OK_CANCEL_OPTION,
JOptionPane.QUESTION_MESSAGE);
if (action == JOptionPane.OK_OPTION) {
Library[] libs = list.getSelectedLibraries();
if (libs != null) proj.doAction(LogisimFileActions.loadLibraries(libs));
}
}
示例13: doUnloadLibraries
import com.cburch.logisim.file.LogisimFile; //导入依赖的package包/类
public static void doUnloadLibraries(Project proj) {
LogisimFile file = proj.getLogisimFile();
ArrayList<Library> canUnload = new ArrayList<Library>();
for (Library lib : file.getLibraries()) {
String message = file.getUnloadLibraryMessage(lib);
if (message == null) canUnload.add(lib);
}
if (canUnload.isEmpty()) {
JOptionPane.showMessageDialog(proj.getFrame(),
Strings.get("unloadNoneError"),
Strings.get("unloadErrorTitle"),
JOptionPane.INFORMATION_MESSAGE);
return;
}
LibraryJList list = new LibraryJList(canUnload);
JScrollPane listPane = new JScrollPane(list);
int action = JOptionPane.showConfirmDialog(proj.getFrame(), listPane,
Strings.get("unloadLibrariesDialogTitle"), JOptionPane.OK_CANCEL_OPTION,
JOptionPane.QUESTION_MESSAGE);
if (action == JOptionPane.OK_OPTION) {
Library[] libs = list.getSelectedLibraries();
if (libs != null) proj.doAction(LogisimFileActions.unloadLibraries(libs));
}
}
示例14: completeProject
import com.cburch.logisim.file.LogisimFile; //导入依赖的package包/类
private static Project completeProject(SplashScreen monitor, Loader loader, LogisimFile file, boolean isStartup) {
if (monitor != null)
monitor.setProgress(SplashScreen.PROJECT_CREATE);
Project ret = new Project(file);
if (monitor != null)
monitor.setProgress(SplashScreen.FRAME_CREATE);
SwingUtilities.invokeLater(new CreateFrame(loader, ret, isStartup));
return ret;
}
示例15: doNew
import com.cburch.logisim.file.LogisimFile; //导入依赖的package包/类
public static Project doNew(Project baseProject) {
LogisimFile file = createNewFile(baseProject);
Project newProj = new Project(file);
Frame frame = createFrame(baseProject, newProj);
frame.setVisible(true);
frame.getCanvas().requestFocus();
newProj.getLogisimFile().getLoader().setParent(frame);
return newProj;
}