#### 3.4.1.1 `schematic.gui` group

Name | Type | Default value | Description
--- | --- | --- | ---
`use-docks` | ‘`boolean`’ | ‘`false`’ | How to display widgets: as dialogs (‘`false`’) or inside the dock widgets (‘`true`’).
`use-tabs` | ‘`boolean`’ | ‘`true`’ | Whether to use tabbed GUI: display each schematic in its own tab within GtkNotebook widget.
`font` | ‘`string`’ | ‘`""`’ (empty string) | The name of the font to be used to draw text in schematics. For example: ‘`font=OpenGost Type B TT Regular`’
`text-sizes` | ‘`list of `string`s`’ | ‘`empty list`’ | If set, these values will appear in the ’size’ combo box of the ’Add text’ and ’Edit text’ dialogs instead of the default ones (set in `gschem_toplevel.c`: 8, 9, 10, 11, 12, 14, 16, 18, 20, 22, 24, 26). For example: ‘`text-sizes=2;3;4;5;6;8`’
`max-recent-files` | ‘`integer`’ | ‘`10`’ | Maximum number of recent files to show in ‘File->Open Recent‘ menu.
`title-show-path` | ‘`boolean`’ | ‘`false`’ | Whether to show full file path in the main window’s title.
`restore-window-geometry` | ‘`boolean`’ | ‘`true`’ | Whether to restore main window’s size and position on startup.
`draw-grips` | ‘`boolean`’ | ‘`true`’ | Controls if the editing grips are drawn when selecting objects. Since 1.9.10.
`toolbars` | ‘`boolean`’ | ‘`true`’ | Controls if the toolbars are visible or not. Since 1.9.10.
`scrollbars` | ‘`boolean`’ | ‘`true`’ | Controls if the scrollbars are visible or not. Since 1.9.10.
`handleboxes` | ‘`boolean`’ | ‘`true`’ | Controls if the handleboxes for the menu and toolbars are visible or not. Since 1.9.10.
`zoom-with-pan` | ‘`boolean`’ | ‘`true`’ | Sets the zoom functions to pan the display and then zoom. Since 1.9.10.
`fast-mousepan` | ‘`boolean`’ | ‘`false`’ | Controls if text is drawn properly or if a simplified version (a text string bounding box) is drawn during mouse pan. Drawing a simple box speeds up mousepan a lot for big schematics. Since 1.9.10.
`continue-component-place` | ‘`boolean`’ | ‘`true`’ | Controls the behavior of the "Select Component..." dialog. Allows to place multiple instances of a component without having to press the "Apply" button each time. Since 1.9.10.
`file-preview` | ‘`boolean`’ | ‘`true`’ | Controls if the preview area in the File Open/Save As dialog boxes is enabled. Since 1.9.10.
`enforce-hierarchy` | ‘`boolean`’ | ‘`true`’ | Controls if the movement between hierarchy levels of the same underlying schematics is allowed or not. If this is enabled, then the user cannot (without using the page manager) move between hierarchy levels. Otherwise, the user sees all the hierarchy levels as being flat. Since 1.9.10.
`third-button-cancel` | ‘`boolean`’ | ‘`true`’ | Controls if the third mouse button cancels draw actions such as placing of a component or drawing of a primitive. Since 1.9.10.
`warp-cursor` | ‘`boolean`’ | ‘`false`’ | Controls if the cursor is warped (moved) when you zoom in and out. Since 1.9.10.
`force-boundingbox` | ‘`boolean`’ | ‘`false`’ | Controls if the entire bounding box of a symbol is used when figuring out which end of the pin is considered the active port. This option is for backward compatibility with old schematic file format. Since 1.9.10.
`net-direction-mode` | ‘`boolean`’ | ‘`true`’ | Guess the best continuation direction of an L-shape net when adding a net. Since 1.9.10.
`embed-components` | ‘`boolean`’ | ‘`false`’ | Determines if the newly placed components are embedded in the schematic. Since 1.9.10.
`netconn-rubberband` | ‘`boolean`’ | ‘`true`’ | Maintain net connections when you move a connected component or net. Since 1.9.10.
`magnetic-net-mode` | ‘`boolean`’ | ‘`true`’ | Whether to mark a possible connection that is close to the current cursor position when drawing a net. Since 1.9.10.
`zoom-gain` | ‘`int`’ | ‘`20`’ | The percentage size increase/decrease when zooming in/out with the mouse wheel. Negative values reverses the direction. Since 1.9.10.
`mousepan-gain` | ‘`int`’ | ‘`1`’ | Controls how much the display pans when using mouse. A larger value provides greater pan distance when moving the mouse. Since 1.9.10.
`keyboardpan-gain` | ‘`int`’ | ‘`20`’ | Controls how much the display pans when using the keyboard keys. A larger value provides greater pan distance. Since 1.9.10.
`select-slack-pixels` | ‘`int`’ | ‘`10`’ | Controls how many pixels around an object can still be clicked as part of that object. A larger value gives greater ease in selecting small, or narrow objects. Since 1.9.10.
`text-size` | ‘`int`’ | ‘`10`’ | Sets the default text size. Since 1.9.10.
`snap-size` | ‘`int`’ | ‘`10`’ | Sets the default grid spacing. Since 1.9.10.
`scrollpan-steps` | ‘`int`’ | ‘`8`’ | Controls the number of scroll pan events required to traverse the viewed schematic area. Larger numbers mean more scroll steps are required to pan across the viewed area and giving finer control over positioning. Since 1.9.10.
`dots-grid-dot-size` | ‘`int`’ | ‘`1`’ | Controls the size of the grid dots (in pixels) in the dots grid display. Since 1.9.10.
`dots-grid-fixed-threshold` | ‘`int`’ | ‘`10`’ | Specifies the minimum number of pixels for the grid to be displayed. Controls the density of the displayed grid (smaller numbers will cause the grid to be drawn denser). This option is only effective when the dots-grid-mode is set to "fixed". Since 1.9.10.
`mesh-grid-display-threshold` | ‘`int`’ | ‘`3`’ | Specifies the minimum line pitch for the grid to be displayed. Controls the maximum density of the displayed grid before the minor, then the major grid lines are switched off. Since 1.9.10.
`action-feedback-mode` | ‘`string`’ | ‘`outline`’ | Possible values: ‘`outline`’, ‘`boundingbox`’. Sets the default action feedback mode for copy, move, and component place operations. When set to ‘`boundingbox`’, just a box surrounding objects is drawn, which is much faster. It may help with slow hardware. Since 1.9.10.
`text-caps-style` | ‘`string`’ | ‘`both`’ | Possible values: ‘`both`’, ‘`lower`’, ‘`upper`’. Sets the default caps style used for the input of text. Since 1.9.10.

