Altium Designer Documentation

Editing Multiple Design Objects in Altium Designer

Created: January 18, 2023 | Updated: January 18, 2023

Parent page: Getting Familiar with the Altium Design Environment

Altium Designer provides a range of editing tools and capabilities that have been designed to help with making large-scale edits to a design. The main tools for large-scale or global edits are the PCB Filter panel, PCB List panel and Find Similar Objects capabilities.

The process of editing multiple items in Altium Designer involves three steps:

  1. Select the objects to be targeted.
  2. Inspect the properties of those objects.
  3. Edit the properties that need to be amended.

With this editing paradigm in mind, the software offers a range of different ways to select, inspect, and edit multiple objects. Each method has its strengths and by having an understanding of how they work, you are equipped to choose the method that is most applicable to your specific editing challenge.

While this document covers the editing of multiple objects in the PCB editor, many of the same functions apply in PCBLIB documents and can be accomplished through use of the PCBLIB List and PCBLIB Filter panels. Refer to the documentation on those panels for more information.

Selecting Objects

Objects can be selected in a variety of ways and they all fall into two categories:

  • Graphical Selection – objects are selected in one of the following ways:
    • Individually by mouse clicks.
    • Accumulatively by Shift+mouse clicks.
    • Using one of the sub-menu selection commands from the main menu (Edit » Select).
  • Logical Selection – objects are selected using an interactive or query-based process that targets and filters objects using specific parameters and/or attributes as the search criteria. GUI elements that support this type of selection are:
See the Design Object Selection page to learn more.

Inspecting Objects

The attributes of objects can be inspected or viewed in a variety of ways:

  • Direct Inspection – the attributes of one or more objects are inspected directly through the Properties panel or graphically in the main editor.
  • Indirect Inspection – the attributes of one or more objects that have previously been selected are viewed using the PCB List panel.

Editing Objects

Similarly, objects can be edited in different ways:

  • Direct Editing – the attributes of one or more objects are edited directly through the Properties panel or graphically in the main editor.
To edit all selected objects, open the Properties panel by clicking the Panels button then choose Properties. To edit only the last object selected, right-click then choose Properties.
  • Indirect Editing – the attributes of one or more objects that have previously been selected can be edited using the PCB List panel.

Examples of viewing and editing Polygon properties directly through the Properties panel or indirectly through the PCB List panel. Examples of viewing and editing Polygon properties directly through the Properties panel or indirectly through the PCB List panel.
Examples of viewing and editing Polygon properties directly through the Properties panel or indirectly through the PCB List panel.

Modifying Data Strings using the Properties Panel

Using Formulas

The Properties panel has the ability to modify data strings using formulas in the schematic and PCB editors. Formulas and expressions offer a convenient method of modifying attribute parameters of multiple selected objects to change their location or string-based values such as the Designator and Comment. This allows you to apply a specific expression to the selected string objects. The expression can include any built-in arithmetic operators and functions that apply to strings (found in Pascal). If you want to use the current value for the attribute as part of the expression, you will need to make reference to this original value either by using the full name of the attribute or by using the exclamation character (the supported substitute for the name of the attribute currently being modified). When using attribute names, if any names contain spaces, these must be replaced by the underscore character. For example, use of the Component Designator field within a formula should be entered as Component_Designator.

Using the Smart Edit Feature

Some parameter string fields also provide access to the Smart Edit dialog when multiple objects are selected, which is opened from the associated button.

The Properties panel offers further support for string modification through its Smart Edit feature. Select the cell entries pertaining to the attribute that you want to modify for all required objects, right-click then choose Smart Edit from the menu that appears. The Smart Edit dialog will open.

The dialog offers two methods for performing string modification accessed from the Batch Replace and Formula tabs.

Masking

Masking is a way of explicitly removing an object's eligibility for selection and/or editing. It can be faster to first mask out what is not required instead of selecting what is required.

Consider a design where all vias sitting under a specific BGA device need to have their diameter changed. One way to perform this operation would be to run a query that masks out all non-via objects on the design, then use the Edit » Select » Inside Area menu command to draw a rectangle around the BGA device to select the vias to be targeted. 

Masked objects appear faded, where the selected object passes the applied filter and is displayed normally, with all other design objects faded in gray. The level of fading can be adjusting using the Dimming options in the Highlight Methods region of the System - Navigation Preferences page.

Clearing Selections

The current selection can be cleared in the following ways:

  • Pressing the Shift+C shortcut.
  • Using one of the Edit » Deselect sub-menu commands.

Selection Commands

The following selection-based commands are available from the Edit » Select sub-menu.

  • Select overlapped - use this command to single select the next design object in a set of co-located (overlapping) objects, without utilizing a selection pop-up window. (Shortcut: Shift+Tab)
  • Select next - with an initial object selected in the design, use this command to extend the selection to include the next higher-level object (or objects), based on logical hierarchy. (Shortcut: Tab)
  • Lasso Select - use this command to select design objects within a user-defined, free-form 'lasso' area.
  • Inside Area – use this command to select design objects within a user-defined area. All objects that fall completely inside this defined area will become selected.
  • Outside Area – use this command to select design objects outside of a user-defined area. All objects that fall completely inside the defined area will remain non-selected. All objects outside of this area will become selected.
  • Touching Rectangle – use this command to select design objects touched by a user-defined bounding rectangle.
  • Touching Line – use this command to select design objects touched by a user-defined line.
  • All – use this command to select all design objects in the current document, including the board shape. (Shortcut: Ctrl+A).
  • Board – use this command to select the board shape and all design objects that lay within its bounding rectangle. (Shortcut: Ctrl+B).
  • Net – use this command to select all routed track and electrical objects associated with a particular net. Simply click on an object within the required net. Click on an area of the design, away from any objects, to access the Net Name dialog in which the name of the net can be entered directly. If unsure of the name, enter ? and click OK to access the Nets Loaded dialog, which lists all currently loaded nets for the design.
Selection is not cumulative for most of these commands including Net. When a new item is selected, the previous object will become deselected. Press the Spacebar to accumulate selected items.
  • Connected Copper – use this command to select all routed track and electrical objects that are all connected to the same piece of copper. Click on an electrical object (track, pad, fill, etc.) and all electrical objects that are connected by the same piece of copper will become selected. (Shortcut: Ctrl+H).
  • Physical Connection – use this command to select all routed track between two pad objects. Simply click on a track or pad and all contiguous tracks between the two pads will become selected, including any vias. The pads themselves will not be included in the selection.
  • Physical Connection Single Layer – use this command to select connected track segments on the current layer, i.e., to select contiguous copper until the layers change or a component pad is encountered.
  • Component Connections – use this command to select all routed connections emanating from the pads of a chosen component. The component's pads, along with connected tracks and vias will be selected, up to the next encountered pad in each case.
  • Component Nets – use this command to select all nets attached to a chosen component. All nets (and member net objects therein) attached to that component will be selected.
  • Room Connections – use this command to select all pad-to-pad routed connections that fall completely within the boundaries of the chosen room.
  • All on Layer – use this command to select all design objects on the current layer. The current layer is distinguished by the active tab at the bottom of the main design window.
  • Free Objects – use this command to select all free primitive objects within the design. Group objects (such as components, coordinates, dimensions, and polygons) will not be selected. These objects must be converted to their free primitives in order for this selection mode to apply.
  • All Locked – use this command to select all design objects that have their Locked property enabled.
  • Off Grid Pads – use this command to select all pads that are not placed on a defined snap grid.
  • Toggle Selection - use this command to change the selection status of one or more design objects in the current PCB document.
All currently selected objects will be deselected when using this command unless the Click Clears Selection option is disabled on the PCB Editor – General page of the Preferences dialog.
Various de-selection commands are available from the Edit » Deselect sub-menu, including deselection of all selected objects, all selected objects inside or outside of a user-defined area, all selected objects on the current layer, and all selected free objects.

PCB List Panel

PCB List Panel Inspect and Edit

The PCB List panel displays design objects from the active document in tabular format enabling you to quickly inspect and modify object attributes. When used in conjunction with the PCB Filter panel, it can be used as a powerful way to both inspect and edit multiple design objects. Objects do not need to be selected in order for them to be displayed (and edited) in the PCB List panel.

PCB List Panel Access

There are several ways to display the PCB List panel:

  • Press the Shift+F12 shortcut key to toggle the panel on and off.
  • Select PCB List from the Panels popup button in the bottom right of the main editor window (assuming the View » Status Bar option is enabled).
  • Click View » Panels » PCB List from the main menus.

Defining Panel Display Scope

Controls at the top of the panel show the current mode and controls how objects are filtered.

View/Edit Mode

Use the first field to choose the PCB List panel mode. Select View to view only object attributes. Direct editing from within the panel will not be possible in this mode, as indicated by the gray background of the spreadsheet-like region. Select Edit to view and edit the attributes of design objects directly in the tabular region of the panel.

Object Selection

Click on the next underlined control to select from the following options:

  • non-masked objects – this is the default option and causes the panel to display only design objects that are not masked-out in the workspace (i.e., only those objects that fall under the scope and specific query expression of the currently applied filter). This option is most effective when filtering is applied to the workspace and the associated dimming option is enabled.
  • selected objects - this option causes the panel to display only design objects that are currently selected in the workspace.
  • all objects - this option causes the panel to display all design objects.

Types of Objects

Clicking on all types of objects allows you to control the type of objects that can be displayed. Click on the control to open a selection pop-up.

The 'No' option refers to other object primitives that are featured in the PCB document but are not denoted in this list, such as Layer Stack Table and Drill Table object primitives.

Use the pop-up to choose which object types to include in the currently displayed list – either all objects or specific objects.

To choose one or more specific object types, enable the Display only option then enable the check box next to the required object(s) in the list beneath. The list will only contain those object types currently displayed in the main spreadsheet region of the panel.

The control will update to reflect the range of objects included (e.g., Component and Region).

Making Selections from the PCB List Panel

Design objects selected in the PCB List panel become selected in the design workspace. The list supports single or multiple selections, the latter using standard Ctrl+Click, Shift+Click, and click-and-drag features. Double-clicking on an entry will open the Properties panel in the appropriate mode and can then be edited as usual.

As objects are selected in the panel (or conversely, as objects are selected within the workspace), those objects will appear distinguished in the list by the use of a non-white background for all associated cells.

Inspecting and Editing Object Attributes

While in Edit mode, edit attributes of an object by editing the relevant cell in the panel. Click on a cell to focus it and then either right-click and choose Edit or click again to edit the attribute value directly. Depending on the attribute, either type a value, toggle a checkbox or select an option from a drop-down. The change will take effect after pressing Enter or clicking outside of the cell being edited.

An advantage of using the panel to edit object properties is that the panel will remain open, allowing attribute after attribute to be changed, as needed, without having to close and reopen the Properties panel each time.

Another advantage of using the panel for editing is that multiple objects can be edited from one place, without having to edit numerous times. Selected objects can be of the same or differing types. Those attributes that are common to all objects in the selection will be displayed in the panel.

Simply select the required cells – across all required objects – for the shared attribute to be modified. Then either right-click and choose the Edit command or press the F2 key (or the Spacebar). Edit the value for the chosen attribute with respect to the focused object in the selection (whose cell is distinguished by a dotted outline). Clicking outside the attribute's cell or pressing Enter will effect the change, which will subsequently be applied to all remaining objects in the selection.

By using filtering, a query can be applied (an expression for the filter) to target a specific group of objects in the design and then use the PCB List panel to edit the attributes for these multiple objects directly.

Smart Grid Tools

Smart Grid Commands

There are two Smart Grid commands available from the panel's right-click menu. These commands allow data from an external table (e.g., PDF) or spreadsheet (e.g., Microsoft Excel or Google Sheets) to be used to either update the values of existing objects in a List panel (Smart Grid Paste) or insert newly-created objects (Smart Grid Insert). 

