Package com.cburch.logisim.comp

Examples of com.cburch.logisim.comp.ComponentFactory


      return ret;
    }
  }
 
  public ComponentFactory getFactory(Class<? extends Library> libraryClass) {
    ComponentFactory ret = factory;
    if (factory != null || factoryLoadAttempted) {
      return ret;
    } else {
      String msg = "";
      try {
View Full Code Here


  }
 
  AttributeSet getBase() {
    AttributeSet ret = baseAttrs;
    if (ret == null) {
      ComponentFactory fact = factory;
      if (fact == null) {
        fact = desc.getFactory(descBase);
        factory = fact;
      }
      if (fact == null) {
        ret = AttributeSets.EMPTY;
      } else {
        ret = fact.createAttributeSet();
        ret.addAttributeListener(this);
      }
      baseAttrs = ret;
    }
    return ret;
View Full Code Here

    SimulationTreeModel model = (SimulationTreeModel) tree.getModel();
    if (ret instanceof JLabel) {
      JLabel label = (JLabel) ret;
      if (value instanceof SimulationTreeNode) {
        SimulationTreeNode node = (SimulationTreeNode) value;
        ComponentFactory factory = node.getComponentFactory();
        if (factory != null) {
          label.setIcon(new RendererIcon(factory, node.isCurrentView(model)));
        }
      }
    }
View Full Code Here

      if (counts.containsKey(subFactory)) {
        int multiplier = counts.get(subFactory).simpleCount;
        Map<ComponentFactory,Count> subCount;
        subCount = doRecursiveCount(sub, include, countMap);
        for (Count subcount : subCount.values()) {
          ComponentFactory subfactory = subcount.factory;
          Count supercount = counts.get(subfactory);
          if (supercount == null) {
            supercount = new Count(subfactory);
            counts.put(subfactory, supercount);
          }
View Full Code Here

 
  private static Map<ComponentFactory,Count> doSimpleCount(Circuit circuit) {
    Map<ComponentFactory,Count> counts;
    counts = new HashMap<ComponentFactory,Count>();
    for (Component comp : circuit.getNonWires()) {
      ComponentFactory factory = comp.getFactory();
      Count count = counts.get(factory);
      if (count == null) {
        count = new Count(factory);
        counts.put(factory, count);
      }
View Full Code Here

  }
 
  private static void doUniqueCounts(Map<ComponentFactory,Count> counts,
      Map<Circuit,Map<ComponentFactory,Count>> circuitCounts) {
    for (Count count : counts.values()) {
      ComponentFactory factory = count.getFactory();
      int unique = 0;
      for (Circuit circ : circuitCounts.keySet()) {
        Count subcount = circuitCounts.get(circ).get(factory);
        if (subcount != null) {
          unique += subcount.simpleCount;
View Full Code Here

 
  private static List<Count> sortCounts(Map<ComponentFactory,Count> counts,
      LogisimFile file) {
    List<Count> ret = new ArrayList<Count>();
    for (AddTool tool : file.getTools()) {
      ComponentFactory factory = tool.getFactory();
      Count count = counts.get(factory);
      if (count != null) {
        count.library = file;
        ret.add(count);
      }
    }
    for (Library lib : file.getLibraries()) {
      for (Tool tool : lib.getTools()) {
        if (tool instanceof AddTool) {
          ComponentFactory factory = ((AddTool) tool).getFactory();
          Count count = counts.get(factory);
          if (count != null) {
            count.library = lib;
            ret.add(count);
          }
View Full Code Here

  }
 
  private static Count getTotal(List<Count> counts, Set<Circuit> exclude) {
    Count ret = new Count(null);
    for (Count count : counts) {
      ComponentFactory factory = count.getFactory();
      Circuit factoryCirc = null;
      if (factory instanceof SubcircuitFactory) {
        factoryCirc = ((SubcircuitFactory) factory).getSubcircuit();
      }
      if (exclude == null || !exclude.contains(factoryCirc)) {
View Full Code Here

      implements LibraryListener, CircuitListener {
    public void libraryChanged(LibraryEvent e) {
      switch (e.getAction()) {
      case LibraryEvent.ADD_TOOL:
        if (e.getData() instanceof AddTool) {
          ComponentFactory factory = ((AddTool) e.getData()).getFactory();
          if (factory instanceof SubcircuitFactory) {
            SubcircuitFactory circFact = (SubcircuitFactory) factory;
            processCircuit(circFact.getSubcircuit());
          }
        }
        break;
      case LibraryEvent.REMOVE_TOOL:
        if (e.getData() instanceof AddTool) {
          ComponentFactory factory = ((AddTool) e.getData()).getFactory();
          if (factory instanceof SubcircuitFactory) {
            SubcircuitFactory circFact = (SubcircuitFactory) factory;
            Circuit circ = circFact.getSubcircuit();
            depends.removeNode(circ);
            circ.removeCircuitListener(this);
View Full Code Here

    frame.getCanvas().getSelection().addListener(this);
  }
 
  @Override
  public String getTitle() {
    ComponentFactory wireFactory = null;
    ComponentFactory factory = null;
    int factoryCount = 0;
    int totalCount = 0;
    boolean variousFound = false;
   
    Selection selection = frame.getCanvas().getSelection();
    for (Component comp : selection.getComponents()) {
      ComponentFactory fact = comp.getFactory();
      if (fact == factory) {
        factoryCount++;
      } else if (comp instanceof Wire) {
        wireFactory = fact;
        if (factory == null) {
View Full Code Here

TOP

Related Classes of com.cburch.logisim.comp.ComponentFactory

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.