# Select Tool

Library: | Base
Introduced: | 2.0 Beta 1

## Behavior

Allows individual components to be placed into the current selection. There are a number of actions possible with this tool.

- Pressing the mouse button while it is within a currently selected component begins a drag moving all components of the selection.

  By default, Logisim will compute a way to add new wires so that no existing connections are lost during the move. (Sometimes it will delete or shorten existing wires.) If you're performing a move where you do not want these changes to be made, you can press the shift key during the move. If you want to disable this behavior entirely, go to Project > Options, select the Canvas tab, and uncheck the Keep Connections When Moving box; in this case, the connections are computed only when the shift key is down.

  Dragging a selection can lead to unexpected behavior from wires: If you drag a selection including some wires on top of some other wires, all wires are merged, and the merged wires are placed into the selection. As a result, if you drag the selection a second time, the wires previously at the location will not be left behind. This behavior is necessary to keep with the expected behavior of wires in Logisim. And it does not normally constitute a major problem: Logisim will draw the full selection in the midst of dropping, and you should not drop it until you are sure it is in the correct location.

- Otherwise, clicking the mouse within a component drops all components from the current selection and selects instead the component(s) containing the clicked location.
- Shift-clicking the mouse within a component toggles that component's presence within the selection. If multiple components include the same location, all components' presence will be toggled. None of this will happen, though, if shift-clicking is mapped to another tool instead (via the project options window's Mouse tab).
- Dragging the mouse starting at a location not contained within any components drops all components from the current selection and initiates a rectangular selection. All component(s) contained by the rectangle will be placed into the selection.
- Shift-dragging the mouse starting at a location not contained within any components initiates a rectangular selection. The presence in the selection of all component(s) contained by the rectangle will be toggled. This will not happen, though, if shift-clicking is mapped to another tool instead.

After selecting the desired items in the selection, you can of course cut/copy/paste/delete all the items via the Edit menu.

Logisim's behavior when pasting the clipboard into a circuit is somewhat peculiar: It will not immediately place the components into the circuit; instead, the selection will be a collection of "ghosts," which will be dropped into the circuit as soon as they are either dragged to another location or removed from the selection. (This peculiar behavior is necessary because pasting will otherwise merge the wires of the selection into the current circuit at once, and the wires there previously will be dragged with the pasted clipboard if the user wants to move the pasted components somewhere else.)

## Attributes

None. Selecting a component, though, will display its attributes. With multiple components selected, attributes shared by all are shown, blank if they have different values and otherwise with the value they all have in common. (Wires are ignored if there are any non-wires in the selection.) Changes to the attribute value affect all selected components.

Back to Library Reference