Respective dialogs (Smart Gride Paste and Smart Grid Insert) for these commands are used to map the external tabular data coming in on the Windows clipboard to the attributes of objects in the List panel, providing a preview of what changes will be made.

When data is copied before opening the Smart Grid Paste dialog, the top half of the dialog will contain the table information from the clipboard. Use the included options to control what of that information is then transferred into the List panel(s).

  • Header Row - if a header row is included in the information copied to the clipboard, enable this option. The header information will be used to form a header row of columns.
  • No Header Row - if no header row is included in the information copied to the clipboard, enable this option. If a header row is included in the copied information and this option is enabled, the header information will be included in the main table area instead of being placed into column headers.

Select the List panel content you would like to update before opening the Smart Grid Paste dialog. The selected tables from the List panel fill the bottom half of the dialog. Use the following controls to copy information from the Clipboard Table View into the List View. Information moved into this section will be saved into the List panel after clicking OK to exit the dialog.

When the Smart Grid Insert version of the dialog is opened, this section of the dialog is populated with information to be added to the List panel. Information in this section will be added into the List panel after clicking OK to exit the dialog. In the Smart Grid Insert incarnation of the dialog, rows marked for addition are marked by a green plus and columns that have had changes affected are bolded and display the icon.

  • Paste Column to Attribute - select a column in both sections of the dialog then click this button to copy the information from the Clipboard Table View and paste it into the List View.
  • Undo Paste to Attribute - undo the last performed instance of the Paste to Attribute command (using the Paste Column to Attribute or Automatically Determine Paste buttons).
  • Automatically Determine Paste - use this button to allow the software to automatically determine where in the List View the clipboard information belongs.
  • Reset All - reset the entire dialog. The Clipboard Table View is refreshed. If new information is in the Clipboard, the top panel of the dialog will contain the new information. The List View will revert any changes that have not been saved, including which columns are visible.
  • Choose Visible Columns - click to open the Choose Visible Columns dialog and select which columns to display in the List View section of the Smart Grid Paste dialog. Enable/disable options to Show/Hide columns.

Smart Editing of String-based Attributes

A List panel offers support for string modification through its Smart Edit feature. Select the cell entries pertaining to the attribute to be modified for all required objects, right-click, then choose Smart Edit from the context menu. This opens the Smart Edit dialog, which can be used to create Batch Replace or Formula based text substitutions.

The Batch Replace tab is used for string substitutions. Click inside the From field and enter the portion of the current string that you want to replace. Then click inside the To field and enter the string to be used as the replacement. Note that the string substitution that is about to be performed is displayed at the bottom of the tab.

For example, consider the designators of three header components that currently have the prefix P and you need to change them to have the prefix HDR instead. In this case, select the Name attribute for each of the components in the appropriate panel to open the dialog. On the Batch Replace tab, enter P in the From field and HDR in the To field (the replacement string at the bottom of the dialog is therefore {P=HDR}). After clicking OK, the designators will be modified accordingly. The Batch Replace tab also provides for the replacement of multiple, differing string portions in the same target string. Enter the various substitutions as distinct From-To entries.

The change is only applied to the characters entered into the From field. Any other characters in each targeted string, such as an incrementing numerical identifier, is not changed.

The Formula tab provides for more advanced modification, allowing you to apply a specific expression to the selected string objects. The expression can include any built-in arithmetic operators and functions that apply to strings (found in Pascal). If you want to use the current value for the attribute as part of the expression, you will need to make reference to this original value, either by using the full name of the attribute or by using the exclamation character (the supported substitute for the name of the attribute currently being modified). When using attribute names, if any names contain spaces, these must be replaced by the underscore character. For example, use of the Component Comment field within a formula should be entered as Component_Comment.

For example, three selected memory components specified in a design with designators U1, U3 and U5. You might want to extend the designators of these components by including some indication of their role. After loading the required components (or designators) into the appropriate List panel, open the Smart Edit dialog using the techniques described in the Access section above. In the Formula tab, you could write an expression to add to the existing string value of the Name attribute. This would take the existing (original) string value and concatenate it with a specified new string, as illustrated below:

Name + '_MEM'

or, in shortened form:

! + '_MEM'

Note that the spaces are optional. After clicking OK the designators of the components will be updated to U1_MEM, U3_MEM and U5_MEM, respectively.

Expressions entered in the Formula tab of the Smart Edit dialog are saved so they can easily be used again in the future. To re-use previously entered expressions, click  at the right end of the text field then select an expression from the drop-down menu.

The SCH List panel
The SCH List panel

Function

The SCH List panel allows you to display design objects from one or more documents in tabular format, enabling you to quickly inspect and/or modify object attributes. When used in conjunction with the SCH Filter panel, it enables you to display just those objects falling under the scope of the active filter, allowing you to target and edit multiple design objects with greater accuracy and efficiency.

Panel Access

The panel can be accessed from the schematic editor in the following ways:

  • Click the Panels button at the bottom-right of the design space then select SCH List from the pop-up menu.
  • Click View » Panels » SCH List from the main menus.
  • Click Shift+F12.
Panels can be configured to be floating in the editor space or docked to sides of the screen. If the SCH List panel is currently in a group of panels, use the SCH List tab located at the bottom of the panels to bring it to the front.

Content and Use

The panel is divided into two main regions:

  • Filtering controls to define which objects are displayed in the panel (display scope).
  • A tabular, spreadsheet region listing all objects falling under the defined display scope.

Defining Panel Display Scope

Controls at the top of the panel allow you to filter which objects are displayed in the panel and also control the current mode of the panel allowing you to enable/disable the panel's direct editing functionality.

Click on the left highlighted control and choose from the following options:

  • View – this mode allows you only to view the object attributes. You will not be able to edit any of the attribute fields.
  • Edit – this mode allows you to view and edit the attributes of design objects.

Click on the next highlighted control then choose from the following options:

  • non-masked objects (default) – select this option to display only design objects that are not masked-out in the design space (i.e., those objects that fall under the scope and specific query expression of the currently applied filter). This option is most effective when filtering is applied to the design space and the associated masking highlight option is enabled.
  • selected objects – select this option to display only design objects that are currently selected.
  • all objects – select this option to display all design objects.

Click on the next highlighted control and choose from the following options:

  • current document – only display target objects from the active schematic document in the design editor window.
  • open documents – display target objects from all open schematic documents regardless of their parent project.
  • open documents of the same project – display target objects from all open schematic documents that are source documents of the same parent project.
  • all project documents – display target objects from all schematic documents (including those that are closed) that are source documents of the same parent project.

The right-most highlighted control allows you to determine the type of objects that can be displayed.

Click on the control to reveal a selection pop-up. Use the pop-up to choose which object types you want to include in the currently displayed list, either all objects or specific objects. To choose one or more specific object types, enable the Display only option and then enable the checkbox next to the required object(s) in the list. The list will only contain those object types currently displayed in the spreadsheet region of the panel. When enabling specific object types for display, the control will reflect the choice by listing the enabled types, separated by commas.

Working with Filtered Objects

The main region of the panel displays all design objects that pass the defined display scope for the panel, in spreadsheet form.

Object data is initially unsorted. Data may be sorted by any attribute by clicking on the header for that attribute's column. Clicking once will sort in ascending order; click again to sort in descending order.

Displaying Desgin Space Selection

As you select objects in the design space, the corresponding entries for those objects will appear selected in the list.

Displaying Filtering Results

When a filter has been applied based on a query expression entered into the SCH Filter panel, only those objects under the scope of the filter will be shown provided that:

  • The Mask out option is enabled in the Filter area of the SCH Filter panel.
  • The Display option for the SCH List panel is set to non-masked objects.
If the Select option also has been enabled in the Filter region of the SCH Filter panel, all filtered objects will appear selected in the list.

Using the Panel to Select Objects in the Design Space

As you select entries for design objects in the list, those objects will become selected in the design space. The list supports single or multiple selection using standard Ctrl+Click, Shift+Click and click-and-drag features.

Double-click on an entry to open the corresponding Properties panel mode for that object in which you can make changes as needed.

Editing Object Attributes

Editing is only possible if the panel is in Edit mode. When the panel is in View mode, you will be able to only view object properties.

You can edit attributes of an object by editing the relevant entry in the panel. Click on a cell to focus it and then either right-click and choose Edit or click again to edit the attribute value directly. Depending on the attribute, you will either need to type a value, toggle a checkbox, or select an option from a drop-down. The change will take effect once you press Enter or click outside of the field you are editing. This is one of the advantages of using the panel to edit object properties; the panel will remain open, allowing you to change many attributes as needed without having to close and reopen the Properties panel each time.

Another advantage of using the panel for editing is that you can edit multiple objects from one place without having to edit through the Properties panel one object at a time. Selected objects can be of the same or differing type. Those attributes that are common to all objects in the selection will be displayed in the panel. Select the required cells across all required objects for the shared attribute you want to modify. Then either right-click and choose the Edit command or press the F2 key (or the Spacebar). You will be able to edit the value for the chosen attribute with respect to the focused object in the selection. Clicking outside the attribute's cell or pressing Enter will effect the change which will subsequently be applied to all remaining objects in the selection.

By using filtering, you can apply a query (an expression for the filter) to target a specific group of objects in the design then use the panel to edit the attributes for these multiple objects.

Editing Attributes with the Smart Grid Tools

There are two Smart Grid commands available as right-click options from the panel. These commands allow you to import and create or update tabular data from any Windows-compliant tabular/spreadsheet data such as an Excel workbook or a table in a PDF document. The Smart Grid Paste command alters the value of existing objects from pasted tabular data. Smart Grid Insert creates new objects from the tabular data. The panel must be in the Edit mode in order for the Smart Grid commands to be enabled.

Using Smart Grid Paste Command

There are two ways to update attributes of design objects using the Smart Grid Paste command: one at a time with no header data and updating as a group with header data.

You need to determine whether the tabular data has a Header Row or No Header Row. These options are located at the top right of the Smart Grid Paste dialog. If the tabular data has the header row, you can map and update multiple attributes otherwise you will have to do different attributes one by one.

For example, to change attributes as a group using the smart grid paste tool, you copy the data using the Copy With Header command from the right-click menu from the SCH List panel then paste the tabular data including the header row in an Excel workbook. The updated tabular data from this workbook can then be pasted back into the same SCH List panel using the Smart Grid Paste command. Make sure the selected entries in the SCH List panel correspond to the pasted tabular data, however, you can always select the entries first before doing a paste.

Make sure the Header Row option on the top right of the dialog is enabled. The Smart Grid Paste dialog is then updated with the top half of the dialog representing the copied table data while the bottom half shows the proposed SCH List panel content. Click the Automatically Determine Paste button to map the attributes from the Clipboard Table View region to the Schematic List View region.

All proposed data object mappings set by the Automatically Determine Paste button can be previewed before committing the new attributes to your schematic. Attributes that are being targeted by the Paste action are marked with a blue flag and those whose values are changing are marked in a bold font.

You also can use the Paste Column to Attribute and Undo Paste to Attribute buttons to selectively update attributes. To restore all the attributes to their original values, click the Reset All button in the Smart Grid Paste dialog.

Likewise, if you copy the tabular data without the row header and update the tabular data in an external spreadsheet then do a smart paste into the SCH List panel, you can only do a singular update of each attribute. That is, you use the Paste Column to Attribute and Undo Paste to Attribute buttons to update each targeted attribute and to undo this same attribute each time. The proposed changes are not committed to the schematic document until the OK button is pressed.

Using the Smart Grid Insert Command

With the Smart Grid Insert command, you can create new objects using the Smart Grid Insert dialog from the SCH List panel. You must specify the object type in your tabular data before you can successfully insert new objects in the SCH List panel and its associated schematic document.

