| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 |
- <html>
- <head>
- <title>Library Class</title>
- </head>
- <body bgcolor="FFFFFF">
- <h1>Library Class</h1>
- <p>The access point for the JAR library is a class that extends the
- <code>Library</code> class. The library's main job is to list the tools that are
- available through the library; most often, the tools are all tools
- to add the various components defined - that is, instances of the
- <code>AddTool</code> class working with different component factories.</p>
- <h2>Components</h2>
- <pre>
- package com.cburch.gray;
- import java.util.Arrays;
- import java.util.List;
- import com.cburch.logisim.tools.AddTool;
- import com.cburch.logisim.tools.Library;
- /** The library of components that the user can access. */
- public class Components extends Library {
- /** The list of all tools contained in this library. Technically,
- * libraries contain tools, which is a slightly more general concept
- * than components; practically speaking, though, you'll most often want
- * to create AddTools for new components that can be added into the circuit.
- */
- private List<AddTool> tools;
-
- /** Constructs an instance of this library. This constructor is how
- * Logisim accesses first when it opens the JAR file: It looks for
- * a no-arguments constructor method of the user-designated class.
- */
- public Components() {
- tools = Arrays.asList(new AddTool[] {
- new AddTool(new GrayIncrementer()),
- new AddTool(new SimpleGrayCounter()),
- new AddTool(new GrayCounter()),
- });
- }
-
- /** Returns the name of the library that the user will see. */
- public String getDisplayName() {
- return "Gray Tools";
- }
-
- /** Returns a list of all the tools available in this library. */
- public List<AddTool> getTools() {
- return tools;
- }
- }
- </pre>
- <p><strong>Next:</strong> <a href="simpctr.html">Simple Gray Code Counter</a>.</p>
- </body>
- </html>
|