logisim-evolution icon indicating copy to clipboard operation
logisim-evolution copied to clipboard

Logisim-HolyCross appearance settings not saved

Open prlaba opened this issue 2 years ago • 10 comments

If you use a component from a library and assign it the Logisim-HolyCross appearance setting, the setting is not saved. When you close and reopen the master circuit, the component's appearance reverts back to Logisim-Evolution, messing up all the connections to/from the component.

prlaba avatar Jun 17 '22 01:06 prlaba

Apparently, the subcircuit assumes the appearance assigned to it in the library. If you change the appearance to something else, that appearance will not be saved when the master circuit is closed and reopened; it reverts back to the subcircuit's original appearance.

This still seems like a bug, as the subcircuit's appearance should be able to be changed, the same as a component.

prlaba avatar Jun 17 '22 01:06 prlaba

Your issue might be related to the still open issue #1379. Unfortunately, our time for Logisim-evolution is currently limited, as we first need to wrap up the spring term.

maehne avatar Jun 17 '22 06:06 maehne

I discovered that the appearance you assign to a circuit is the appearance that "sticks" when you use it in a master circuit.

It would be better if you could change the appearance of a subcircuit in the master circuit, consistent with how a component works.

prlaba avatar Jul 04 '22 16:07 prlaba

@prlaba: PR #1380 fixed the potentially related issue #1379. Could you please check whether this issue still is present in Logisim-evolution 3.8.0?

maehne avatar Oct 08 '22 19:10 maehne

I am running a build from develop as of yesterday, and I can confirm that if a sub-circuit loaded as a library has its appearance changed in an instance within in a new design, the design is saved, and then the saved design is reloaded, the library instance reverts to the appearance as originally defined, not as the changed appearance. All connections are then broken.

chuckb avatar Jan 23 '23 17:01 chuckb

@chuckb: Would you be able to provide a .circ file as a starting point point + step for step instructions to reproduce the issue?

maehne avatar Jan 24 '23 16:01 maehne

Circ file will not show the states. Steps to repro:

  1. Create new circ, call it childlib. Rename main to child.
  2. Add and gate. Hook up pins. Leave project appearance as Logisim-Evolution.
  3. Save project. Close project.
  4. Create new circ, call it parentlib. Rename main to parent.
  5. Import childlib project.
  6. Place child on parent.
  7. Change child appearance to classic.
  8. Hook up pins to child component.
  9. Save parent. Close logisim.
  10. Reopen logisim. Load parentlib.
  11. Child component appearance on parent circuit is incorrectly Logisim-Evolution (not classic) and pins are disconnected.

chuckb avatar Jan 29 '23 19:01 chuckb

@chuckb: Thanks for these detailed steps to reproduce the issue!

@BFH-ktt1: I can confirm the bug!

maehne avatar Jan 30 '23 11:01 maehne

I may have some time in the next few days to take a stab at fixing it...

chuckb avatar Jan 30 '23 12:01 chuckb

I may have some time in the next few days to take a stab at fixing it...

@chuckb: That would be great!

maehne avatar Jan 31 '23 20:01 maehne