The easiest way is to copy the existing object data from the SCH List panel using the Copy with Header command, make additions/changes in a spreadsheet then insert the updated data into the SCH List panel. Once the new data objects are mapped from the Clipboard Table View region to the proposed Schematic List View region in the Smart Grid Insert dialog, they are flagged with green indicators. Click OK to close the dialog and to create new objects on the schematic document.

Editing Attributes with Numeric Values

For a numerical-based attribute of an object, the simplest modification to that attribute's value is made by typing a new value to replace the existing one. The plus and minus operators can be used to specify the value's sign. A value entered without a specified sign is assumed to be positive. Therefore, entering 20 is the same as entering +20.

You can enter specific units of measurement for a value entered. The software will convert the value into the current units defined for the document. If no units are specified, the default units set for the document will be used.

Modification Using an Expression

More advanced modification can be achieved by using an arithmetic expression. Select the entry for the attribute you want to modify and type the expression that will be used to modify its value. You can enter any arithmetic expression using any built-in arithmetic operators and functions (found in Pascal).

If you want to use the current value for the attribute as part of the expression, you will need to make reference to this original value either by using the full name of the attribute or by using the exclamation character (the supported substitute for the name of the attribute currently being modified). If you want, you may use any other attribute field name in an expression. When using attribute names, if any names contain spaces, these must be replaced by the underscore character.

To illustrate an example of using a simple expression, consider a component pin, the Length attribute of which is currently 30. If you wanted to extend this length to 45, you could enter the expression:

Length + 15

or, in shortened form:

! + 15

Note that the spaces are optional. When you press Enter, the value will be updated to 45.

If instead you want to shorten the pin to a length of 20, you could use the subtraction operator as illustrated by the following expressions:

Length - 10
! - 10

To illustrate use of a function, the previous expression could be rewritten as:

! - sqrt(100)

The result would be the same – a length of 20.

By using the attribute's name (or substitution character (!)) the previous expressions add to or subtract from the current value for the attribute. Without such entries in the expression, you would be setting the attribute's value to the evaluated result of the expression. For example, if the attribute name or substitution character had been left out of the previous expressions, the resulting pin length would have been 15 and -10.

Again, you can enter specific units of measurement for a value entered into an expression. The software will convert the value into the current units defined for the document. If no units are specified, the default units set for the document will be used.

By selecting multiple objects in the panel, you can change numerical attributes simultaneously using an expression. For example, you may want to adjust the length of a series of component pins or shift components vertically or horizontally by a specific distance.

Batch Replacement of String-based Attributes

There are times when you may want to modify a string-based attribute that is common to multiple selected objects in the design space. For example, you may want to rename selected data bus net label objects from D1, D2, D3, etc., to Data1, Data2, Data3, etc. To perform this type of batch replacement, the use of string substitution syntax is supported in the panel.

A string substitution entry is enclosed in braces and has the form:

{oldstring=newstring}

An entry of this form causes all occurrences of oldstring found in the attribute's value to be replaced with newstring. In the case of the data bus net labels, you would select the associated Text attribute cell for each net label, right-click then choose Edit (or press F2), then enter {D=Data} in the active value field.

If you want to replace multiple, differing string portions in the same target string, type multiple substitution entries each enclosed in its own set of curly braces. For example, consider the following net labels, associated to the output wiring of a WB_PRTIO component, configured to have four, 8-bit I/O ports:

XPort8A_Out[7..0]
XPort8B_Out[7..0]
XPort8C_Out[7..0]
XPort8D_Out[7..0]

Now consider having placed a second WB_PRTIO component configured to have four, 32-bit I/O ports. Instead of placing individual net labels of a similar fashion on each output wire of each port in this second device, you could select all four of the above net labels, copy them, paste them onto the corresponding wires of the new port device then rename them. It is in this last operation that batch string substitution comes into play.

If the intended format of the new net labels is to be YPort32x_Out[31..0], where x represents the port (A, B, C or D), then you could select the Name attribute for the four net labels in the panel, enter edit mode then enter the following into the active value field:

{X=Y}{8=32}{7=31}

The software takes this entry and effectively performs a batch substitution – substituting for the first expression, then the second, and so on.

Smart Editing of String-based Attributes

The SCH List panel offers further support for string modification through its Smart Edit feature. Select the cell entries pertaining to the attribute that you want to modify for all required objects, right-click then choose Smart Edit from the menu that appears. The Smart Edit dialog will open.

The dialog offers two methods for performing string modification accessed from the Batch Replace and Formula tabs.

Batch Replace Tab

This tab provides straightforward substitution, along the lines of the string substitution discussed previously (but without having to enter the curly braces). Click inside the From field and enter the portion of the current string that you want to replace. Then click inside the To field and enter the string to be used as the replacement. The familiar string substitution syntax is displayed at the bottom of the tab.

For example consider pins of a component that have the prefix B and you need to change them to the prefix A instead. In this case, select the Pin Designator attribute for each of the pins in the panel then access the Smart Edit dialog. On the Batch Replace tab, enter B in the From field and A in the To field (the replacement string is therefore {B=A}). After clicking OK, the pin designators will be modified accordingly.

As with basic string substitution, the Batch Replace tab provides for replacement of multiple, differing string portions in the same target string. Enter the various substitutions as distinct From-To entries. Consider the previous WB_PRTIO example, where strings of the form XPort8x_Out[7..0] need to be changed to YPort32x_Out[31..0]. In this case, you would enter three distinct substitution entries on the Batch Replace tab.

Formula Tab

This tab provides for more advanced modification, allowing you to apply a specific expression to the selected string objects. The expression can include any built-in arithmetic operators and functions that apply to strings (found in Pascal). Once again, if you want to use the current value for the attribute as part of the expression, you will need to make reference to this original value either by using the full name of the attribute or by using the exclamation character (the supported substitute for the name of the attribute currently being modified). When using attribute names, if any names contain spaces, these must be replaced by the underscore character. For example, use of the Component Designator field within a formula should be entered as Component_Designator.

Consider, for example, three memory components specified in a design with designators U1, U3 and U5. You might want to extend the designators of these components by including some indication of their role. First, select the cell entries for the Component Designator attributes of these components. Then, using the addition operator, you could write an expression to add to the existing string value of the Component Designator attribute. This would take the existing (original) string value and concatenate it with a specified new string as illustrated below:

Component_Designator + '_MEM'

or, in shortened form:

! + '_MEM'

Note that the spaces are optional. After clicking OK, the designators of the components will be updated to U1_MEM, U3_MEM and U5_MEM.

To illustrate the use of string-based functions consider the Copy function that can be used to take a portion of an original string and place it within an expression to create a new string. Using the WB_PRTIO example, where strings of the form XPort8x_Out[7..0] need to be changed to YPort32x_Out[31..0], you could select the cell entries for each net label's Text attribute, access the Smart Edit dialog then write the following expression on the Formula tab:

'Y' + Copy(Text,2,4) + '32' + Copy(Text,7,6) + '31..0]'

or, in shortened form:

'Y' + Copy(!,2,4) + '32' + Copy(!,7,6) + '31..0]'

Other Formula Examples:

Change the middle character of the following two component designators to X:
CAB
CYB

Copy(!, 1, 1) + 'X' + Copy(!, 3, 1)

If the replacement is more complex, such as, if the parts of the string have varying lengths, use the Length command to calculate the values for the starting position and amount of characters as shown below.

The following component designators have a varying length middle part:
CAAAAAB
CYYYB

  • Replace the entire middle part with a single X:

    Copy(!, 1, 1) + 'X' + Copy(!, Length(!), 1)

  • Replace the last character of the middle part with an X:

    Copy(!, 1, Length(!)-2) + 'X' + Copy(!, Length(!), 1)

Right-click Menu

The right-click menu for the main list area of the panel provides the following commands:

  • Switch to View/Edit Mode – click to toggle between View and Edit mode.
  • Edit – edit single or multiple selected objects with respect to a particular attribute in the list. When editing a single object, the command becomes available when an attribute cell entry for a design object is editable. After launching the command, you will be able to edit the value in the selected cell directly. Click outside the cell or press Enter to effect the change. When simultaneously editing multiple objects, the command will become available only if the chosen attribute is editable for all objects in the selection. After launching the command, you will be able to edit the value in the focused cell directly. Click outside the cell or press Enter to effect the change across all cells in the selection.
  • Smart Edit – provides access to the Smart Edit dialog in which you can specify the criteria used to perform batch replacement of string-based attributes.
  • Copy – copy the selected cells in the list to the Windows clipboard for use in other applications.
  • Copy with Header – copy tabular data including the header row.
  • Paste – paste the current content of the Windows clipboard into the list. Combined with the Copy command, Paste enables you to copy cell content out to another spreadsheet application, make modifications then paste the modified data back into the SCH List panel.
  • Smart Grid Paste – click to open the Smart Grid Paste dialog to change the value of existing objects from pasted tabular data. The SCH List panel must be in Edit mode to access this command.
  • Smart Grid Insert – click to open the Smart Grid Insert dialog to create new objects from the tabular data. The SCH List panel must be in Edit mode to access this command.
  • Show Children – add object entries to the list with respect to the primitives that constitute group objects (e.g., Parts).
  • Zoom Selected – zooms and centers (where possible) the selected objects in the design space.
  • Report – generate a report containing all objects displayed in the list. After launching the command, the Report Preview dialog will open in which you can view, print and export the report in various file formats. The report will contain only data that is visible in the panel.
  • Report Selected – generate a report containing only those objects that are currently selected in the list. After launching the command, the Report Preview dialog will open in which you can view, print and export the report in various file formats. The report will contain only data that is visible in the panel.
  • Select All – select all objects in the list. The corresponding design objects will become selected in the main design space.
  • Select Column(s) – select all cells in the column(s) associated with the currently selected cell(s). All corresponding objects will become selected in the design space. This command is particular useful when editing a particular attribute of multiple objects.
  • Select Row(s) – select all cells in the row(s) associated with the currently selected cell. All corresponding objects will become selected in the design space. This command is particular useful when editing a particular attribute of multiple objects.
  • Choose Columns – select to open the Columns Setup dialog in which you can select the available columns that are displayed in the panel and the order in which the columns appear. By default, the Display Mode for each attribute is set to Automatic. In this mode, an attribute column will be automatically displayed if it is common to all design objects currently displayed in the panel. Click on the mode to open options that allow you to force the display of the attribute or hide it completely.

Clicking the Default button will reset the Available Columns to present attributes only for enabled primitives in the design space and reset the Display Mode to Automatic for all. Commands are also available on the right-click context menu for the Available Columns region with which to curate the attributes presented. In terms of the ordering of columns, their display (left-to-right) in the panel reflect the top-to-bottom order in the Visible Columns region of the dialog. Use the Up and Down buttons to move a selected column entry, or simply click and drag it to the required position.

Panel Shortcuts

The following table summarizes key shortcuts that are available when using the main list region of the panel.

Arrow Keys

Shift focus to next cell in direction of arrow key+

Left-Click+Drag

Multi-select in direction of mouse movement

Ctrl+Click

Multi-select (non-sequential)

Shift+Click

Multi-select (sequential)

Spacebar or F2

Edit selected cell

Enter

Finish editing current cell and enter edit mode for the cell below

Ctrl+C (or Ctrl+Insert)

Copy

Ctrl+V (or Shift+Insert)

Paste

Page Up

Jump selection to top of visible list area

Page Down

Jump selection to bottom of visible list area

Mouse-wheel

Pan up or down

Notes

  • Press Shift+F12 to toggle the visibility of the panel in the design space.
  • When any filtering currently applied to the design space is cleared, the option to display non-masked objects in the panel will produce the same result as choosing the option to display all objects.

Summary

The SCHLIB List panel allows you to display design objects associated with one or more schematic components in tabular format, enabling you to quickly inspect and/or modify object attributes. When used in conjunction with the SCHLIB Filter panel panel, it enables you to display just those objects falling under the scope of the active filter, allowing you to target and edit multiple design objects with greater accuracy and efficiency.

