next up previous contents index
Next: The PCell Control Button: Up: The Edit Menu: Edit Previous: The Enable Editing Button:   Contents   Index


The Setup Button: Show Editing Setup Panel

The Setup button in the Edit Menu brings up the Editing Setup panel. The panel provides controls for setting various parameters and options which apply during layout editing.

Constrain angles to 45 degree multiples
When this check box is active, wire and polygon vertices are constrained to form angles of multiples of 45 degrees. By default, a ``smart'' path generator is employed, which will construct a valid path to the pointer location from the previous point during wire or polygon construction. This will often add two vertices: a 45 degree extension, followed by a Manhattan extension, in order to connect the points. If the Ctrl key is held while the new point is defined, the ``smart'' feature is disabled, and only one new vertex is added. If the Shift key is held, then the 45 degree constraint is removed entirely.

The Constrain45 variable tracks the state of this check box, and setting or clearing the variable will also set or clear the mode.

When active, rotation angles available in the spin command, and translation angles in the Stretch command, and the vertex editors for polygons and wires, are constrained to multiples of 45 degrees. However, pressing the Shift key will remove the constraint in these commands while the key is held. If the Constrain 45 variable is not defined, holding Shift will impose the 45 degree angle constraint. Thus, the Shift key inverts the effective state of the Constrain 45 variable (and this check box) in these commands.

Merge new boxes and polys with existing boxes/polys
When this check box is set, new boxes and polygons that are created with the side menu commands are merged with existing boxes and polygons to form a larger polygon in the database. New wires will be connected to existing wires on the same layer with the same width and endpoint, but do not participate in the box/polygon merging of new objects.

However, on layers with the NoMerge technology file keyword set, merging is always suppressed.

The state of this check box tracks the logically inverted state of the boolean variable NoMergeObjects, which can (equivalently) be set with the !set command.

Existing objects can be similarly joined, or split into trapezoids, with the buttons in the Join or Split Objects panel brought up with the Join/Split button in the Edit Menu.

Join (merging) operations are subject to the settings of several variables, which have equivalent entries in the Join or Split Objects panel. These limit the complexity of polygons created by merging, mostly for optimizing for speed for merging large object collections.

The Clip and merge new boxes only, not polys button in this panel modifies the merging behavior to clip and merge boxes only.

This object merging is separate and unrelated to the box merging available when reading a layout file into the database, which has a separate merging control in the Setup page of the Import Control panel from the Convert Menu.

Clip and merge new boxes only, not polys
When merging is enabled (the Merge new boxes and polys with existing boxes/polys check box is active), and this check box is also active, polygons are ignored when merging, and new boxes are clipped/merged. This was the merging behavior in releases prior to 3.1.7.

This setting has no effect if merging is not enabled. It tracks the state of the NoMergePolys variable.

Prompt to save modified native cells
When the box is checked, the user will be prompted to save the current cell if the cell is modified, and would be saved as a native cell file, and a new current cell is about to be set. This was standard behavior in releases earlier than generation 4. Although it is always a good idea to save work periodically, the prompt can be annoying to experienced users and is now disabled by default. The user will be given the chance to save modified cells when exiting Xic in any case.

This check box tracks the state of the AskSaveNative variable. The variable can be set as a boolean or cleared to change the mode, which is equivalent to checking or un-checking this check box.

No wire width change in magnification
When the box is checked, the width of wires does not change when the wire undergoes magnification, in a Move, Copy, or Flatten operation.

This check box tracks the state of the NoWireWidthMag variable. The variable can be set as a boolean or cleared to change the mode, which is equivalent to checking or un-checking this check box.

Allow Create Cell to overwrite existing cell
When this check box is active, The Create Cell operation in the Edit Menu and the CreateCell script function can overwrite cells already in memory. This can be dangerous and is prevented by default, and the user is advised to be careful if using this feature.

This check box tracks the state of the CrCellOverwrite variable. The variable can be set as a boolean or cleared to change the mode, which is equivalent to checking or un-checking this check box.

Maximum undo list length
This integer entry sets the number of operations remembered in the Undo command. If not set, 25 operations are saved. If set to zero, the length is unlimited.

This entry tracks the value of the UndoListLength variable. The variable can be set as an integer or cleared to change the value, which is equivalent to changing the integer entry in this panel.

Maximum number of ghost-drawn objects
This integer entry sets the maximum number of objects to render individually as ``ghosts'' attached to the mouse pointer during operations such as move and copy. This can be set to an unsigned integer in the range 50-50000. If there are more than this number, some outlines won't be shown, the smaller-area objects will be skipped. The default is 4000 if this variable is not set. If, when moving a large number of objects, the pointer motion is too sluggish, the user can set this variable to compensate.

This entry tracks the value of the MaxGhostObjects variable. The variable can be set as an integer or cleared to change the value, which is equivalent to changing the integer entry in this panel.

Maximum subcell depth in ghosting
This menu sets the maximum expansion depth for instance expansion in ghosting. If as expanded, this is the same as the normal expansion depth. The actual expansion depth used in ghosting will not be larger than the normal expansion depth, but can be smaller. For example, setting this to 0 (zero) will prevent expansion of ghosted subcells entirely.

This entry tracks the value of the MaxGhostDepth variable. The variable can be set as an integer or cleared to change the value, which is equivalent to changing the integer entry in this panel.


next up previous contents index
Next: The PCell Control Button: Up: The Edit Menu: Edit Previous: The Enable Editing Button:   Contents   Index
Stephen R. Whiteley 2022-05-28