| << [[moving_copying|Moving and copying]] | **[[geda:gschem_ug|gEDA gschem User Guide]]** | [[pins_nets_buses|Pins, nets and buses]] >> |
===== Components =====
A //component// in a schematic is an instance of a symbol from a //symbol library//. They can represent subcircuits to be included in the design, or discrete parts or devices to be used.
To add a component to a schematic page, press i or select **Add→Component...** to bring up the "Select Component..." window. The window has three main areas:
* The //library area// is on the left side of the window, and allows you to choose a symbol to place on the schematic page.
* The //preview area// is on the right side of the window. This shows a picture of the chosen symbol, and its [[attributes]].
* The //insertion mode menu// at the bottom of the window controls how components are inserted.
Components should only be added to schematics, and not to symbols.
==== Selecting a component you have already used ====
By switching to the **In Use** tab of the component selector, you can view a list of the symbols that have already been used in the schematic. To select a symbol from the list, left-click on it.
If the list needs to be updated, click the **Refresh** button at the bottom of the "In Use" page.
==== Selecting a component from a symbol library ====
See [[config|Configuring gschem]] for information on controlling which symbol libraries appear in the component selector.
To select a symbol from a symbol library, switch to the **Libraries** tab of the component selector. This shows a list of available libraries. To view the symbols in a library, double-click on the library's name, or left-click the arrow next to it. To select a symbol from the list, left-click on it.
Alternatively, you can search all available symbols by typing into the **Filter** box at the bottom of the **Libraries** page.
The list of libraries and symbols may need to be updated (for example, if you modified a symbol library while gschem was running). To update it, click the **Refresh** button at the bottom of the **Libraries** page.
==== Placing a component ====
When you have selected a component, left-click in the schematic view area of the [[main_window|main window]] to add it to the page. You can continue to click to place copies of the same component, or right-click to finish placing.
To hide the "Select Component..." window while you place components, click **OK**. When you right-click to finish placing components, the window will re-appear.
==== Symbol insertion modes and embedding ====
There are three ways that gschem can insert a symbol into a schematic:
- As a component linked to a symbol in the symbol library (**Default behavior - reference component**). This is the default method, which ensures that when you update a library symbol, all the places it was used are updated too.
- As a component with the symbol data copied into the schematic (**Embed component in schematic**). If you //embed// the symbol, it is easier to share your schematic with other users without having to set up the same symbol libraries.
- As individual objects obtained by breaking the symbol apart (**Include component as individual objects**).
You can make a linked component embedded by selecting it and using **Edit→Embed Component/Picture**. To make an embedded component linked, use **Edit→Unembed Component/Picture**.
If an embedded component cannot be matched up with a symbol from the available symbol libraries, **Edit→Unembed Component/Picture** will not modify it.
If you wish to update an embedded component after making changes to the original symbol file in the library, use **Edit→Update Component**.
==== Editing symbols ====
To edit a component's symbol file, select the component and use **Hierarchy→Down Symbol**. gschem will open and display the symbol page for editing. When you are finished editing, save the file and use **Hierarchy→Up** to return to the schematic. You may need to use **Edit→Update Component** for your changes to be reflected in the schematic view.
==== Missing symbols ====
If, when [[schematic_pages|loading a schematic]], one of the symbols it needs cannot be found in the available symbol libraries, a warning graphic will be displayed in its place.
==== Viewing component documentation ====
When designing symbols, specify the location of component documentation using a [[geda:master_attributes_list#documentation|documentation attribute]]. See also [[Attributes]].
A component may have a datasheet or other documentation associated with it. To view a component's documentation, [[selecting|select it]] and use **Help→Component Documentation**.