Panel Access

The panel can be accessed from the schematic library editor in the following ways:

  • Click Panels at the bottom-right of the workspace then select SCHLIB List from the pop-up menu.
  • Click View » Panels » SCHLIB List.
  • Use the Shift+F12 shortcut keys.
Panels can be configured to be floating in the editor space or docked to sides of the screen. If the SCHLIB List panel is currently in a group of panels, use the SCHLIB List tab located at the bottom of the panels to bring it to the front.

Content and Use

The panel is divided into two main regions:

  • Filtering controls to define which objects are displayed in the panel (display scope).
  • A tabular, spreadsheet-like region listing all objects falling under the defined display scope.

Defining Panel Display Scope

Controls at the top of the panel allow you to filter which objects are displayed in the panel and also control the current mode of the panel - allowing you to enable/disable the panel's direct editing functionality.

Click on the leftmost underlined control to select from the following options:

  • View - in this mode, you will be able only to use the panel for viewing object attributes. You will not be able to edit any of the attribute fields in the tabular region of the panel.
  • Edit - in this mode, you will be able to view and edit the attributes of design objects, directly in the tabular region of the panel.

Click on the next underlined control to select from the following options:

  • non-masked objects - this is the default option and causes the panel to display only design objects that are not masked-out in the workspace (i.e. those objects that fall under the scope and specific query expression of the currently applied filter). This option is most effective when filtering is applied to the workspace and the associated masking highlight option is enabled.
  • selected objects - display only design objects that are currently selected.
  • all objects - to display all design objects.

Click on the next underlined control to choose from the following options:

  • current component - only display target objects from the active library component in the design editor window.
  • all components - display target objects from all components contained in the active schematic library document.

The right-most underlined control allows you to determine the type of objects that can be displayed. Click on the control to reveal a selection pop-up.

Use the pop-up to choose which object types you want to include in the currently displayed list - either all objects or specific objects. To choose one or more specific object types, enable the Display only option then enable the checkbox next to the required object(s) in the list beneath. The list will contain only those object types currently displayed in the main spreadsheet region of the panel.

When enabling specific object types for display, the control will reflect the choice by listing the enabled types separated by commas.

Working with Filtered Objects

The main region of the panel displays all design objects passing the defined display scope for the panel in tabular format.

Object data is initially unsorted. Data may be sorted by any attribute by clicking on the header for that attribute's column. Clicking once will sort in ascending order; click again to sort in descending order.

Displaying Workspace Selection

As you select objects in the design workspace, the corresponding entries for those objects will appear selected in the list. A selected object is distinguished in the list by the use of a blue background for all of its cells.

Displaying Filtering Results

When a filter has been applied based on a query expression in the SCHLIB Filter panel, only those objects under the scope of the filter will be shown provided that:

  • The Mask out option is enabled in the Filter area of the SCHLIB Filter panel.
  • The Display option for the SCHLIB List panel is set to non-masked objects.
If the Select option has been enabled also in the Filter area of the SCHLIB Filter panel, all filtered objects will appear selected in the list.

Using the Panel to Select Objects in the Workspace

As you select entries for design objects in the list, those objects will become selected in the design workspace. The list supports single or multiple selections, the latter using standard Ctrl + Click, Shift + Click and click and drag features.

Double-click on an entry to open the associated Properties panel for that object in which you can make changes as required.

Editing Object Attributes

Editing is possible only if the panel is in Edit mode. When the panel is configured in View mode, you only will be allowed to view object properties.

You can edit attributes of an object by editing the relevant entry in the panel. Click on a cell to focus it and then either right-click and choose Edit or click again to edit the attribute value directly. Depending on the attribute, you will either need to type a value, toggle a checkbox or select an option from a drop-down. The change will take effect once you press Enter or click outside of the field you are editing. This is one of the advantages of using the panel to edit object properties - the panel will remain open, allowing you to change attribute after attribute as needed without having to reopen the Properties panel each time.

Another advantage of using the panel for editing is that you can edit multiple objects from one place. Selected objects can be of the same or differing type. Those attributes that are common to all objects in the selection will be displayed in the panel. Select the required cells across all required objects for the shared attribute you want to modify. Then either right-click then choose the Edit command or press the F2 key (or the Spacebar). You will be able to edit the value for the chosen attribute with respect to the focused object in the selection. Click outside the attribute's cell or press Enter to effect the change, which will subsequently be applied to all remaining objects in the selection.

By using filtering, you can apply a query (an expression for the filter) to target a specific group of objects in one or more components in the active library and then use the SCHLIB List panel to edit the attributes for these multiple objects.

Editing Attributes with Smart Grid Paste Tools

There are two Smart Grid commands available as right-click options from the SCHLIB List panel. These commands allow you to import and create or update tabular data from any Windows-compliant tabular/spreadsheet data such as an Excel workbook or a table in a PDF document in the SCHLIB List panel.

The Smart Grid Paste command alters the value of existing objects from pasted tabular data and Smart Grid Insert creates new objects from the tabular data. The SCHLIB List panel must be in the Edit mode in order to have copy and paste commands enabled.

Using Smart Grid Paste Command

There are two main ways to update attributes of design objects using the Smart Grid Paste command: updating attributes one at a time with no header data and updating attributes as a group with header data.

You need to determine whether the tabular data has the Header Row or No Header Row. These options are located at the top right of the Smart Grid Paste dialog. If the tabular data has the header row, then you can map and update multiple attributes otherwise, you will need to do different attributes one by one.

For example, to change attributes as a group using the Smart Grid Paste tool, copy the data using the Copy With Header command from the right-click menu from the SCHLIB List panel then paste the tabular data including the header row into an Excel workbook. The updated tabular data from this workbook can then be pasted back into the same SCHLIB List panel using the Smart Grid Paste command. Make sure the selected entries in the SCHLIB List panel correspond to the pasted tabular data; however, you can always select the entries first before doing a paste.

Make sure the Header Row option on the top right of the dialog is enabled. The Smart Grid Paste dialog is then updated with the top half of the dialog representing the copied table data while the bottom half shows the proposed SCHLIB List panel content. Then, click the Automatically Determine Paste button to map the attributes from the Clipboard Table View region to the SCHLIB List View region.

All proposed data object mappings set by the Automatically Determine Paste button can be previewed before committing the new attributes to your schematic library document. Attributes that are being targeted by the paste action are marked with a blue flag and those whose values are changing are marked in a bold font.

You can also use the Paste Column to Attribute and Undo Paste to Attribute buttons to update attributes selectively. To restore all the attributes to their original values, click on the Reset All button in the Smart Grid Paste dialog.

Likewise, if you copy the tabular data without the row header and update the tabular data in an external spreadsheet then perform a smart paste into the SCHLIB List panel, you can only do a singular update of each attribute. That is, you use the Paste Column to Attribute and Undo Paste to Attribute buttons to update each targeted attribute and to undo this same attribute each time. The proposed changes are not committed to the schematic document until the OK button is pressed.

Using the Smart Grid Insert Command

With the Smart Grid Insert command, you can create new objects using the Smart Grid Insert dialog from the SCHLIB List panel. You must specify the object type in your tabular data before you can successfully insert new objects into the SCHLIB List panel and its associated schematic document.

The easiest way to do this is to copy the existing object data from the SCHLIB List panel using the Copy with Header command, make additions/changes in a spreadsheet then insert the updated data into the SCHLIB List panel. Once the new data objects are mapped from the Clipboard View region to the proposed List View region in the Smart Grid Insert dialog, they are flagged with green indicators. Click OK to close this dialog and create new objects on the schematic library document.

Accelerating Schematic Symbol Creation with Smart Grid Insert Tool

The Smart Grid Insert tool lets you map current clipboard data to Altium Designer object properties. These tools greatly simplify the component creation process and in a few steps you can create the pins of a component directly from external data like a spreadsheet, a PDF, or an ASCII file.

While you could copy straight from the source pin data into Altium Designer, it is worth doing a small amount of preparatory work to achieve an optimal result. A spreadsheet is the right place to do that. Typically you will only need to perform a few steps, including:

  • Adding a header row to make the column-to-column mapping easier. Don’t worry about getting the column names exactly the same, Altium Designer does a good job of automatically inferring the correct mapping.
  • Adding an Object Kind column, so that Altium Designer knows that it is has to create pin-type objects.
  • Adding a Type column, to specify each pin’s electrical type.
  • Including X and Y pin locations. Spreadsheets have excellent tools for filling cells with values, for example if you right-click and drag to select a set of cells in Microsoft Excel, you can specify the numeric series you want, making it easy to space the pins out in the schematic library.

High-pin count and regularly sectioned components, such as FPGAs, lend themselves to implementation as multipart components in Altium Designer. The easiest way to do that is to create all the pins in the first part of the Altium Designer component, and then cut and paste the blocks of pins to the other parts.

To get the pins into neat, part-ready groups, try leaving a couple of empty rows between the pins for each part in the spreadsheet. Not only does it make it easy to see where you might need to restart coordinate values, you can also automatically add X, Y values to a large selection and then remove the redundant X, Y values in the empty rows. This will result in no pins in those deleted locations, neatly spacing the part-ready groups.

Use the tools in the spreadsheet to add suitable X and Y coordinates for the pins.
Use the tools in the spreadsheet to add suitable X and Y coordinates for the pins.

Select and copy the required cells in your spreadsheet. Don’t worry if there are columns in the selection that you don’t need, the Smart Grid tools can ignore these.

In Altium Designer, right-click in the SCHLIB List panel and select Smart Grid Insert from the menu to open the Smart Grid Insert dialog. If your source data includes a header row Altium Designer will attempt to automatically identify the object kind, then build a list of created objects. A point to keep in mind, before you map columns the list of created objects will have the properties of the current Altium Designer default pin object. So for example, if you wanted all the pins placed at 180 degrees with a length of 20, then set the default values in Altium Designer before starting the smart grid process. That way you don’t need to worry about adding those settings into the spreadsheet, or editing them in Altium Designer after the creation process. Not sure how to set the defaults? Just select Place » Pin from the menus, then before you place a pin press Tab to edit the default values, then place and delete that one pin.

Another big advantage of including a header row is that you get to use the Automatically Determine Paste button. This is a great feature – it will search and compare fields in the created object against source data column titles, and make intelligent choices about how they should be mapped. Don’t worry if the automatic feature gets one wrong, you can use the Undo Paste button to undo a mapped column. To manually map, select a column in the source data and its corresponding column in the created objects, then click the Paste Column button.

As soon as you click OK, the set of created objects will appear in the design space. Add a suitable body to each part, then cut and paste to create the individual parts, and your symbol is ready.

The Smart Grid Inserted pins, and the parts with the component bodies added. The Smart Grid Inserted pins, and the parts with the component bodies added.
The Smart Grid Inserted pins, and the parts with the component bodies added.

Editing Attributes with Numeric Values

For a numerical-based attribute of an object, the simplest modification to that attribute's value is made by typing a new value to replace the existing one. The plus and minus operators can be used to specify the value's sign. A value entered without a specified sign is assumed to be positive. Therefore, entering 20 is the same as entering +20.

You can enter specific units of measurement for a value entered. The software will convert the value into the current units defined for the document. If no units are specified, the default units set for the document will be used.

Modification Using an Expression

More advanced modification can be achieved by using an arithmetic expression. Select the entry for the attribute you want to modify and type the expression that will be used to modify its value. You can enter any arithmetic expression using any built-in arithmetic operators and functions found in Pascal.

If you want to use the current value for the attribute as part of the expression, you will need to make reference to this original value either by using the full name of the attribute or by using the exclamation character (the supported substitute for the name of the attribute currently being modified). If you want, you may use any other attribute field name in an expression. When using attribute names, if any names contain spaces, they must be replaced by the underscore character.

