Here is how gschem implements undo: Basically after every action (including zooming and panning) the schematic is saved to disk (in /tmp). Gschem do clean up after itself when you exit. Should gschem crash, the saved files are left alone in /tmp.
Redo only applies when you do an Undo. You can undo something and then immediately redo it. However if you do anything in between you will lose the undo info. You can undo and redo to your hearts desire up and down till you reach the max undo levels.
You can change the behavior of undo and redo by changing the defaults in one of the *gschemrc files. Please see the system-gschemrc for more info.
In select mode you can select objects.
You can pick single objects by clicking on them. If an object is already selected than clicking on that object will keep it selected. If multiple objects overlap then clicking in one spot will cycle through the objects.
If you hold down the SHIFT key and click, you can select and deselect multiple objects. Doing this with multiple overlapping objects will cause the selection to cycle among the possible object selections.
If you hold down the CONTROL key and click, you will toggle the object in and out of the current selection list.
To select multiple objects press and hold the first mouse button and drag the mouse till a selection box appears. Drag the mouse (selection box) till it encompasses the objects and release the first mouse button. The objects must be completely encompassed. Using the selection box takes some practice. If any previous objects were selected, they will be unselected.
If you hold down the SHIFT key while drawing a selection box then you will add to the currently selected objects. Objects cannot be removed using the selection box and holding down the SHIFT key.
If you hold down the CONTROL key while drawing a selection box then you will toggle any encompassed objects. If an object was selected then it will be unselected and vice versa.
If you pick an object which has attributes which are attached to it, then these attributes will be selected as well. If you just want to select the object, you must deselect the attributes. Invisible attached attributes are also selected when you pick the object This behavior is handy if you want to manipulate/change an object and all of its attributes (moving/copying the object around).
The selection mechanisms are not obvious and do require some practice. There are some quirks so please report them as you come across them.
Attributes - a much more sophisticated version of above specifically for attributes.
All attributes attached to a component - brings up a multi-attribute editing dialog box.
To copy objects (picking Edit/Copy Mode off of a menu):
To copy objects using the shortcut for copy mode is almost the same as above except that the origin point is selected automatically for you once you hit the copy mode shortcut.
After finishing the copy, you are automatically put back into to select mode.
Holding down the CONTROL key as you move the outline around will constrain the movement to be either horizontal or vertical.
To delete objects:
To rotate objects (picking Edit/Rotate 90 Mode off of a menu):
The objects will be rotate 90 counter clockwise. You can keep rotate objects 90 degrees till you have them in the wanted rotation. Text will always appear upright.
To rotate objects (picking Edit/Rotate 90 Mode off of a menu):
Objects are mirrored horizontally about the pivot point. If you want to get a vertical mirror then rotate and mirror the object(s) till you get the desired position.
Mirroring of embedded components is not supported.
To change the slot:
To change the color of the currently selected objects:
You can leave this dialog box up and select new objects and change their color by pressing Apply.
To lock/unlock components:
You can lock and unlock regular objects (lines/pins/boxes...) which is nice when you are drawing something and an object is in the way continuously. Just lock it and you will not have to think about it when you click to select other objects. However, locking an object is not preserved in the file format so once you quit any locked objects (lines/pins/boxes...) will become unlocked. The locked/unlocked state of components is preserved in the file format though.
Select an object and then select this option will bring up a dialog box which lets you set the line width, line type, line dash length, and line dash spacing. Pressing OK will apply the changes.
To translate a symbol, just select or type the shortcut for Edit/Symbol Translate... and a dialog box will appear. Enter the amount you want translate (positive or negative) in the X and Y directions (the same value will be applied to both directions).
If you enter a 0, then all the objects will be translated to the origin. If you are drawing a symbol, zoom in a bit and then execute this (0 for the amount), since there are still some bugs in this operation. It is a requirement that snap be on and that the grid snap spacing is set 100 mils when creating symbols.
Embed Component and Unembed component work exactly alike:
You can only embed and unembed components. Also, you cannot embed and then mirror a component (this is a limitation of gschem and will eventually be fixed).
You can also place embedded components directly in the Add Component... dialog box.
This operation is useful when drawing/debugging symbols.
When hidden text is visible, the text "Show Hidden" will appear in the lower, righthand corner.
Ales Hvezda 2006-01-23