·
Ask
for overwriting files. Ask to save
before exiting, opening files, starting new circuits.
·
Visible
indication of initial value / watch value on the main screen (without having to
go into "properties" to see them)
·
Make
the keyboard shortcuts work even immediately after loading a new circuit in.
·
Fix
all the keyboard shortcuts.
·
Put
arrows on the pictures of the state machine input/outputs.
·
Save
in a thread instead of just not repainting the screen.
·
A
functional run button.
·
Automatically
add a file extension to a saved file name if it's not ".lsg"
·
Add
a clear button (there's already some code in place for this).
·
Make
sure the name bank in "LogicElement" is
correct even on clear/new/open.
·
Undo/redo
clearing the screen.
·
Undo/redo
changing properties.
·
Actually
implement the add/remove workspace.
·
Figure
out how to give certain components the keyboard focus. Have the IntRangeDialog
automatically give focus to the "ok" button. Have the properties dialog give focus to the
"ok" button or else the highlighted name field.
·
Have
the properties dialog do some error checking for legal identifiers (before
getting to logicsim).
·
Let
the properties dialog show the number of bits, number of input/output points,
& anything else special to certain components.
·
Add
properties of Solder Points and Wires, so people can see how many bits they
carry & such.
·
Zoom
in & zoom out consistently (right now it's a list for one & a
percentage for another)
·
Let
the user cancel out of making an element.
·
To
make the state machine editor a lot easier for the next guy:
o
Make
LineSets directed w/ having exactly one input
o
Make
the ElementEditorPane, not just the Circuit, capable
of handling LineSet
·
Don't
ask about the deletion policy if there are no wires attached to the selected
component(s).
·
Provide
for hex values
·
Put
dots after every label that pops up a dialog.
·
A
way to edit a memory file.
·
Make
the ElementEditorPane scroll-savvy so that each
scroll increment moves 1 grid square.
·
Double-click
to pull up properties.
·
A
bus
·
Improved
searching technique (i.e. not linear search!) for finding the circuit you
clicked on - any intersecting circuits, etc.
This may require 4 sorted collections (trees?) for the elements in the
circuit, sorted by beginning x value, ending x value, beginning y value, ending
y value.
·
A
custom component editor.
·
Selecting
blocks of the circuit.
o
Included
the option of selecting all the connections for deletion?
·
Selecting
multiple elements (not in a block).
·
Copy/paste
(especially w/ blocks of the circuit).
·
Remember
window size/position.
·
Remember
options.