To illustrate an example of using a simple expression, consider a component pin, the Length attribute of which is currently 30. If you wanted to extend this length to 45, you could enter the expression:
Length + 15
or, in shortened form:
! + 15
Note that the spaces are optional. When you press Enter, the value will be updated to 45.

If instead you want to shorten the pin to a length of 20, you could use the subtraction operator, as illustrated by the following expressions:
Length - 10
! - 10

To illustrate use of a function, the previous expression could be re-written as:
! - sqrt(100)
the result would be the same - a length of 20.

By using the attribute's name (or substitution character (!)) the previous expressions add to or subtract from the current value for the attribute. Without such entries in the expression, you would be setting the attribute's value to the evaluated result of the expression. For example, if the attribute name or substitution character had been left out of the previous expressions, the resulting pin length would have been 15 and -10.

Again, you can enter specific units of measurement for a value entered into an expression. The software will convert the value into the current units defined for the document. If no units are specified, the default units set for the document will be used.

By selecting multiple objects in the panel, you can change numerical attributes simultaneously using an expression. For example, you may want to adjust the length of a series of component pins or shift components vertically or horizontally by a specific distance.

Batch Replacement of String-based Attributes

There are times when you may want to modify a string-based attribute that is common to multiple selected objects in the workspace. For example, you may want to rename the display names of selected pin objects from D1, D2, D3, etc., to Data1, Data2, Data3, etc. To perform this type of batch replacement, the use of string substitution syntax is supported in the panel.

A string substitution entry is enclosed in braces and has the form:
{oldstring=newstring}

An entry of this form causes all occurrences of oldstring found in the attribute's value to be replaced with newstring. In the case of the pin display names, you would select the associated Name attribute cell for each pin, right-click then choose Edit (or press F2), then press Enter {D=Data} in the active value field.

If you want to replace multiple, differing string portions in the same target string, type multiple substitution entries each enclosed in its own set of curly braces. For example, consider the following display names associated with output pins of a component:
INTA
INTB
INTC
INTD

If the intended format for new display names is to be EXT_INT_x - where x represents 1, 2, 3, 4, then you could select the Name attribute for the four pins in the panel, switch to Edit mode then enter the following into the active value field:
{INT=EXT_INT}{A=_1}{B=_2}{C=_3}{D=_4}
The software takes this entry and effectively performs a batch substitution - substituting for the first expression, then the second, and so on.

Smart Editing of String-based Attributes

The SCHLIB List panel offers further support for string modification through its Smart Edit feature. Select the cell entries pertaining to the attribute that you want to modify for all required objects, right-click then choose Smart Edit from the menu. The Smart Edit dialog will open.

The Smart Edit dialog offers two methods for performing string modification accessed from the Batch Replace and Formula tabs.

Batch Replace Tab

The Batch Replace tab provides straightforward substitution, along the lines of the string substitution discussed previously (without having to enter the curly braces). Click inside the From field then enter the portion of the current string that you want to replace. Click inside the To field then enter the string to be used as the replacement. The familiar string substitution syntax is displayed at the bottom of the tab.

For example, consider pins of a component that have the prefix D as part of their display Name and you need to change them to have a prefix of DATA instead. In this case, select the Name attribute for each of the pins in the panel then access the dialog. On the Batch Replace tab, enter D in the From field and DATA in the To field (the replacement string is therefore {D=DATA}). After clicking OK, the display Name will be modified accordingly.

As with basic string substitution, the Batch Replace tab provides for replacement of multiple, differing string portions in the same target string. Enter the various substitutions as distinct From-To entries. Consider the previous INTx example (see Batch Replacement of String-based Attributes), where strings of the form INTx (x = A, B, C, D) need to be changed to EXT_INT_x (x = 1, 2, 3, 4). In this case, you would enter four distinct substitution entries on the Batch Replace tab.

Formula Tab

The Formula tab provides for more advanced modification, allowing you to apply a specific expression to the selected string objects. The expression can include any built-in arithmetic operators and functions that apply to strings (found in Pascal). If you want to use the current value for the attribute as part of the expression, you will need to make reference to this original value, either by using the full name of the attribute or by using the exclamation character (the supported substitute for the name of the attribute currently being modified). When using attribute names, if any names contain spaces, these must be replaced by the underscore character. For example, use of the Pin Designator field within a formula should be entered as Pin_Designator.

Consider, for example, three pins specified for a schematic component with designators 1, 2, and 3. You might want to extend the designators of these pins by including some indication of their role. First, select the cell entries for the Pin Designator attributes of these pins. Then, using the addition operator, you could write an expression to add to the existing string value of the Pin Designator attribute. This would take the existing (original) string value and concatenate it with a specified new string as illustrated below:
'ADDR_' + Pin_Designator
or, in shortened form:
'ADDR_' + !
Note that the spaces are optional. After clicking OK, the designators of the pins will be updated to ADDR_1, ADDR_2, and ADDR_3.

To illustrate the use of string-based functions, consider the Copy function that can be used to take a portion of an original string and replace it within an expression to create a new string. For example, pin display names of the format DATA_I_x[7..0] now need to be changed to the format EXT_DAT_I_x[31..0]. In this case, you could select the cell entries for each pin's Name attribute, access the Smart Edit dialog and write the following expression on the Formula tab:
'EXT_' + Copy(Name,1,3) + 'I' + Copy(Name,7,3) + '31..0]'
or, in shortened form:
'EXT_' + Copy(!,1,3) + 'I' + Copy(!,7,3) + '31..0]'

Right-click Menu

The right-click menu for the main list area of the panel provides the following commands:

  • Switch to View/Edit Mode - click to toggle between View and Edit mode.
  • Edit - allows you to edit single or multiple selected objects with respect to a particular attribute in the list. When editing a single object, the command becomes available when an attribute cell entry for a design object is editable. After launching the command, you will be able to edit the value in the selected cell directly. Click outside the cell or press Enter to effect the change. When simultaneously editing multiple objects, the command will become available only if the chosen attribute is editable for all objects in the selection. After launching the command, you will be able to edit the value in the focused cell directly. Click outside the cell or press Enter to effect the change across all cells in the selection. 
  • Smart Edit - click to open the Smart Edit dialog in which you can specify the criteria used to perform batch replacement of string-based attributes. 
  • Copy - click to copy the selected cells in the list to the Windows clipboard for use in other applications.
  • Copy with Header - copy tabular data including the header row.
  • Paste - click to paste the current content of the Windows clipboard into the list. Combined with the Copy command, this enables you to copy cell content out to another spreadsheet application, make modifications then paste the modified data back into the SCHLIB List panel.
  • Smart Grid Paste - click to open the Smart Grid Paste dialog to change the value of existing objects from pasted tabular data. The SCHLIB List panel must be in Edit mode to access this command.
  • Smart Grid Insert - click to open the Smart Grid Insert dialog to create new objects from the tabular data. TheSCHLIB List panel must be in Edit mode to access this command.
  • Show Children - used to add object entries to the list with respect to the primitives that constitute group objects (e.g., Parts).
  • Zoom Selected - zooms and centers (where possible) the selected objects in the design editor window.
  • Report - use to generate a report containing all objects displayed in the list. After launching the command, the Report Preview dialog opens in which you can view, print and export the report in various file formats. The report will contain only data that is visible in the panel.
  • Report Selected - use to generate a report containing only those objects that are currently selected in the list. After launching the command, the Report Preview dialog will open in which you can view, print and export the report in various file formats. The report will contain only data that is visible in the panel.
  • Select All - use to select all objects in the list. The corresponding design objects will become selected in the main design workspace.
  • Select Column(s) - use to select all cells in the column associated with the currently selected cell. All corresponding objects will become selected in the design workspace. This command is particularly useful when editing a particular attribute of multiple objects.
  • Select Row(s) - use to select all cells in the row associated with the currently selected cell. All corresponding objects will become selected in the design workspace. This command is particularly useful when editing a particular attribute of multiple objects.
  • Choose Columns - use to access the Columns Setup dialog in which you can determine the available attribute columns that are displayed in the panel and the order in which the columns appear. By default, the Display Mode for each attribute will be set to Automatic. In this mode, an attribute column will be automatically displayed if it is common to all design objects currently displayed in the panel. Click on the mode for pop-up options that allow you to force the display of the attribute or to hide it completely.

​List Shortcuts

The following table summarizes key shortcuts that are available when using the main list region of the panel.

Arrow Keys

Shift focus to next cell in direction of arrow key

Left-Click & Drag

Multi-select in direction of mouse movement

Ctrl + Click

Multi-select (non-sequential)

Shift + Click

Multi-select (sequential)

Spacebar or F2

Edit selected cell

Enter

Finish editing current cell and enter edit mode for cell beneath

Ctrl + C (or Ctrl + Insert)

Copy

Ctrl + V (or Shift + Insert)

Paste

Page Up

Jump selection to top of visible list area

Page Down

Jump selection to bottom of visible list area

Mouse-wheel

Pan up or down

Tips

  • Press Shift + F12 to toggle the visibility of the panel in the workspace.
  • When any filtering currently applied to the workspace is cleared, the option to display non-masked objects in the panel will produce the same result as choosing the option to display all objects.

The PCB List panel
The PCB List panel

Summary

The PCB List panel allows you to display design objects from the active document in tabular format, enabling you to quickly inspect and modify object attributes. When used in conjunction with the PCB Filter Panel, it enables you to display just those objects falling under the scope of the active filter – allowing you to target and edit multiple design objects with greater accuracy and efficiency.

Panel Access

The panel is accessed from the PCB Editor in the following ways:

  • Click the Panels button at the bottom-right of the design space then select PCB List.
  • Click View » Panels » PCB List from the main menus.
  • Use the Shift+F12 shortcut keys.
Panels can be configured to be floating in the editor space or docked to sides of the screen. If the PCB List panel is currently in a group of panels, use the PCB List tab located at the bottom of the panels to bring it to the front.

Content and Use

The panel is divided into two main regions:

  • Filtering controls to define which objects are displayed in the panel (display scope).
  • A tabular, spreadsheet-like region listing all objects falling under the defined display scope.

Defining Panel Display Scope

Controls at the top of the panel allow you to filter which objects are displayed in the panel and also control the current mode of the panel, allowing you to enable/disable the panel's direct editing functionality.

Click View to select from the following options:

  • View – in this mode, you only can use the panel for viewing object attributes. You will not be able to edit any of the attribute fields in the tabular region of the panel.
  • Edit – in this mode, you can view and edit the attributes of design objects directly in the tabular region of the panel.

Click on non-masked objects to select from the following options:

  • non-masked objects – this is the default option and causes the panel to display only design objects that are not masked-out in the design space (i.e. those objects that fall under the scope and specific query expression of the currently applied filter). This option is most effective when filtering is applied to the design space and the associated masking highlight option is enabled.
  • selected objects – this option causes the panel to display only design objects that are currently selected.
  • all objects – this option causes the panel to display all design objects.

Clicking on all types of objects allows you to control the type of objects that can be displayed. Click on the control to open a selection pop-up.

You can select displaying all types of objects in the panel, or displaying only objects of particular type(s).
You can select displaying all types of objects in the panel, or displaying only objects of particular type(s).

The 'No' option refers to other object primitives that are featured in the PCB document, but are not denoted in this list, such as Layer Stack Table and Drill Table object primitives.

Use the pop-up to choose which object types you want to include in the currently displayed list – either all objects or specific objects. To choose one or more specific object types, enable the Display only option then enable the check box next to the required object(s) in the list beneath. The list will contain only those object types currently displayed in the main spreadsheet region of the panel.

When enabling specific object types for display, the control will reflect the choice by listing the enabled types, separated by commas.

Working with Filtered Objects

