sgcEditors Feature Matrix
Everything sgcEditors does, grouped by task, with a link to the help topic of each feature. Each control exists for VCL, FireMonkey, WinForms, WPF and Avalonia with the same properties and events.
Everything sgcEditors does, grouped by task, with a link to the help topic of each feature. Each control exists for VCL, FireMonkey, WinForms, WPF and Avalonia with the same properties and events.
17 features
9 features
5 features
2 features
6 NuGet packages
Online help and PDF manuals
Registered marks the features that are in the Registered and Trial editions and not in the free Community edition. ~ marks a feature that Community has in part, with the difference below it.
Every row links to its help topic. The Community column shows what the free .NET Community edition includes; everything is in Registered and Trial.
| Feature | Details | Community | Help |
|---|---|---|---|
| Month calendar | Single date or range, MinDate and MaxDate, disabled dates and weekdays, ISO 8601 week numbers, month, year and decade views. | Help | |
| Date picker | Date entry with a drop-down calendar and a lenient parser that understands month names. | Help | |
| Time picker | Time entry in a native edit. | Help | |
| Date and time picker | Date and time in one control. | Help | |
| Range slider | Select a value or a range on a slider. The second thumb is in the Registered edition. | ~One thumb is drawn and edited; EndValue is kept but not shown. | Help |
| Colour picker | Pick a colour. The HSV square and the alpha bar are in the Registered edition. | ~Swatches and hex only; the HSV square and the alpha bar are not drawn and the alpha is always $FF. | Help |
| Token edit | Chips for tags and recipients. The auto-complete list is in the Registered edition. | ~The chips, validation and limits work; the auto complete list never opens. | Help |
| Rating | Star rating input. | Help | |
| Spin edit | Number entry with mouse wheel and auto repeat. | Help | |
| Button edit | A native edit with browse, drop-down, search, clear, plus, minus, text or owner drawn buttons on either side, each with a shortcut. Screen readers list and press every button. | Help | |
| Search edit | OnSearch after a pause in the typing or at once on Enter, search and clear buttons, and a drop-down history of earlier searches. | Help | |
| Masked edit | Input masks in the Delphi EditMask syntax or the .NET MaskedTextBox syntax, chosen by MaskSyntax, so one mask works the same in Delphi and .NET. An incomplete value is reported to the validator. | Help | |
| Currency edit | An exact Currency value (decimal in .NET) with the currency format of the locale, symbol or ISO code, limits and grouping while typing. | Help | |
| Lookup edit | A multi-column drop-down with an optional header row, filtering as you type, a key column and a display column. Rows from Items, OnGetItems or, in .NET, ItemsSource. | Help | |
| Memo | A themed multi line editor with a placeholder, a character counter with an optional limit, and a height that follows the lines. | Help | |
| Toggle switch | TsgcVCLToggleSwitch and TsgcFMXToggleSwitch (TsgcWinFormsToggleSwitch, TsgcWpfToggleSwitch and TsgcAvaloniaToggleSwitch in .NET) are on and off switches for settings: a rounded track with a round thumb that slides to the new state in about 150 ms, a caption on the right or on the left (CaptionPosition), the On and Off text inside the track (ShowText), ReadOnly, and track and thumb colours that default to the theme. OnChanging cancels a change by the user, OnChange fires after every change and Toggle changes the state as the user would. Click, drag of the thumb, Space, Left and Right, right to left and a check box with the Toggle pattern for screen readers. Checked binds two way in WPF and Avalonia. | Help | |
| IP address edit | TsgcVCLIPAddressEdit and TsgcFMXIPAddressEdit (TsgcWinFormsIPAddressEdit, TsgcWpfIPAddressEdit and TsgcAvaloniaIPAddressEdit in .NET) take an IPv4 or an IPv6 address (Mode). IPv4 shows four octet fields that advance as the user types, clamp a value above 255 and fill the empty fields with 0 when the focus leaves; IPv6 is one text field validated and written in the RFC 5952 canonical form when the focus leaves. Address, Octets, IsValid, Required with the error frame of the theme, ReadOnly, Clear and OnChange. Paste of a full address, right to left and an edit with the Value pattern for screen readers. Address binds two way in WPF and Avalonia. | Help | |
| Time span edit | TsgcVCLTimeSpanEdit and TsgcFMXTimeSpanEdit (TsgcWinFormsTimeSpanEdit, TsgcWpfTimeSpanEdit and TsgcAvaloniaTimeSpanEdit in .NET) edit a duration in segments from days to milliseconds (Segments), as a clock or with units (DisplayFormat). Value in milliseconds (a TimeSpan in .NET), MinValue, MaxValue, AllowNegative, Increment, ShowButtons for the spin buttons and ReadOnly. Typing, Up and Down, PageUp and PageDown, the wheel and the spin buttons step the focused segment with carry into the next one. A spinner with the RangeValue pattern for screen readers. Value binds two way in WPF and Avalonia. | Help | |
| Font picker | TsgcVCLFontPicker and TsgcFMXFontPicker (TsgcWinFormsFontPicker, TsgcWpfFontPicker and TsgcAvaloniaFontPicker in .NET) pick a font family from a drop-down that draws each name in its own face (ShowPreview, PreviewText), filtered as the user types. FontName, Fonts filled from the platform until the application fills it, RefreshFonts, the recently picked families first (RecentCount, RecentFonts) and a fixed pitch filter (FontFilter). The Delphi preview faces are drawn on Windows. FontName binds two way in WPF and Avalonia. | Help | |
| Checked list box | TsgcVCLCheckListBox and TsgcFMXCheckListBox (TsgcWinFormsCheckListBox, TsgcWpfCheckListBox and TsgcAvaloniaCheckListBox in .NET) list Items with a check box per row: Checked, State with a grayed state (AllowGrayed) and ItemEnabled per item. A tri-state Select all row (ShowCheckAll), a filter box that never changes a state (ShowFilter), CheckAll, UncheckAll, CheckedCount, and OnClickCheck before OnChange. Only the rows in view are painted, so 10000 items stay fast. Space, Ctrl+A, type a letter to jump, and list items with the Toggle pattern for screen readers. | Help | |
| Dual list box | TsgcVCLDualListBox and TsgcFMXDualListBox (TsgcWinFormsDualListBox, TsgcWpfDualListBox and TsgcAvaloniaDualListBox in .NET) move items between AvailableItems and SelectedItems with the buttons between the lists, a double click or drag and drop, and reorder SelectedItems with Up and Down (ShowReorderButtons). SortAvailable, ShowFilter, ShowCaptions, ReadOnly, the MoveToSelected, MoveAllToSelected, MoveToAvailable, MoveAllToAvailable, MoveUp and MoveDown methods, OnMoving to keep an item and one OnChange per operation. Multi select, keyboard moves and right to left. SelectedItems binds two way in WPF and Avalonia. | Help | |
| NumPad for touch panels | TsgcVCLNumPad is an on screen numeric keypad docked on the form, and TsgcVCLNumPadPopup opens the same pad in a drop-down under its target (TsgcFMXNumPad and TsgcFMXNumPadPopup on FireMonkey, and a NumPad in .NET). It types into the spin edit, the currency edit, the knob and slider gauges of sgcGauges and a standard edit, set with Associate or taken from the focused control. The pad reads the range and the decimals of the target and writes the value as a user change, with keys large enough for a finger or a glove. | Help | |
| On-screen keyboard | TsgcVCLKeyboard is a full on-screen keyboard docked on the form, and TsgcVCLKeyboardPopup opens it in a drop-down under the edit that gets the focus, with AutoPopup, AutoPopupAll, PopupPosition and CloseOnEnter (TsgcFMXKeyboard and TsgcFMXKeyboardPopup on FireMonkey, TsgcWinFormsKeyboard, TsgcWpfKeyboard and TsgcAvaloniaKeyboard with their popups in .NET). It writes to the focused control or to Associate and never takes the focus. Letters, symbols and numeric pages, Shift, Caps Lock, AltGr and dead keys, ten built-in layouts (en-US, en-GB, es-ES, fr-FR, de-DE, it-IT, pt-BR, nl-NL, pl-PL, tr-TR), custom layouts with sgcKeyboardRegisterLayout, a layout key that cycles through Layouts, themes, right to left and accessibility. OnKeyText changes or cancels the typed text and OnEnterKey runs after Enter. | Help | |
| Layout control | TsgcVCLLayoutControl and TsgcFMXLayoutControl (in .NET TsgcWinFormsLayoutControl, TsgcWpfLayoutControl and TsgcAvaloniaLayoutControl) arrange any control, sgcEditors and standard controls alike, in groups, tabbed groups and columns, with the captions aligned to one width, splitters the user can drag, items the user can hide and right to left layouts. Screen readers see the groups and the tabs. In every edition; Delphi Community has no design time package for sgcEditors, so there the layout control is created in code. | Help |
| Feature | Details | Community | Help |
|---|---|---|---|
| Data-aware editors | Date picker, time picker, spin edit, rating, range slider, button edit, masked edit, currency edit, memo and lookup edit bind DataSource and DataField; the range slider also binds EndDataField, and the lookup edit fills its list from a second dataset through ListSource, KeyField and ListField. Null fields show empty. Delphi and C++ Builder. | Registered | Help |
| WinForms data binding | The WinForms date and time pickers, spin edit, rating, range slider and the button, masked, currency, lookup and memo editors bind a field through DataSource, DataMember and DataField: a BindingSource, a DataTable, a DataView or a List. | Registered | Help |
| Lookup lists from any collection | ItemsSource, DisplayMember and ValueMember fill the lookup edit on WinForms, WPF and Avalonia; SelectedValue and SelectedItem return the typed objects. | Help | |
| Validation | The validator of sgcUICore checks sgcEditors and standard controls against required, range, length, regular expression, email, compare and custom rules, with a frame, an icon, a summary list and accessible messages, on VCL, FireMonkey, WinForms, WPF and Avalonia. In .NET it also shows IDataErrorInfo and INotifyDataErrorInfo errors. | Help | |
| Smart Paste | The month calendar, the date, time and date time pickers, the spin edit, the rating, the token edit, the colour picker, the button, masked, currency and lookup edits and the memo take part in Smart Paste. TsgcVCLSmartPaste and TsgcFMXSmartPaste (in .NET TsgcWinFormsSmartPaste, TsgcWpfSmartPaste and TsgcAvaloniaSmartPaste) turn a pasted text, such as an e-mail or an address block, into values for the controls of a form, sgcEditors and standard edit, combo, check box and date controls alike, with Undo and a Smart Paste button. Only the pasted text and the field descriptions are sent to the AI provider, and with no provider a local parser reads lines such as Name: value. | Help | |
| Data form generator | TsgcVCLDataForm and TsgcFMXDataForm build a complete edit form on the layout control from a TDataSet, one sgcEditors control per field chosen by its type, or from the published properties of a class through RTTI with BindObject. In .NET TsgcWinFormsDataForm, TsgcWpfDataForm and TsgcAvaloniaDataForm take a DataTable, a DataView, a list or a single object. Fields sets the caption, kind, group, tab and order of each field, and a navigator adds first, prior, next, last, new, edit, delete, post and cancel. Delphi, C++ Builder and .NET. | Registered | Help |
| Data form validation | Every field becomes rules of the validator of sgcUICore: required, range, length, regular expression and email, plus OnValidateField for your own checks. Post validates the record first, a summary lists the errors, and an invalid field on a tab that is not shown selects its tab. | Registered | Help |
| Data form Smart Paste | SmartPaste, SmartPasteAsync and SmartPasteFromClipboard, also a button of the navigator, fill every field of the record from a pasted text through the AI layer the editors use for their own Smart Paste. The fields it filled show an AI badge, and SmartPasteUndo puts the old values back. With no provider a local parser reads lines such as Name: value. | Registered | Help |
| Layouts saved as JSON | SaveLayout and LoadLayout keep the order, the parent, the sizes and the visibility of every item, the active tab of every tabbed group and the items the user hid, as JSON, to a string, a stream or a file. A layout saved by an older build loads in a newer one. | Help |
| Feature | Details | Community | Help |
|---|---|---|---|
| Real text entry | Date, time, number and hex fields are native edits, so IME, clipboard, undo and screen readers work. | Help | |
| Localisation | Each control carries its own locale: day and month names, formats, first day of the week, per control FormatSettings. | Help | |
| Keyboard | F4 or Alt+Down for drop-downs, arrows and PageUp and PageDown in the calendar, mouse wheel and auto repeat in the spin edit, a shortcut for each edit button, focus ring. | Help | |
| Per monitor DPI | Layout in logical pixels at 96 DPI, scaled per monitor, with the drop-down drawn at the DPI of its monitor. | Help | |
| Right to left (Arabic and Hebrew) | Spin, dropdown and clear buttons move to the other side, slider and rating direction, calendar weekday order, arrows and token flow are mirrored, and the inner edit field gets the same direction. | Help | |
| Screen readers and high contrast | Every editor exposes its role, name and value to UI Automation, together with the parts of the composite editors (date parts, tokens, rating stars, colour, edit buttons, the lookup list) and their popups while they are open, and an invalid field reports its state and its error message. The focus ring is always visible and Windows high contrast is followed. On by default on VCL (Delphi 7 to 13), FireMonkey on Windows, WinForms, WPF and Avalonia. | Help |
| Feature | Details | Community | Help |
|---|---|---|---|
| Themes | Light and dark themes with one property, plus AccentColor, TextStyle and an error colour for validation. | Help | |
| Headless rendering | SaveToPNG and SaveToSVG on every control and on the headless models, also on Linux64. The button, search, masked, currency and lookup edits and the memo keep their value text in PNG, SVG and printed or previewed pages. | Help |
| Task | Stock Delphi controls | sgcEditors |
|---|---|---|
| Pick a date or a time from a drop down | TDateTimePicker | TsgcVCLDatePicker, TsgcVCLTimePicker |
| Date and time in one control | TDateTimePicker | TsgcVCLDateTimePicker |
| Select a range of days with a maximum length | TMonthCalendar | esmRange, MaxRangeDays |
| Block single dates and week days | TMonthCalendar | DisabledDates, DisabledWeekDays, OnIsDateDisabled |
| A locale per control | TDateTimePicker | FormatSettings |
| Masked input with the Delphi or the .NET mask syntax | TMaskEdit | TsgcVCLMaskEdit, MaskSyntax |
| Pick a row from a multi-column list | TDBLookupComboBox | TsgcVCLLookupEdit, TsgcVCLDBLookupEdit |
| An edit with buttons | TButtonedEdit | TsgcVCLButtonEdit |
| Type a number on a touch panel | TTouchKeyboard | TsgcVCLNumPad, TsgcVCLNumPadPopup |
| Type text on a touch screen | TTouchKeyboard | TsgcVCLKeyboard, TsgcVCLKeyboardPopup |
| An on and off switch for settings | TToggleSwitch | TsgcVCLToggleSwitch |
| Edit an IPv4 or an IPv6 address | TMaskEdit | TsgcVCLIPAddressEdit |
| Enter a duration such as a timeout | TSpinEdit | TsgcVCLTimeSpanEdit |
| Pick a font family with a preview | TComboBox with Screen.Fonts, TFontDialog | TsgcVCLFontPicker |
| A list of options with check boxes | TCheckListBox | TsgcVCLCheckListBox |
| Move items between two lists | Two TListBox controls and buttons | TsgcVCLDualListBox |
Capabilities only, as documented in the help. No performance claims.
The .NET editors are a C# port with the same names and events, for WinForms, WPF and Avalonia. In WPF the value properties are dependency properties that bind two way. The lookup edit takes ItemsSource, DisplayMember and ValueMember on every host, and in the Registered edition the WinForms editors bind a field through DataSource, DataMember and DataField.
| Package | Edition | Contents |
|---|---|---|
esegece.sgcEditors.Community | Community (free) | Core library |
esegece.sgcEditors.WinForms.Community | Community (free) | Windows Forms controls |
esegece.sgcEditors.Wpf.Community | Community (free) | WPF controls |
esegece.sgcEditors.Avalonia.Community | Community (free) | Avalonia controls |
esegece.sgcEditors.Rendering.Community | Community (free) | Headless rendering |
esegece.sgcEditors | Registered | Core library |
esegece.sgcEditors.WinForms | Registered | Windows Forms controls |
esegece.sgcEditors.Wpf | Registered | WPF controls |
esegece.sgcEditors.Avalonia | Registered | Avalonia controls |
esegece.sgcEditors.Rendering | Registered | Headless rendering |
Every feature of sgcEditors is documented in the sgcUI help, with one build for each development environment.
Start with the sgcEditors introduction, then follow the quick start and the feature topics.
Delphi →The complete sgcUI help as a PDF file, to read offline or print.
Delphi (PDF) →