Property Matrix

property_matrix.png

The Property Matrix allows for easy bulk editing and value comparison for large numbers of Objects or Actors. It displays a configurable set of properties for a collection of objects as columns in a table view that can be sorted on any column. The Property Matrix also provides a standard property editor that displays all properties for the current selection set in the table view.

Features

Feature Benefits
Bulk Object Editing
  • Easier workflow for setting a series of varying values to a bunch of objects, without sacrificing the ability to set the property on a bunch of objects to the same value.

  • Works with THOUSANDS of objects at the same time.

  • Can handle editing a wide variety of object types at the same time.

Bulk Fine-Grain Object Comparison
  • Sort the values on thousands of objects at a time.

  • Quickly find assets and Actors with incorrect settings.

Deep Property and Array Support
  • Do all of the above with the properties of Arrays and Struct types.

  • Can expose columns for ANY PROPERTY.

  • Even handles ARRAY INDICES.

Accessing the Property Matrix

There are currently two ways you can access the Property Matrix:

  • The Property Matrix button available in the Details panel adjacent to the Search box will launch a Property Matrix bound with your current selection.

    open_matrix_details.png

  • In the Content Browser , make a selection of assets, right-click, choose Asset Actions, then choose Bulk Edit via Property Matrix. from the context menu.

    open_matrix_browser.png

Using the Property Matrix

The Property Matrix is effectively a table and handles much like other grid-based editors. All cells have two modes Display and Edit. Depending on the current mode the cells feature set changes.

Adding and Removing Columns

The user can add and remove columns by pinning and unpinning properties in the property tree to the right of the table.

columns_pin_message.png columns_pin.png
No properties pinned Pin properties to add columns

Columns can also be removed through the drop down menus in column headers or by middle-clicking the column header itself.

columns_remove.png

The Property Matrix will attempt to auto-populate the table with useful columns, based on the types of objects bound to the table.

Editing Properties

Most cells just display their bound value as text and allow the user to edit the text representation, but cells are fully customizable by the programmer and can vary greatly. For example, some cells have completely custom cell implementation such as Boolean and Color values.

property_edit_bool.png property_edit_color.png
Bool Color

One great feature of the Property Matrix is that it lets you compare property values deep in an object.

subprop_pin.png subprop_display.png
Pinned deeply nested property Deeply nested property neatly displayed

The property table can even handle array indices!!

subprop_array_index.png

The Property Tree on the right of the table is bound to the selected rows in the table. This allows the Property Matrix to handle editing a wide variety of types at the same time!

Sorting

The user can also sort any column in ascending or descending order by simply clicking on the column header. An arrow will appear on the header to let you know which way the column is sorted.

property_sort.png

Controls

Control Description

Keyboard Controls

Escape Exits edit mode in the current cell. Some cells have complex editing widgets which have their own behavior for escape which will take priority, so the user may need to press escape multiple times.
Ctrl + C Copies the current cell's string representation to the clipboard.
Ctrl + V Set the current cell's value as the text in the clipboard.
Ctrl + A Selects all cells in the table.
Home or Ctrl + Left Arrow Moves the current cell to the first cell in the current row.
End or Ctrl + Right Arrow Moves the current cell to the last cell in the row.
Ctrl + Home Moves the current cell to the first cell in the table.
Ctrl + End Moves the current cell to the last cell in the table.
Left Arrow or Shift + Tab Moves the current cell to the previous cell in the current row.
Right Arrow or Tab Moves the current cell to the next cell in the current row.
Up Arrow Moves the current cell to the previous cell in the column.
Down Arrow Moves the current cell to the next cell in the column.
Ctrl + Up Arrow Moves the current cell to the first cell in the column.
Ctrl + Down Arrow Moves the current cell to the last cell in the column.
Shift + Up Arrow Moves the current cell to the previous cell in the current column and adds its row to the existing selection.
Shift + Down Arrow Moves the current cell to the next cell in the current column and adds its row to the existing selection.
Ctrl + Shift + Up Arrow Moves the current cell to the first cell in the current column and selects all rows between them.
Ctrl + Shift + Down Arrow Moves the current cell to the last cell in the current column and selects all rows between them.
F2 The current cell enters edit mode.

Mouse Controls

LMB Click on Cell Clicked cell becomes the current cell and the cell's row becomes the new selection.
Ctrl + LMB Click on Cell If the clicked cell did not belong to an already selected row, the cell becomes the current cell and the cell's row is added to the current selection, otherwise the cell's row is removed from the selection.
Shift + LMB Click on Cell Clicked cell becomes the current cell and all the rows between the original current cell's row and the click cell's row are added to the existing selection.
LMB Click on Current Cell Current cell enters edit mode.
LMB Double-Click Cell Cell becomes the current cell and enters edit mode.
MMB Click on Column Header Removes the column from the table.
MMB Click on Property in Details Panel Toggles pinning of the clicked property to the table.