The main region of the panel displays all design objects passing the defined display scope for the panel in tabular format. In addition, all defined Nets, Object Classes and Design Rules are also listed.

Object data is initially unsorted. Data may be sorted by any attribute by clicking on the header for that attribute's column. Clicking once will sort in ascending order. Click again to sort by descending order.

Displaying Design Space Selection

As you select objects in the design space, the corresponding entries for those objects will appear selected in the list. A selected object is distinguished in the list by the use of a highlighted background for all of its cells.

Selected objects are highlighted in the panel.
Selected objects are highlighted in the panel.

Displaying Filtering Results

When a filter has been applied based on a query expression entered into the PCB Filter panel, only those objects under the scope of the filter will be shown provided that:

  • The Mask option is enabled on the PCB Filter panel.
  • The Display option for the PCB List panel is set to non-masked objects.

If the Select option also has been enabled on the PCB Filter panel, all filtered objects will appear selected in the list.

Using the Panel to Select Objects in the Design Space

As you select entries for design objects in the list, those objects will become selected in the design space. The list supports single or multiple selection, the latter using standard Ctrl+Click, Shift+Click and click-and-drag features.

Double-clicking on an entry will open the associated Properties panel for that object in which you can make changes as required. User-defined classes can only be edited with respect to their name. As such, double-clicking on a class entry will have no effect.

Editing Object Attributes

You can edit attributes of an object by editing the relevant entry in the panel. Click on a cell to focus it then either right-click then choose Edit or click again to edit the attribute value directly. Depending on the attribute, you will need to either type a value, toggle a checkbox or select an option from a drop-down. The change will take effect once you press Enter or click outside of the field you are editing. This is one of the advantages of using the panel to edit object properties – the panel will remain open, allowing you to change attribute after attribute, as needed, without having to reopen the Properties panel each time.

Another advantage of using the panel for editing is that you can edit multiple objects from one place without having to edit one object at a time. Selected objects can be of the same or differing type. Those attributes that are common to all objects in the selection will be displayed in the panel. Select the required cells – across all required objects – for the shared attribute you want to modify. Then either right-click then choose Edit or press the F2 key (or the Spacebar). You will be able to edit the value for the chosen attribute with respect to the focused object in the selection (whose cell is distinguished by a dotted outline). Click outside the cell or press Enter to make the change, which will subsequently be applied to all remaining objects in the selection.

By using filtering, you can apply a query (an expression for the filter) to target a specific group of objects in the design and then use the panel to edit the attributes for these multiple objects directly.

Editing is possible only if the panel is configured in Edit mode. When the panel is configured in View mode, you only will be allowed to view object properties.

Editing Attributes with Smart Grid Paste Tools

There are two Smart Grid commands available as right-click options from the PCB List panel. These commands allow you to import and create or update tabular data from any Windows compliant tabular/spreadsheet data, such as an Excel workbook or a table in a PDF document, in the PCB List panel.

The Smart Grid Paste command alters the value of existing objects from pasted tabular data and the Smart Grid Insert command creates new objects from the tabular data. The PCB List panel must be in the Edit mode in order to have copy and paste commands enabled.

Using Smart Grid Paste Command

There are two ways to update attributes of design objects using the Smart Grid Paste command: updating attributes one at a time with no header data, and updating attributes as a group with header data.

You need to determine whether the tabular data has the Header Row or No Header Row. These options are located at the top right of the Smart Grid Paste dialog. If the tabular data has the header row, then you can map and update multiple attributes in one operation, otherwise you will have to do different attributes one by one.

For example, to change attributes as a group using the smart grid paste tool, copy the data using the Copy With Header command from the right-click pop-up menu from the PCB List panel and paste the tabular data including the header row in an Excel workbook. The updated tabular data from this workbook can then be pasted back into the same PCB List panel using the Smart Grid Paste command from the pop-up menu. Make sure the selected entries in the PCB List panel correspond to the pasted tabular data; however, you can always select the entries first before doing a paste.

Make sure the Header Row option on the top right of the dialog is enabled. The Smart Grid Paste dialog is then updated with the top half of the dialog representing the copied table data, while the bottom half shows the proposed PCB List content. Click the Automatically Determine Paste button to map the attributes from the Clipboard Table View region to the PCB List View region.

All proposed data object mappings set by the Automatically Determine Paste button can be previewed before committing the new attributes to your PCB document. Attributes that are being targeted by the Paste action are marked with a blue flag, and those whose values are changing are marked in a bold font.

You can also use Paste Column to Attribute and Undo Paste to Attribute buttons to selectively update attributes. To restore all the attributes to their original values, click the Reset All button in the Smart Grid Paste dialog.

Attributes of existing objects can be updated with the Smart Grid Paste command and the subsequent Smart Grid Paste dialog.
Attributes of existing objects can be updated with the Smart Grid Paste command and the subsequent Smart Grid Paste dialog.

Similarly, if you copy the tabular data without the row header and update the tabular data in an external spreadsheet then do a smart paste back into the PCB List panel, you can only do a singular update of each attribute. That is, you use the Paste Column to Attribute and Undo Paste to Attribute buttons to update each targeted attribute and to undo this same attribute each time. The proposed changes are not committed to the PCB document until the OK button is pressed.

Using the Smart Grid Insert Command

With the Smart Grid Insert command, you can create new objects using the Smart Grid Insert dialog accessed from the PCB List panel. You must specify the object type in your tabular data before you can successfully insert new objects in the PCB List and its associated PCB document.

The easiest way is to copy the data from the PCB List using the Copy with Header command, make additions/changes in a spreadsheet then insert the updated data back in the PCB List panel. Once the new data objects are mapped from the Clipboard Table View region to the proposed PCB List View region n the Smart Grid Insert dialog, they are flagged with green indicators. Click OK to close the dialog and to create new objects on the PCB document.

New objects can be added with the Smart Grid Insert command and the subsequent Smart Grid  Insert dialog.
New objects can be added with the Smart Grid Insert command and the subsequent Smart Grid  Insert dialog.

Editing Attributes with Numeric Values

For a numerical-based attribute of a selected object, the simplest modification to that attribute's value is made by typing a new value to replace the existing one. The plus and minus operators can be used to specify the value's sign. A value entered without a specified sign is assumed to be positive. Therefore, entering 20 is the same as entering +20.

You can enter specific units of measurement for a value entered. The software will convert the value into the current units defined for the document. If no units are specified, the default units set for the document will be used.

Modification Using an Expression

More advanced modification can be achieved by using an arithmetic expression. Simply select the entry for the attribute you wish to modify and type the expression that will be used to modify its value. You can enter any arithmetic expression using any built-in arithmetic operators and functions (found in Pascal).

If you want to use the current value for the attribute as part of the expression, you will need to make reference to this original value, either by using the full name of the attribute, or by using the exclamation character (the supported substitute for the name of the attribute currently being modified). If you want, you may use any other attribute field name in an expression. When using attribute names, if any names contain spaces, these must be replaced by the underscore character.

To illustrate an example of using a simple expression, consider a component, the Height attribute of which is currently 200mil. If you wanted to extend this height to 500mil, you could enter the expression:

Height + 300

or, in shortened form:

! + 300

Note that the spaces are optional. When you press Enter, the value will be updated to 500mil.

If instead you want to reduce the height to 100mil, you could use the subtraction operator as illustrated by the following expressions:

Height - 100
! - 100

To illustrate use of a function, the previous expression could be re-written as:

! - sqr(10)

The result would be the same – a height of 100mil.

By using the attribute's name (or substitution character (!) the previous expressions add to or subtract from the current value for the attribute. Without such entries in the expression, you would be setting the attribute's value to the evaluated result of the expression. For example, if the attribute name or substitution character had been left out of the previous expressions, the resulting value for the component height would have been 300mil and -100mil, respectively.

Again, you can enter specific units of measurement for a value entered into an expression. The software will convert the value into the current units defined for the document. If no units are specified, the default units set for the document will be used.

By selecting multiple objects in the panel, you can change numerical attributes simultaneously using an expression. For example, you may want to adjust the height of a series of components associated with a particular region of the board, or shift components vertically or horizontally by a specific distance.

Batch Replacement of String-Based Attributes

There are times when you may want to modify a string-based attribute that is common to multiple selected objects. For example, you may want to rename the designators of selected header components from P1, P2, P3, etc, to HDR1, HDR2, HDR3, etc. To perform this type of batch replacement, the use of string substitution syntax is supported in the panel.

A string substitution entry is enclosed in braces and has the form:

{oldstring=newstring}

An entry of this form causes all occurrences of oldstring found in the attribute's value to be replaced with newstring. In the case of the designators, you would select the associated Name attribute cell for each designator, right-click and select Edit (or press F2), and then enter {P=HDR} in the active value field.

Should you wish to replace multiple, differing string portions in the same target string, type multiple substitution entries each enclosed in its own set of curly braces. For example, consider the following free text strings placed on the PCB of a four port communications switching device, where each port provides for communication with an 8-bit peripheral device:

CommPortA_8
CommPortB_8
CommPortC_8
CommPortD_8

Now consider having modified the design to allow for communications with 32-bit external peripheral devices. Also, the customer has requested that the Comm prefix be replaced by IO. The free strings now need to be updated, which is where batch string substitution comes into play.

If the intended format of the new strings is to be IOPortx_32, where x represents the port (A, B, C, or D), then you could select the String attribute for the four free strings in the panel, enter Edit mode then enter the following into the active value field:

{Comm=IO}{8=32}

The software takes this entry and effectively performs a batch substitution – substituting for the first expression then the second.

Smart Editing of String-based Attributes

The Batch Replace tab of the Smart Edit dialog
The Batch Replace tab of the Smart Edit dialog

The PCB List panel offers further support for string modification through its Smart Edit feature. Select the cell entries pertaining to the attribute that you want to modify for all required objects, right-click then choose Smart Edit. The Smart Edit dialog will open.

The dialog offers two methods for performing string modification accessed from the Batch Replace and Formula tabs.

Batch Replace

This tab provides straightforward substitution, along the lines of the string substitution discussed previously (but without having to enter the curly braces). Click inside the From field then enter the portion of the current string that you want to replace. Then click inside the To field and enter the string to be used as the replacement. The familiar string substitution syntax is displayed at the bottom of the tab.

For example, consider the designators of three header components that currently have the prefix P, but you need to change them to have prefix HDR instead. In this case, select the Name attribute for each of the components in the panel and access the Smart Edit dialog. Then on the Batch Replace tab, enter P in the From field and HDR in the To field (the replacement string is therefore {P=HDR}). After clicking OK, the designators will be modified accordingly.

As with basic string substitution, the Batch Replace tab provides for replacement of multiple, differing string portions in the same target string. Enter the various substitutions as distinct From-To entries. Consider the previous Comms Port example (see Batch Replacement of String-Based Attributes), where strings of the form CommPortx_8 need to be changed to IOPortx_32. In this case, you would enter two distinct substitution entries on the Batch Replace tab.

Formula Tab

This tab provides for more advanced modification, allowing you to apply a specific expression to the selected string objects. The expression can include any built-in arithmetic operators and functions that apply to strings (found in Pascal). If you want to use the current value for the attribute as part of the expression, you will need to make reference to this original value either by using the full name of the attribute or by using the exclamation character (the supported substitute for the name of the attribute currently being modified). When using attribute names, if any names contain spaces, these must be replaced by the underscore character. For example, use of the Component Comment field within a formula should be entered as Component_Comment.

The Formula tab of the Smart Edit dialog
The Formula tab of the Smart Edit dialog

Consider, for example, three selected memory components specified in a design with designators U1, U3 and U5. You might want to extend the designators of these components by including some indication of their role. First, select the cell entries for the Name attributes of these components. Then, using the addition operator, you could write an expression to add to the existing string value of the Name attribute. This would take the existing (original) string value and concatenate it with a specified new string, as illustrated below:

