sgcGauges Feature Matrix
Everything sgcGauges does, grouped by task, with a link to the help topic of each feature. Each gauge has a headless model, a VCL control, a FireMonkey control and three .NET controls.
Everything sgcGauges does, grouped by task, with a link to the help topic of each feature. Each gauge has a headless model, a VCL control, a FireMonkey control and three .NET controls.
11 features
4 features
7 features
3 features
7 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 |
|---|---|---|---|
| Radial | Dial gauge with scales, ranges and pointers. | Help | |
| Linear | Bar, thermometer and bullet graph in one gauge: LinearStyle glsBar, glsThermometer, glsBullet, plus Target. | Help | |
| Digital | 7 segment display. 14 segment and dot matrix with ghost segments and skew are in the Registered edition. | Help | |
| LED and LED bar | Blinking LEDs and an LED bar with peak hold. | Help | |
| Progress ring | Circular progress indicator. | Help | |
| Tank and vessel | TsgcVCLTankGauge (TsgcFMXTankGauge on FireMonkey, and the same names in WinForms, WPF and Avalonia) shows the level of a vessel for process screens. Shape draws a vertical cylinder, a horizontal capsule, a cone bottom or a sphere. LimitHH, LimitH, LimitL and LimitLL mark the ISA limits on the vessel, LimitHysteresis keeps a limit state until the level moves clear, and LimitState reports it while the tank draws an HH, H, L or LL badge, so the state never depends on colour alone. | Help | |
| Process symbol | TsgcVCLSymbolGauge (TsgcFMXSymbolGauge on FireMonkey, and the same names in WinForms, WPF and Avalonia) draws a valve, pump, motor, fan, heat exchanger or sensor (Kind) in its process state: off, on, fault, open, closed or transit (State). A running pump or fan spins, a fault flashes with a mark and a valve in transit has a dashed outline. Rotation turns the symbol and the equipment tag is drawn below it. | Help | |
| VU meter | Audio level meter. | Registered | Help |
| Clock and compass | Analog clock and compass gauges. | Registered | Help |
| Annunciator | Alarm tiles that flash until acknowledged (Acknowledge, OnTileClick). | Registered | Help |
| Input gauges | TsgcVCLKnobGauge, TsgcVCLSliderGauge, TsgcVCLToggleSwitchGauge and TsgcVCLPushButtonGauge (TsgcFMX on FireMonkey, and the same names in WinForms, WPF and Avalonia) let the user set a value: turn the knob, drag the slider, flip the switch or press the button with the mouse, touch, the wheel or the keyboard. Step snaps the value, ReadOnly locks it, the push button is momentary or latching (Mode), and OnUserChange fires only for changes made by the user. They are mirrored in right to left layouts and screen readers see them as a slider, a toggle switch and a button. | Help |
| Feature | Details | Community | Help |
|---|---|---|---|
| Ranges | Green, amber and red bands from any minimum to maximum (Ranges.Add, StartValue, EndValue, Color). | Help | |
| Scales | Scale with MajorInterval. Several scales per gauge are in the Registered edition. | Help | |
| Pointers | Needle and marker pointers. Several pointers per gauge are in the Registered edition. | ~Community draws one scale and one pointer per gauge; the Registered edition draws all of them. | Help |
| Thresholds with hysteresis | OnThreshold fires on each crossing (gtdRising, gtdFalling, gtdBoth), in the main thread whatever thread wrote the value. | Help |
| Feature | Details | Community | Help |
|---|---|---|---|
| Animation | The needle animates to each new value, 300 ms by default, with five easing curves: geLinear, geQuadOut, geCubicOut, geCubicInOut, geBackOut. | Help | |
| Themes | Light and dark themes with one property: Theme := utDark. | Help | |
| Skins | Skin picks a registered skin by name: Classic (the default look), Modern, Industrial, ISA101 and Dark. SkinData sets your own colours for one gauge: face, bezel, track, ticks, labels, needle, LEDs, alarm levels and the parts of the input gauges, with the face, bezel and needle styles and the label and value weight. sgcGaugesRegisterSkin adds your own skin and sgcGaugesSetDefaultSkin applies one to every gauge. A colour set on the gauge wins over the skin, the skin wins over the theme, and a Windows high contrast theme always wins. Skins are saved to and loaded from JSON. | Help | |
| Headless rendering | SaveToPNG and SaveToSVG on every control and model, also on Linux64 and in the .NET ConsoleRender demo. | Help | |
| Right to left (Arabic and Hebrew) | Caption and unit text placement follow the direction. Dials, clocks, compass, VU meters and linear and ring progress keep their orientation. | Help | |
| Printing and print preview | Print and ShowPrintPreview print the gauge on one page as on screen, at its final value even while an animation runs. PrintSettings sets the paper, orientation, margins, scaling, header and footer once for the printer, the preview and the PDF. In every edition, on VCL, FireMonkey, WinForms, WPF and Avalonia (FireMonkey prints on Windows and macOS). | Help | |
| Accessible PDF export, PDF/UA and PDF/A (with sgcPDF) | ExportToPDF writes the gauge as vector graphics with real text and an alternative text with the caption, the value, the unit and the range. The file is a tagged PDF/UA document by default, and PDFALevel adds PDF/A-2a or PDF/A-3a. Needs the sgcUIPDF bridge and a licensed sgcPDF (esegece.sgcUICore.sgcPDF in .NET). | Registered | Help |
| Accessibility | Every gauge kind exposes its caption, value and range to UI Automation, and the thresholds are raised as announcements. Gauges are not tab stops by default, because they only show values, and TabStop brings them into the tab order. 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 |
|---|---|---|---|
| Dataset binding | TsgcGaugeDataLink shows the value of a dataset field on any VCL or FireMonkey gauge (DataSource, DataField, Gauge) and follows the current record, its edits and its posts. In .NET it binds a DataTable or a DataView column, and TsgcWinFormsGaugeDataLink follows the CurrencyManager of a WinForms form. A user change on an input gauge is written back to the field, with OnBeforeWriteBack, OnWriteBack and OnWriteBackError; a refused or failed write puts the gauge back to the field value. In WPF and Avalonia the Value and Checked properties of the input gauges bind two way to a view model. | ~Reading the field is in every edition. The write back is Registered. | Help |
| MQTT, WebSocket and SSE binding | sgcGaugesWS binds MQTT topics (with + and # filters) and JSON fields of WebSocket and SSE messages to gauge pointers with ValuePath, FilterPath and FilterValue. Needs sgcWebSockets. | Registered | Help |
| Tank and process symbol feeds | The MQTT, WebSocket and SSE bindings of sgcGaugesWS drive the level of a tank and the state of a process symbol. A symbol also takes its state names, such as "open" or "on", and ValueMap translates the codes a plant sends, such as a PLC bit or a status text like RUNNING, into symbol states. Needs sgcWebSockets. | Registered | Help |
The .NET gauges are a C# port with the same class names, for WinForms, WPF and Avalonia, with the live data bridge as a separate package.
| Package | Edition | Contents |
|---|---|---|
esegece.sgcGauges.Community | Community (free) | Core library |
esegece.sgcGauges.WinForms.Community | Community (free) | Windows Forms controls |
esegece.sgcGauges.Wpf.Community | Community (free) | WPF controls |
esegece.sgcGauges.Avalonia.Community | Community (free) | Avalonia controls |
esegece.sgcGauges.Rendering.Community | Community (free) | Headless rendering |
esegece.sgcGauges | Registered | Core library |
esegece.sgcGauges.WinForms | Registered | Windows Forms controls |
esegece.sgcGauges.Wpf | Registered | WPF controls |
esegece.sgcGauges.Avalonia | Registered | Avalonia controls |
esegece.sgcGauges.Rendering | Registered | Headless rendering |
esegece.sgcGauges.sgcWebSockets | Registered only | sgcWebSockets bridge |
Every feature of sgcGauges is documented in the sgcUI help, with one build for each development environment.
Start with the sgcGauges 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) →