Jump to: navigation, search

Bulk Editor


Revision as of 14:17, 30 April 2013 by JKN (Talk | contribs)

The Bulk Editor is designed to display and edit the properties of a multiple UBIK® objects. Technically, it reads the MetaProperty definition of each Instance of the context object (directly from the context object if it is of type MetaClass, otherwise it gets the MetaClass of the context object and reads the definition from its instances.

Bulk Editor
UI BulkEditor.png
Bulk Editor control
Name Bulk Editor
Internal Name CtrlBulkEditor
Purpose Display and edit multiple objects
Context object MetaClass
Version 2+

Basics

Appearance

Toolbar

Rows and columns

The control reads the the current context object and displays a row for each instance of it and a column for each found property, its appearance depending on the respective data type of the MetaProperty. The following data types and thus different columns and editing controls are currently supported:

Data type Example Comment
Bool UI BulkEditor Bool.png True or false to be read/set via a Checkbox
ByteStream - Internal type, will not result in a column
DateTime UI BulkEditor DateTime.png Date and time in a combined value; format according to regional settings; a double click opens a dialog to pick a date from a calendar
Double - Double-precision floating-point format, optionally with unit of measurement
FileReference UI BulkEditor File.png A path to a physical file in DOS/Windows- or UNC notation; a double click opens a dialog to pick a file from the file system
GeoData UI BulkEditor GEO.png Absolute geographic position combined of Longitude, Latitude and Altitude in WGS84 format; a double click opens a dialog to enter the values separately
Guid UI BulkEditor GUID.png Pointer to another object, represented with the GUID of the target object
Reference UI BulkEditor Reference.png Pointer to another object via a reference; a double click opens a picker to select the target object
Int - An integer number
String - A string value
Undefined - Internal type, will not result in a column
XML - Markup text in XML format; currently displayed as raw string by this control

Selective lists

If a certain property has a selective list defined, the respective column will display a Combobox with all items of the list instead of the value field. The value can then only be selected from the list, but not be edited manually anymore.

Index values

If a certain property has index values defined, the respective column will be colored LightSalmon and become expandable. Expanding/collapsing can be done by either right clicking the column header or using the expand/collapse button in the Toolbar. When expanding, the editing column will multiply itself by the number of index values and present an own LightYellow column for each index value.

IC Hint square.pngA multilanguage MetaProperty is actually a string property with index values defined for each system language!

Captions

  • each column shows the string representation of the respective MetaProperty as its header text
  • the first column of each row is always titled _RowObject and shows the string representation of the corresponding instance

Tooltips

There are two kinds of Tooltips used in this control:

  • when hovering over the header of column, a Tooltip will show the type of the column
  • when hovering over a cell which's text is deprecated, a Tooltip will show the full text

Editing

When editing a value, it will only be written back to the respective property when you leave the cell. At that very point in time, the Bulk Editor also runs an integrity check against the rules and tests if the value you've entered can be stored on the property. If this fails, the row and cell will show a red exclamation mark with a Tooltip telling which rule was violated. The exclamation mark on the cell disappears once you've entered a valid value for this property, the exclamation mark on the row only disappears if all properties of the respective UBIK® object have a valid value.

IC Hint square.png While editing a value, you can use ESC to undo your editing!

Drag & Drop

The Object Editor control is a source and a target for Drag&Drop operations:

  • Any object can be dropped on a cell if the dragged object matches the data type of the respective property
  • A single instance object can be dragged from the Bulk Edito by dragging the header of the row
  • Objects stored in a cell can be dragged using the right mouse button


Toolbar

Bulk Editor Toolbar

The Bulk Editor features a Toolbar with the following items from left to right:

Item Purpose
View Style Indicates or changes the View Style of the control; changing it will result in reloading of the control
Navigate to context object Attempts to navigate to the current context object
Save Saves all instances currently shown in the control
Filter namespace Filters all current instances by the Namespace of the set context object
Select columns Opens a sub menu with all displayed columns and allows to show/hide them explicitly
Expand/Collapse index columns Allows to show or hide the index columns if the currently selected column has index values
Print No functionality yet
Cut Cuts the value of the current cell into the clipboard
Copy Copies the value of the current cell into the clipboard
Paste Pastes the value from the clipboard into the current cell
Move to first object Selects the first row
Move to previous object Selects the previous row
Current object Shows or sets the current row; enter a value and press Enter to select a specific row
Move to next object Selects the next row
Move to last object Selects the last row
Delete Allows to delete all selected rows

Context menu

Right clicking on a cell that stores a UBIK® object will bring up the standard Navigation context menu. In addition, cells of type GUID or Reference will show a Remove menu item, where clicking it will set the value of the cell to null.

View Styles

The Object Editor has only one view style at the moment.

Other functionality