Name + '_MEM'

or, in shortened form:

! + '_MEM'

Note that the spaces are optional. After clicking OK, the designators of the components will be updated to U1_MEM, U3_MEM and U5_MEM.

To illustrate the use of string-based functions, consider the Copy function, which can be used to take a portion of an original string and place it within an expression to create a new string. Using the Comms Port example, where strings of the form CommPortx_8 need to be changed to IOPortx_32 – in this case, you could select the cell entries for each object's String attribute, access the dialog then write the following expression on the Formula tab:

'IO' + Copy(String,5,6) + '32'

or, in shortened form:

'IO' + Copy(!,5,6) + '32'

Right-click Menu

The right-click menu for the main list area of the panel provides the following commands:

  • Edit – allows you to edit single or multiple selected objects with respect to a particular attribute in the list. When editing a single object, the command becomes available when an attribute cell entry for a design object is editable. After launching the command, you will be able to edit the value in the selected cell directly. Click outside the cell or press Enter to effect the change. When simultaneously editing multiple objects, the command will become available only if the chosen attribute is editable for all objects in the selection. After launching the command, you will be able to edit the value in the focused cell directly. Click outside the cell or press Enter to effect the change across all cells in the selection.
  • Smart Edit – provides access to the Smart Edit dialog in which you can specify the criteria used to perform batch replacement of string-based attributes.
  • Copy – copies the selected cells in the list to the Windows clipboard for use in other applications,
  • Paste – allows you to paste the current content of the Windows clipboard into the list. Combined with the Copy command, this enables you to copy cell content to another spreadsheet application, make modifications, then paste the modified data back into the PCB List panel.
  • Zoom Selected – zooms and centers (where possible) selected objects in the design space.
  • Apply Filter – applies filtering based on the selected object(s) in the list. The object(s) will be displayed in the design editor window in accordance with the Mask / Dim / Normal, Select and Zoom options defined in the PCB Filter panel. The object(s) will be selected regardless of the status of the Select option in the PCB Filter panel. Only those objects in the selection will be displayed in the list.
  • Clear Filter – clears the currently applied filter and repopulates the list with all objects in the design.
  • Remove Non-Selected – remove all unselected objects from the list.
  • Report – generate a report containing all objects displayed in the list. After launching the command, the Report Preview dialog will open in which you can view, print and export the report in various file formats. The report will contain only data that is visible in the panel.
  • Report Selected – generate a report containing only those objects that are currently selected in the list. After launching the command, the Report Preview dialog will appear in which you can view, print and export the report in various file formats. The report will contain only data that is visible in the panel.
  • Show Component Children – add object entries to the list with respect to the primitives that constitute components.
  • Show Net Children – add object entries to the list with respect to all net objects that constitute nets in the design.
  • Show Polygon Children – add object entries to the list with respect to the primitives that constitute polygons.
  • Advanced (sub-menu) – this sub-menu has commands that allow you to switch to owner components, owner nets or owner polygons from selected child primitives or members belonging to those group objects. In each case, filtering will be applied to each owner object affected and the list will display only those owner objects and their primitives/members if the corresponding option to show children for an object is enabled.
  • Select All – select all objects in the list. The corresponding design objects will become selected in the design space.
  • Select Column – select all cells in the column associated with the currently selected cell. All corresponding objects will become selected in the design space. This command is particular useful when editing a particular attribute of multiple objects.
  • Choose Columns – provides access to the Columns Setup dialog in which you can determine the available attribute columns that are displayed in the panel and the order in which the columns appear. By default, the Display Mode for each attribute will be set to Automatic. In this mode, an attribute column will be automatically displayed if it is common to all design objects currently displayed in the panel. Click on the mode to open a pop-up with options that allow you to force the display of the attribute or hide it completely.

The Columns Setup dialogThe Columns Setup dialog

Clicking the Default button will reset the Available Columns to present attributes only for enabled primitives in the design space and reset the Display Mode to Automatic for all. Commands are also available on the right-click context menu for the Available Columns region with which to curate the attributes presented. In terms of the ordering of columns, their display (left-to-right) in the panel reflect the top-to-bottom order in the Visible Columns region of the dialog. Use the Up and Down buttons to move a selected column entry, or simply click and drag it to the required position.

List Shortcuts

The following table summarizes key shortcuts that are available when using the main list region of the panel.

Arrow Keys

Shift focus to next cell in direction of arrow key

Left-Click+Drag

Multi-select in direction of mouse movement

Ctrl+Click

Multi-select (non-sequential)

Shift+Click

Multi-select (sequential)

F2 or Spacebar

Edit selected cell

Enter

Finish editing current cell and enter edit mode for the cell below

Ctrl+C (or Ctrl+Insert)

Copy

Ctrl+V (or Shift+Insert)

Paste

Page Up

Jump selection to top of visible list area

Page Down

Jump selection to bottom of visible list area

Mouse-wheel

Pan up or down

Tips

  • The Show Children-based commands are particularly useful when a small selection of parent objects have been previously selected and filtered.
  • When any filtering currently applied to the design space is cleared, the option to display non-masked objects in the panel will produce the same result as choosing the option to display all objects.

Summary

The PCBLIB List panel allows you to display design objects associated with one or more PCB component footprints in tabular format, enabling you to quickly inspect and/or modify object attributes. When used in conjunction with the PCBLIB Filter panel, it enables you to display only those objects falling under the scope of the active filter - allowing you to target and edit multiple design objects with greater accuracy and efficiency.

Panel Access

The panel is accessed from the PCB Library editor in the following ways:

  • Click the Panels button at the bottom-right of the workspace then select PCBLIB List.
  • Click View » Panels » PCBLIB List.
  • Use the Shift+F12 shortcut keys.

Panels can be configured to be floating in the editor space or docked to sides of the screen. If the PCBLIB List panel is currently in a group of panels, use the PCBLIB List tab located at the bottom of the panels to bring it to the front.

Content and Use

The panel is divided into two main regions:

  • Filtering controls to define which objects are displayed in the panel (display scope).
  • A tabular, spreadsheet-like region listing all objects falling under the defined display scope.

Defining Panel Display Scope

Controls at the top of the panel allow you to filter which objects are displayed in the panel and also control the current mode of the panel - allowing you to enable/disable the panel's direct editing functionality:

Click on the left-most control to select from the following options:

  • View - in this mode, you will be able to use the panel only for viewing object attributes. You will not be able to edit any of the attribute fields in the tabular region of the panel.
  • Edit - in this mode, you will be able to view and edit the attributes of design objects in the tabular region of the panel.

Click on the next control to select from the following options:

  • non-masked objects - this is the default option and causes the panel to display only design objects that are not masked-out in the workspace (i.e. those objects that fall under the scope and specific query expression of the currently applied filter). This option is most effective when filtering is applied to the workspace and the associated masking highlight option is enabled.
  • selected objects - this option causes the panel to display only design objects that are currently selected.
  • all objects - this option causes the panel to display all design objects.

Click on the next control to choose from the following options:

  • current component - only display target objects from the active library component in the design editor window.
  • whole library - display target objects from all components contained in the active PCB library document.

The right-most control allows you to control the type of objects that can be displayed. Click on the control to open a selection pop-up.

Use the pop-up to choose which object types you want to include in the currently displayed list - either all objects or specific objects. To choose one or more specific object types, enable the Display only option then enable the check box next to the required object(s) in the list beneath. The list will only contain those object types currently displayed in the main spreadsheet region of the panel. When enabling specific object types for display, the control will reflect the choice by listing the enabled types, separated by commas.

Working with Filtered Objects

The main region of the panel displays all design objects passing the defined display scope for the panel in tabular format.

Object data is initially unsorted. Data may be sorted by any attribute by clicking on the header for that attribute's column. Clicking once will sort in ascending order; click again to sort by descending order.

Displaying Workspace Selection

As you select objects in the design workspace, the corresponding entries for those objects will appear selected in the list as shown in the following image.

Displaying Filtering Results

When a filter has been applied based on a query expression entered into the PCBLIB Filter panel, only those objects under the scope of the filter will be shown, provided that:

  • The Mask option is enabled in the Filter area of the PCBLIB Filter panel, and
  • The Display option for the PCBLIB List panel is set to non-masked objects.

If the Select option also has been enabled in the Filter area of the PCBLIB Filter panel, all filtered objects will appear selected in the list.

Using the Panel to Select Objects in the Workspace

As you select entries for design objects in the list, those objects will become selected in the design workspace. The list supports single or multiple selection, the latter using standard Ctrl+Click, Shift+Click, and click-and-drag features.

Double-click on an entry to access the associated Properties panel for that object in which you can make changes as required.

Editing Object Attributes

You can edit attributes of an object by editing the relevant entry in the panel. Click on a cell to focus it and then either right-click then choose Edit or click again to edit the attribute value directly. Depending on the attribute, you will need to either type a value, toggle an option or select an option from a drop-down. The change will take effect once you press Enter or click outside of the field you are editing. This is one of the advantages of using the panel to edit object properties - the panel will remain open, allowing you to change attribute after attribute, as needed, without having to reopen the Properties panel each time.

Another advantage of using the panel for editing is that you can edit multiple objects from the one place without having to edit one object at a time. Selected objects can be of the same or differing type. Those attributes that are common to all objects in the selection will be displayed in the panel. Select the required cells across all required objects for the shared attribute you want to modify. Then either right-click then select the Edit command or press the F2 key (or the Spacebar). You will be able to edit the value for the chosen attribute with respect to the focused object in the selection. Clicking outside the attribute's cell or pressing Enter will effect the change, which will subsequently be applied to all remaining objects in the selection.

By using filtering, you can apply a query (an expression for the filter) to target a specific group of objects in one or more component footprints in the active library and then use the PCBLIB List panel to edit the attributes for these multiple objects.

Editing is possible only if the panel is configured in Edit mode. When the panel is configured in View mode, you only will be allowed to view object properties.

Editing Attributes with Smart Grid Paste Tools

There are two Smart Grid commands available as right-click options from the PCBLIB List panel. These commands allow you to import and create or update tabular data from any Windows-compliant tabular/spreadsheet data such as an Excel workbook or a table in a PDF document in the PCBLIB List panel.

The Smart Grid Paste command alters the value of existing objects from pasted tabular data, and Smart Grid Insert creates new objects from the tabular data. The PCBLIB List panel must be in the Edit mode in order for the copy and paste commands to be enabled.

Using Smart Grid Paste Command

There are two main ways to update attributes of design objects using the smart grid paste command: updating attributes one at a time with no header data and updating attributes as a group in one operation with header data. You need to determine whether the tabular data has the Header Row or No Header Row. These options are located at the top right of the Smart Grid Paste dialog. If the tabular data has the header row, you can map and update multiple attributes in one operation otherwise, you will have to do different attributes one by one.

For example, to change attributes as a group using the smart grid paste tool, copy the data using the Copy With Header command from the right-click menu from the panel then paste the tabular data including the header row into an Excel workbook. The updated tabular data from this workbook can then be pasted back into the same PCBLIB List panel using the Smart Grid Paste command from the pop-up menu. Make sure the selected entries in the PCBLIB List correspond to the pasted tabular data; however, you can always select the entries first before doing a paste.

Make sure the Header Row option on the top right of the dialog is enabled. The Smart Grid Paste dialog is then updated with the top half of the dialog representing the copied table data while the bottom half shows the proposed PCBLIB List content. Click the Automatically Determine Paste button to map the attributes from the Clipboard Table View region to the PCBLIB List View region.

All proposed data object mappings set by the Automatically Determine Paste button can be previewed before committing the new attributes to your PCB library document. Attributes that are being targeted by the Paste action are marked with a blue flag, and those whose values are changing are marked in a bold font.