`middle-button`

‘`string`’

‘`mousepan`’

Possible values: ‘`mousepan`’, ‘`popup`’, ‘`action`’, ‘`stroke`’, ‘`repeat`’. Controls what the middle mouse button does:

- - ‘`mousepan`’: mouse panning
- - ‘`popup`’: display the popup menu
- - ‘`action`’: perform an action on a single object
- - ‘`stroke`’: draw strokes
- - ‘`repeat`’: repeat the last command

Since 1.9.10.

`third-button`

‘`string`’

‘`popup`’

Possible values: ‘`popup`’, ‘`mousepan`’. Controls what the third mouse button does:

- ‘`popup`’: display the popup menu
- ‘`mousepan`’: mouse panning

Since 1.9.10.

`scroll-wheel`

‘`string`’

`classic`

Possible values: ‘`classic`’, ‘`gtk`’. Controls the binding of the mouse scroll wheel:

- ‘`classic`’: zoom in/out, with `CTRL` – horizontal scroll, with `SHIFT` – vertical scroll
- ‘`gtk`’: vertical scroll, with `SHIFT` – horizontal scroll, with `CTRL` – zoom in/out

Since 1.9.10.

`grid-mode` | ‘`string`’ | ‘`mesh`’ | Possible values: ‘`mesh`’, ‘`dots`’, ‘`none`’. Sets the type of the grid. Since 1.9.10.

`dots-grid-mode`

‘`string`’

‘`variable`’

Possible values: ‘`variable`’, ‘`fixed`’. Controls the mode of the dotted grid. In the ‘`variable`’ mode, the grid spacing changes depending on the zoom factor. In the ‘`fixed`’ mode, the grid always represents the same number of units as the snap-spacing. You can control the density of the grid using the `dots-grid-fixed-threshold` option. Since 1.9.10.

`net-selection-mode`

‘`string`’

‘`enabled_net`’

Possible values: ‘`enabled_net`’, ‘`enabled_all`’, ‘`disabled`’. Controls how many net segments are selected when you click at a net:

- ‘`enabled_all`’:
  - - first click selects the net itself
  - - second click selects all nets directly connected to the selected one
  - - third click in addition selects all nets with equal ‘`netname`’ attributes
- ‘`enabled_net`’:
  - - first click selects the net itself
  - - second click selects all nets directly connected to the selected one
- ‘`disabled`’:
  - - mouse clicks just selects the clicked net

Since 1.9.10.

`default-titleblock` | ‘`string`’ | ‘`title-B.sym`’ | Symbol (usually, a title block) to be automatically added when a new page is created. If you do not want to use a title block, set this option to an empty string. Since 1.9.10.

`use-toplevel-windows`

‘`boolean`’

‘`false`’

When docking windows GUI is off, allow the following widgets to act as top-level windows (do not stay on top of the main window):

- - Object properties
- - Text properties
- - Options
- - Log
- - Find text results
- - Page manager
- - Font selector
- - Color scheme editor

Since 1.9.11.

`small-placeholders` | ‘`boolean`’ | ‘`true`’ | Draw either new (smaller) placeholders for missing schematic symbols (‘`true`’), or classic ones (giant red triangles with an exclamation mark and two lines of text) if this option is set to ‘`false`’. Since 1.9.11.