Skip to main content

TcxEditRepository Class

A collection of repository items that define editors and their settings.

Declaration

TcxEditRepository = class(
    TcxScalableComponent
)

Remarks

The TcxEditRepository class implements a non-visual component designed to store and manage edit repository items that maintain, share, and manage editor settings.

Edit Repository Items and Standalone Editors

Edit repository items are useful when you need to share the same settings between multiple editors of the same type. To accomplish this goal, you can assign the same edit repository item to RepositoryItem properties of all target editors.

Edit Repository Items and Container Controls

A container control item (such as a toolbar edit item or a column (or any other data item) in a Data Grid, Vertical Grid, or Tree List control) can embed an in-place editor shipped with the ExpressEditors Library. An in-place editor exists (and, therefore, has its own WinAPI handle) only when the target container control item is being edited. Otherwise, the container control item displays a static editor image for resource usage optimization.

VCL Tree List: An In-Place Date Editor

Available Edit Repository Item Types

Every repository item type defines the corresponding in-place editor type and stores editor settings. You can access and modify these settings using the TcxEditRepositoryItem.Properties property.

The following table lists all available edit repository item types (terminal TcxEditRepositoryItem class descendants) and corresponding in-place editor classes:

B — Bar Code/BLOB/Button Editors

Repository Item Class In-Place Editor Description
TcxEditRepositoryBarCodeItem TdxBarCode A barcode control without user input functionality.
TcxEditRepositoryBlobItem TcxBlobEdit A Binary Large Object (BLOB) editor.
TcxEditRepositoryButtonItem TcxButtonEdit A single-line text editor with embedded buttons.

C — Calculator | Check Box | Combo Box | …

Repository Item Class In-Place Editor Description
TcxEditRepositoryCalcItem TcxCalcEdit A single-line editor with a drop-down calculator window.
TcxEditRepositoryCheckBoxItem TcxCheckBox A check box editor with support for three states.
TcxEditRepositoryCheckComboBox TcxCheckComboBox A combo box editor that can display items with check boxes.
TcxEditRepositoryCheckGroupItem TcxCheckGroup An editor designed to display a set of check boxes.
TcxEditRepositoryColorComboBox TcxColorComboBox A color combo box editor.
TcxEditRepositoryColorEdit TdxColorEdit An editor designed to select a color in a color gallery embedded into a drop-down window.
TcxEditRepositoryComboBoxItem TcxComboBox A general-purpose combo box editor.
TcxEditRepositoryCurrencyItem TcxCurrencyEdit A numeric editor for currency values.

D — Date & Time Editors

Repository Item Class In-Place Editor Description
TcxEditRepositoryDateItem TcxDateEdit A date editor with a drop-down calendar.
TcxEditRepositoryDateTimeWheelPickerItem TdxDateTimeWheelPicker A date/time wheel picker editor.

F — Font Name Combo Box & Formatted Label

Repository Item Class In-Place Editor Description
TcxEditRepositoryFontNameComboBox TcxFontNameComboBox A combo box that allows users to switch between font typefaces.
TcxEditRepositoryFormattedLabel TdxFormattedLabel A formatted label without user input functionality.
Repository Item Class In-Place Editor Description
TcxEditRepositoryHyperLinkItem TcxHyperLinkEdit A hyperlink editor that can execute custom commands.

I — Image Combo Box & Image Editors

Repository Item Class In-Place Editor Description
TcxEditRepositoryImageComboBoxItem TcxImageComboBox A combo box designed to display both text and images in items.
TcxEditRepositoryImageItem TcxImage An editor designed to display and edit images.

L — Label

Repository Item Class In-Place Editor Description
TcxEditRepositoryLabel TcxLabel An unformatted label without user input functionality.

L — Lookup Editors

Warning

Do not use repository items to share settings between multiple lookup editors because these settings include data binding options.

A repository item shared between multiple lookup editors binds them to the same dataset. This scenario may lead to data update and synchronization issues that are difficult to detect and identify.

Repository Item Class In-Place Editor Description
TcxEditRepositoryExtLookupComboBoxItem TcxExtLookupComboBox A lookup editor that displays a Data Grid View in a drop-down window.
TcxEditRepositoryLookupComboBoxItem TcxLookupComboBox A lookup combo box populated with values from a data source.
TcxEditRepositoryLookupSparklineItem TdxLookupSparklineEdit A lookup sparkline editor.

M — Mask/Memo/MRU Editors

Repository Item Class In-Place Editor Description
TcxEditRepositoryMaskItem TcxMaskEdit A single-line text editor with support for input masks.
TcxEditRepositoryMemoItem TcxMemo A multi-line editor for plain text.
TcxEditRepositoryMRUItem TcxMRUEdit A single-line text editor that displays a list of most recently used (MRU) items in a drop-down window.

N — Numeric Wheel Picker Editor

Repository Item Class In-Place Editor Description
TcxEditRepositoryNumericWheelPickerItem TdxNumericWheelPicker A numeric value wheel picker editor.

P — Pop-Up Editor & Progress Bar

Repository Item Class In-Place Editor Description
TcxEditRepositoryPopupItem TcxPopupEdit A text editor that can embed a control in a pop-up window.
TcxEditRepositoryProgressBar TcxProgressBar A progress bar without user input functionality.

R — Radio Group | Range Track Bar | RTF Editor | …

Repository Item Class In-Place Editor Description
TcxEditRepositoryRadioGroupItem TcxRadioGroup A container for radio buttons.
TcxEditRepositoryRangeTrackBar TdxRangeTrackBar A track bar editor with two sliders designed to select a range of values.
TcxEditRepositoryRatingControl TdxRatingControl A rating editor.
TcxEditRepositoryRichItem TcxRichEdit A multi-line rich text editor.

S — Sparkline & Spin Editors

Repository Item Class In-Place Editor Description
TcxEditRepositorySparklineItem TdxSparklineEdit An editor designed to visualize data as lightweight charts without axes and labels.
TcxEditRepositorySpinItem TcxSpinEdit A general-purpose numeric spin editor.

T — Text Editor | Time Editor | Toggle Switch | …

Repository Item Class In-Place Editor Description
TcxEditRepositoryTextItem TcxTextEdit A simple single-line text editor.
TcxEditRepositoryTimeItem TcxTimeEdit A spin editor for time values.
TcxEditRepositoryToggleSwitchItem TdxToggleSwitch A toggle switch editor.
TcxEditRepositoryTokenItem TdxTokenEdit A token editor.
TcxEditRepositoryTrackBar TcxTrackBar A track bar editor with two sliders for value range selection.

Main API Members

The list below outlines key members of the TcxEditRepository class. These members allow you to manage edit repository items.

Clear
Destroys all stored repository items.
Count
Returns the number of stored repository items accessible through the Items property.
CreateItem | CreateItemEx
Create new repository items.
ItemByName | Items
Provide access to stored repository items by their names and indexes.
RemoveItems
Destroys all stored repository items of the specified type.

Create a Repository Item at Design Time

To create a repository item at design time, double-click an edit repository component to display its collection editor.

VCL Editors Library: An Edit Repository Collection Editor

The collection editor dialog allows you to manage repository items. Click the Add… button to display a repository item creation dialog.

VCL Editors Library: An Edit Repository Item Creation Dialog

Select any item type and click the Ok button to create a repository item.

Code Example: Shared In-Place Editor Settings

The following code example creates two unbound Table View columns in a Data Grid control and uses a memo repository item to assign an in-place memo editor to them:

uses cxEdit, cxEditRepositoryItems;
// ...
var
  AColumn1, AColumn2: TcxGridColumn;
  ARepositoryItem: TcxEditRepositoryMemoItem;
begin
  AColumn1 := cxGrid1TableView1.CreateColumn; // Creates a new unbound column
  AColumn2 := cxGrid1TableView1.CreateColumn; // Creates another unbound column
  // Creates a repository item that defines a memo editor and stores its settings
  ARepositoryItem := cxEditRepository1.CreateItem(TcxEditRepositoryMemoItem) as TcxEditRepositoryMemoItem;
  ARepositoryItem.Properties.ScrollBars := ssVertical; // Enables a vertical scroll bar
  ARepositoryItem.Properties.VisibleLineCount := 8; // Limits the number of simultaneously visible lines
  // Assigns the created repository item to both new columns
  AColumn1.RepositoryItem := ARepositoryItem;
  AColumn2.RepositoryItem := ARepositoryItem;
end;
See Also