You can also use Paste Column to Attribute and Undo Paste to Attribute buttons to selectively update attributes. To restore all the attributes to their original values, click on the Reset All button in the Smart Grid Paste dialog.

Likewise, if you copy the tabular data without the row header and update the tabular data in an external spreadsheet and do a smart paste back into the PCBLIB List panel, you can only do a singular update of each attribute. That is, you use the Paste Column to Attribute and Undo Paste to Attribute buttons to update each targeted attribute and to undo this same attribute each time. The proposed changes are not committed to the PCB library document until the OK button is pressed.

Using the Smart Grid Insert Command

With the Smart Grid Insert command, you can create new objects using the Smart Grid Insert dialog from the PCBLIB List panel. You must specify the object type in your tabular data before you can successfully insert new objects in the PCBLIB List panel and its associated schematic document.

The easiest way is to copy the data from the PCBLIB List using the Copy with Header command, make additions/changes in a spreadsheet then insert the updated data back into the PCBLIB List panel. Once the new data objects are mapped from the Clipboard Table View region to the proposed PCB List View region in the Smart Grid Insert dialog, they are flagged with green indicators. Click OK to close the dialog and to create new objects in the PCB library document.

Editing Attributes with Numeric Values

For a numerical-based attribute of a selected object, the simplest modification to that attribute's value is made by typing a new value to replace the existing one. The plus and minus operators can be used to specify the value's sign. A value entered without a specified sign is assumed to be positive. Therefore, entering 20 is the same as entering +20. You can enter specific units of measurement for a value entered. The software will convert the value into the current units defined for the document. If no units are specified, the default units set for the document will be used.

Modification Using an Expression

More advanced modification can be achieved by using an arithmetic expression. Select the entry for the attribute you want to modify then type the expression that will be used to modify its value. You can enter any arithmetic expression using any built-in arithmetic operators and functions (found in Pascal).

If you want to use the current value for the attribute as part of the expression, you will need to make reference to this original value either by using the full name of the attribute or by using the exclamation character (the supported substitute for the name of the attribute currently being modified). If you want, you can use any other attribute field name in an expression. When using attribute names, if any names contain spaces, the spaces must be replaced by the underscore character.

To illustrate an example of using a simple expression, consider a pad in a component footprint, the Hole Size attribute of which is currently 32mil. If you wanted to extend this size to 40mil, you could enter the expression:
Hole_Size + 8
or, in shortened form:
! + 8
Note that the spaces are optional. When you press Enter the value will be updated to 40mil.

If instead you want to reduce the size to 24mil, you could use the subtraction operator, as illustrated by the following expressions:
Hole_Size - 8
! - 8

To illustrate use of a function, the previous expression could be rewritten as:
! - sqrt(64)
the result would be the same - a hole size of 24mil.

By using the attribute's name (or substitution character (!)) the previous expressions add to or subtract from the current value for the attribute. Without such entries in the expression, you would be setting the attribute's value to the evaluated result of the expression. For example, if the attribute name or substitution character had been left out of the previous expressions, the resulting value for the component height would have been 8mil and -8mil.

Again, you can enter specific units of measurement for a value entered into an expression. The software will convert the value into the current units defined for the document. If no units are specified, the default units set for the document will be used.

By selecting multiple objects in the panel, you can change numerical attributes simultaneously using an expression. For example, you may want to adjust the hole sizes of a series of pads or shift component outline tracks vertically or horizontally by a specific distance.

Batch Replacement of String-based Attributes

There are times when you may want to modify a string-based attribute that is common to multiple selected objects. For example, you may want to rename the designators of selected pads from A1, A2, A3, etc., to B1, B2, B3, etc. To perform this type of batch replacement, the use of string substitution syntax is supported in the panel.

A string substitution entry is enclosed in braces and has the form:
{oldstring=newstring}

An entry of this form causes all occurrences of oldstring found in the attribute's value to be replaced with newstring. In the case of the pad designators, you would select the associated Name attribute cell for each pad, right-click then select Edit (or press F2), then enter {A=B} in the active value field.

If you want to replace multiple, differing string portions in the same target string, type multiple substitution entries each enclosed in its own set of curly braces. For example, consider the following free text strings placed as part of the component footprint for a four port communications device, where each string indicates the particular port, as well as its ability to communicate with an 8-bit peripheral device:
CommPortA_8
CommPortB_8
CommPortC_8
CommPortD_8

Now consider having modified the device to allow for communications with 32-bit external peripheral devices. Also, the customer has requested that the Comm prefix be replaced by IO. The free strings in the PCB component footprint now need to be updated, which is where batch string substitution comes into play.

If the intended format of the new strings is to be IOPortx_32, where x represents the port (A, B, C, or D), you could select the String attribute for the four text objects in the panel, enter Edit mode then enter the following into the active value field:
{Comm=IO}{8=32}

The software takes this entry and effectively performs a batch substitution - substituting for the first expression, then the second.

Smart Editing of String-based Attributes

The PCBLIB List panel offers further support for string modification through its Smart Edit feature. Select the cell entries pertaining to the attribute that you want to modify for all required objects, right-click then choose Smart Edit from the menu that appears. The Smart Edit dialog will open.

The dialog offers two methods for performing string modification accessed from the Batch Replace and Formula tabs.

Batch Replace

This tab provides straightforward substitution, along the lines of the string substitution discussed previously (but without having to enter the curly braces). Click inside the From field and enter the portion of the current string that you want to replace. Click inside the To field then enter the string to be used as the replacement. The familiar string substitution syntax is displayed at the bottom of the tab.

For example, consider the designators of three pads that currently have the prefix A, but you need to change them to prefix B instead. In this case, select the Name attribute for each of the pads in the panel and access the Smart Edit dialog. Then on the Batch Replace tab, enter A in the From field and B in the To field (the replacement string is therefore {A=B}). After clicking OK, the designators will be modified accordingly.

As with basic string substitution, the Batch Replace tab provides for replacement of multiple, differing string portions in the same target string. Enter the various substitutions as distinct From-To entries. Consider the previous Comms Port example (see Batch Replacement of String-based Attributes), where strings of the form CommPortx_8 need to be changed to IOPortx_32. In this case, you would enter two distinct substitution entries on the Batch Replace tab.

Formula Tab

This tab provides for more advanced modification, allowing you to apply a specific expression to the selected string objects. The expression can include any built-in arithmetic operators and functions that apply to strings (found in Pascal). If you want to use the current value for the attribute as part of the expression, you will need to make reference to this original value, either by using the full name of the attribute or by using the exclamation character (the supported substitute for the name of the attribute currently being modified). When using attribute names, if any names contain spaces, these must be replaced by the underscore character.

Consider, for example, two free pads placed in a component footprint to be used as mounting holes with designators 1 and 2. You might want to extend the designators of these pads by including some indication of their role and to also distinguish them from signal pins with the same designators. First, select the cell entries for the Name attributes of these pads. Then, using the addition operator, you could write an expression to add to the existing string value of the Name attribute. This would take the existing (original) string value and concatenate it with a specified new string as shown below:
'MNT_' + Name
or, in shortened form:
'MNT_' + !
Note that the spaces are optional. After clicking OK the designators of the pads will be updated to MNT_1 and MNT_2.

To illustrate the use of string-based functions, consider the Copy function, which can be used to take a portion of an original string and place it within an expression to create a new string. Take again the Comms Port example, where strings of the form CommPortx_8 need to be changed to IOPortx_32. In this case, you could select the cell entries for each object's String attribute, access the Smart Edit dialog then write the following expression on the Formula tab:
'IO' + Copy(String,5,6) + '32'
or, in shortened form:
'IO' + Copy(!,5,6) + '32'

Right-click Menu

The right-click menu for the main list area of the panel provides the following commands:

  • Switch to View/Edit Mode - select to toggle the panel's current mode.
  • Edit - allows you to edit single or multiple selected objects with respect to a particular attribute in the list. When editing a single object, the command becomes available when an attribute cell entry for a design object is editable. After launching the command, you will be able to edit the value in the selected cell directly. Click outside the cell or press Enter to effect the change. When simultaneously editing multiple objects, the command will become available only if the chosen attribute is editable for all objects in the selection. After launching the command, you will be able to edit the value in the focused cell directly. Click outside the cell or press Enter to effect the change across all cells in the selection.
  • Smart Edit - provides access to the Smart Edit dialog in which you can specify the criteria used to perform batch replacement of string-based attributes.
  • Copy - copy the selected cells in the list to the Windows clipboard for use in other applications.
  • Paste - paste the current content of the Windows clipboard into the list. Combined with the Copy command, this enables you to copy cell content to another spreadsheet application, make modifications then paste the modified data back into the PCBLIB List panel.
  • Zoom Selected - zooms and centers (where possible) the selected objects in the design editor window.
  • Apply Filter - applies filtering based on the selected object(s) in the list. The object(s) will be displayed in the design editor window in accordance with the Mask / Dim / Normal and Zoom options defined in the PCBLIB Filter panel. The object(s) will be selected regardless of the status of the Select option in the PCBLIB Filter panel. Only those objects in the selection will be displayed in the list.
  • Clear Filter - clears the currently applied filter and populates the list with all objects in the design.
  • Remove Non-Selected - remove all objects from the list that are not currently selected.
  • Report - generate a report containing all objects displayed in the list. After launching the command, the Report Preview dialog opens in which you can view, print and export the report in various file formats. The report will contain only data that is visible in the panel.
  • Report Selected - generate a report containing only those objects that are currently selected in the list. After launching the command, the Report Preview dialog opens in which you can view, print and export the report in various file formats. The report will contain only data that is visible in the panel.
  • Show Component Children - add object entries to the list with respect to the primitives that constitute components.
  • Show Net Children - add object entries to the list with respect to all net objects that constitute nets in the design.
  • Show Polygon Children - add object entries to the list with respect to the primitives that constitute polygons.
  • Advanced (sub-menu) - this sub-menu offers commands that allow you to switch to owner components, owner nets or owner polygons from selected child primitives or members belonging to those group objects. In each case, filtering will be applied to each owner object affected and the list will display only those owner objects and their primitives/members if the corresponding option to show children for an object is enabled.
  • Select All - select all objects in the list. The corresponding design objects will become selected in the main workspace.
  • Select Column(s) - select all cells in the column associated with the currently selected cell. All corresponding objects will become selected in the design workspace. This command is particular useful when editing a particular attribute of multiple objects.
  • Select Row(s) - select all cells in the row associated with the currently selected cell. All corresponding objects will become selected in the design workspace. This command is particular useful when editing a particular attribute of multiple objects.
  • Choose Columns - opens the Columns Setup dialog in which you can determine the available attribute columns that are displayed in the panel and the order in which the columns appear.

List Shortcuts

The following table summarizes key shortcuts that are available when using the main list region of the panel.

Arrow Keys

Shift focus to the next cell in direction of arrow key

Left-Click+Drag

Multi-select in the direction of mouse movement

Ctrl+Click

Multi-select (non-sequential)

Shift+Click

Multi-select (sequential)

F2 or Spacebar

Edit selected cell

Enter

Finish editing current cell and enter edit mode for the cell below

Ctrl+C (or Ctrl+Insert)

Copy

Ctrl+V (or Shift+Insert)

Paste

Page Up

Jump selection to top of visible list area

Page Down

Jump selection to bottom of visible list area

Mouse-wheel

Pan up or down

Tips

  • The Show Children-based commands are particularly useful when a small selection of parent objects have been previously selected and filtered.
  • When any filtering currently applied to the workspace is cleared, the option to display non-masked objects in the panel will produce the same result as choosing the option to display all objects.
Found an issue with this document? Highlight the area, then use Ctrl+Enter to report it.

お問合せ

お近くの営業所にお問合せください。

We're sorry to hear the article wasn't helpful to you.
Could you take a moment to tell us why?
200 characters remaining
You are reporting an issue with the following selected text
and/or image within the active document: