DevExpress VCL 18.2.8 Full Source with DxAutoInstaller 2.2
DevExpress VCL 18.2.8 Full Source with DxAutoInstaller 2.2
Deliver the solutions your customers expect today and leverage your existing VCL skillset to build next generation applications for tomorrow. The DevExpress VCL product line allows you to create applications that emulate the touch-first experience that lies at the heart of Windows 8, without abandoning your existing VCL investments. Whether you need to create a tile based modern UI application for Vista, Windows 7 and 8, or need to quickly convert an existing application so that it’s touch-first for Microsoft Surface, the DevExpress VCL Subscription will help you take your business solutions forward so you can deliver new, immersive experiences to delight your users.
VCL for superior performance.
No sacrifices. No exceptions.
At DevExpress, we understand that the VCL components you rely upon must be both beautiful and feature-rich and be built for speed and performance regardless of data complexity or size. Components must be reliable and well tested so that mission critical applications behave as expected, each and every time.
DevExpress VCL controls are powered by a patent-pending server-side data processing engine so that regardless of dataset size, users can shape and analyze information at lightning speeds, without sacrificing features or capabilities.
As a result of this tireless commitment to performance, reliability and technological innovation, you can confidently build data-centric applications that amaze, be it financial trading applications using real-time feeds or information driven enterprise-grade business intelligence solutions.
VCL for rich UI experiences.
Designed for elegance and flexibility.
With over 210 optimized components and libraries, the DevExpress VCL Subscription helps you deliver compelling, easy-to-use business solutions fast. Emulate the look, feel and capabilities of Microsoft Office or replicate the dock based UI of Visual Studio or Adobe Photoshop and take your Delphi and C++Builder applications to an entirely new level with familiar features end-users have come to rely upon. It's everything you need to build your best in one integrated suite.
And because technology never stands still, DevExpress continues to release innovative, high-impact components for the VCL such as the Wizard Control and the Zoom Track Bar, allowing your UI to easily evolve without abandoning your existing codebase or the proven VCL platform.
VCL for you and your team.
Unmatched quality, productivity and support.
At DevExpress, we understand that the demands placed upon you have never been greater. Your deadlines are real and you don’t have time to waste. The tools you invest in must be easy-to-use, they must be of impeccable quality and must be backed by a team of dedicated professionals who embrace your needs and strive to be a part of your extended team.
The most powerful
VCL Data Grid
The most popular data grid for the VCL platform is only available from DevExpress. From standard two-dimensional tables to runtime grouping and column customization; from master/detail relationships, to card views; from integrated themes to unbound mode... The DevExpress VCL Grid Suite is the industry standard, without equal in the marketplace.
The easy-to-use
VCL Reporting tool
Render and print your UI without writing a single line of code and deliver a nearly unlimited set of reports without using a banded report designer.
The DevExpress Printing System has been designed to accurately reproduce the contents of UI controls such as the DevExpress Grid, Pivot Grid and Scheduler. Your end-users can manipulate the controls visually, filter for desired information as needed and instantly print or export the contents of the visual control. Simply said, the ExpressPrinting System reduces the need to manually generate banded reports saving you both time and money.
The most flexible
VCL Analytics tools
Unleash the power of information and elegantly present it to your end-users with the high powered data-mining, and multi-dimensional data analysis controls by DevExpress. DevExpress gives you the means with which to meet and exceed the demands of your most demanding enterprise clients, today.
The richest collection of
VCL Data Editors
From masked data input and built-in data validation, to HTML formatting, the VCL Data Editors Library offers unmatched data editing options whether used for standalone data editing or as cell editors in container controls like the DevExpress VCL Data Grid.
Stunning and Informative
The DevExpress VCL Gauge Control provides numerous gauge shapes with a rich set of layout and appearance options so you can deliver stunning dashboards in the shortest possible time. Mix and match gauges to create reusable widgets and dashboards. These can be as simple as utility gauges and testers or as complex as multi-sensor control panels.
Built-in Style Collection
The VCL Gauge Control provides 16 built-in styles that allow you to change how a control looks with just a single mouse click.
New UI Adorner Manager
The VCL UI Adorner Manager is designed to display interactive objects and apply visual effects to better communicate the state of your application to end-users. It allows you to paint badges on top of all other UI elements and create guides to highlight specific UI elements using a translucent layered window.
Resolved Issues
This list includes all issues that were resolved after 18.2.6 and before or in 18.2.8.
ExpressBars Suite
T723982 - A large bar button's down arrow is incorrectly scaled at high DPI settings (more than 96)
T709692 - A minimized secondary Ribbon form's title bar buttons do not work if the form's DisableAero property is set to False and the application is running under Windows 10 version 1809
T731043 - Cannot scale TcxStyleRepository styles when in data module
T733443 - Ribbon Form - On using skins, the form's borders are painted incorrectly in the opened Backstage View if the ribbon style is rs2013 or newer
T741958 - TdxBarCustomPopupMenu and descendants - A bar's popup menu is always scaled according to the monitor DPI, even if the menu's invoker is programmatically scaled to a different target DPI
T731314 - TdxOfficeSearchBox - Releasing the Alt Gr key while the drop-down menu displays search results closes the menu and moves focus from the editor
T731872 - TdxRibbonStatusBar - An AV occurs when an editor on the status bar's toolbar panel receives focus if the Ribbon property is set to nil
T740480 - TdxStatusBar - The font of an individual panel scales twice if the panel's PanelStyle.ParentFont property is set to True, and the system DPI does not equal 96
T737807 - TdxTabbedMDIManager - A child MDI form's TdxRibbon control is displayed on the form for a brief moment before being merged with the parent form's TdxRibbon control on switching between MDI child forms
T736220 - The Ribbon Tab Area Toolbar disappears on an explicit or implicit RecreateWnd procedure call of the Ribbon control or its parent form
ExpressDataController
T741219 - Server Mode - A column whose Properties property is incorrectly unassigned displays certain non-string data types
ExpressDocking Library
T731862 - A selector of a dock panel's client area has the pink background if the "dxVS2005" mode is enabled in the docking manager and an application works under Windows 7 or an older version
ExpressEditors Library
T728596 - cxCheckListBox - An editor placed on an form does not add the cxCheckBox unit to the 'uses' clause, which can result in compile time errors if certain API members of the editor are used in code
T740195 - cxLabel - An editor is scaled incorrectly if it is anchored to the right edge of its parent and has an associated style controller
T742905 - cxLookupComboBox - The EditValue property value can change to Null Variant if the Properties.DropDownListStyle property is set to lsFixedList, and the ifoUseContainsOperator flag is in the Properties.IncrementalFilteringOptions property value
T736283 - Increasing the Filter Builder dialog's font size displays a horizontal scrollbar
T732575 - TcxButton - A TBasicAction descendant's OnHint event never occurs if the action object is linked to a button
T718888 - TcxCustomComboBox and descendants - A dropdown window scrollbar scales incorrectly
T731246 - TcxCustomTextEdit and descendants - An editor produces a sound on pressing the Ctrl+Enter key combination if the BeepOnEnter property is set to False
T729997 - TcxCustomTextEdit and descendants - The CursorPos property returns an incorrect value in certain cases
T744197 - TcxDBRichEdit - An entire editor content becomes selected when the Style.Color property value changes
T728127 - TcxNavigator - Setting the navigator to display only the First, PriorPage, or Prior button (or any combination of them) hides the information panel
ExpressExport Library
T732012 - The ExportGridTo~ procedures do not export plain text from the cells that use the cxRichEdit control as an in-place editor
ExpressLayout Control
T736190 - An AV occurs on dragging a Tabbed layout group if the layout control uses a custom container whose IsFloatingSupported function returns False
ExpressLibrary
T731688 - An AV occurs on clicking an item in a built-in popup menu in a cxTreeList or TcxGrid-based 64-bit application if the ExpressBars suite is installed
T733904 - Handling the OnUpdate event of a command (TAction object) created by the design-time UI generator disables the command's functionality
T734462 - SVG image resaving leads to adding redundant tab characters across the target file in certain cases
T727664 - SVG Images - A 'text' element, whose font typeface is specified as a generic serif or sans-serif font family, is not displayed
T741927 - SVG Images - Certain images in a 64-bit application are parsed incorrectly
T734045 - TdxStatusBar - The font size does not scale when the monitor DPI differs from 96
T741710 - The dxSetProcessDpiAwareness global function in the dxDPIAwareUtils unit does not work under Windows 10 version 1607 and newer
ExpressPDFViewer
T743253 - A text can be invisible if it uses a custom-encoded PostScript Type 1 embedded into a loaded document
T728499 - An application hangs on parsing a PostScript Type 1 font embedded into a loaded document in certain cases
T735763 - An AV occurs on decoding a PDF object compressed with the LZW algorithm that relies on early code change
T720500 - Hyperlink navigation within a document incorrectly works in certain cases
T743234 - Incorrect font glyphs are displayed for characters in a text that uses an embedded font whose 'hhea' table is omitted
T737184 - The control can display incorrect distances between words in a text if it uses a composite font
T742426 - The default button field states are displayed incorrectly for the fields whose values are unspecified in a loaded PDF document
T726534 - The invisible text rendering mode applied to a document content also affects the following PDF annotation
T729283 - The unhandled "No mapping for Unicode character exists in the target multi-byte code page" exception that can occur on parsing a hyperlink interrupts the document load process
T738368 - The zoom factor is incorrectly calculated if the OptionsZoom.ZoomMode property is set to pzmPages
ExpressPivotGrid Suite
T741955 - Data fields have incorrect widths if the "TheBezier" skin is applied
ExpressPrinting System
T728490 - RichEdit Control Report Link - Printing certain tabbed space combinations causes the EAssertionFailed exception
T731345 - Spreadsheet Report Link - A floating image container is printed in low quality regardless of the source image's resolution
T732407 - The FSmoothlyStretchImages global variable's value in the dxPSCore unit is ignored
ExpressQuantumGrid Suite
T726772 - An error occurs on compiling a C++Builder project if it uses values from the TcxGridDateTimeFilter, TcxGridDateTimeGrouping, TcxGridShowItemFilterButtons, TcxGridItemFilterButtonshowMode, or TcxGridItemFilterPopupApplyChangesMode enumeration type
T726202 - Chart View - NULL grouped chart values cannot be drilled down
T727938 - Conditional Formatting - The "One or more expressions are incorrect" exception occurs on an attempt to create a rule via the "Conditional Formatting Rules Manager" dialog if the first affected cell's value does not meet the rule's criterion
T741182 - cxExtLookupComboBox - An AV occurs on closing an in-place editor's dropdown window with filtered items if the TcxGrid control uses hybrid scrollbars
T729151 - Master-Detail - A classic scrollbar is displayed on top of the first column's header when a detail view is expanded for the first time if the LookAndFeel.ScrollbarMode and TcxLookAndFeelController.ScrollbarMode property values are different
T735104 - Master-Detail - A selected master row's expand button blends with the background if the "TheBezier" skin is applied
T723421 - Table and Banded Table Views - Horizontal scrolling cannot bring certain columns into view if the View's OptionsView.ColumnAutoWidth property is set to True and the Options.AutoWidthSizable property is set to False for one or more columns
T741252 - The "RowIndex out of range" exception is thrown on selecting the last two records while holding the Shift key after several selected records are deleted
ExpressQuantumTreeList Suite
T739664 - The ikMultiArrow indicator cell icon is not displayed for a focused node that is the only node selected in the tree list
ExpressRichEdit Control
T744404 - An HTML document is loaded very slowly if it contains a link whose URL does not specify a protocol
T742221 - Opening a DOCX file that contains a duplicate or empty xmlns attribute causes the "Duplicates not allowed" error
ExpressScheduler Suite
T728781 - A list of events in the "Reminder" dialog is flickering on an update
T727126 - An event doesn't assign its Data property on calling the event's Assign method
T729511 - cxSchedulerWebServiceStorage - A click on the "Dismiss" or "Dismiss All" button in the "Reminder" dialog has no effect if event notifications are enabled in a connected Google Calendar's settings
T741888 - Events are hidden for resources if certain non-matching strings are assigned as their identifiers
T732323 - Gantt View - An event's start and end times are not updated correctly when its parent group moves along the time grid
ExpressSpellChecker
T732709 - There is a typo in the "International Dictionaries" caption of a group box in the "Spelling Options" dialog
ExpressSpreadSheet
T735043 - A cell with a date/time value shows minutes instead of a month if the formatting pattern includes one- or two-character macro for a month and a macro for seconds
T730634 - A custom in-place cell editor that overrides the default editor via an OnEditing event handler, scales twice when invoked for the first time on a monitor whose DPI differs from 96
T739622 - A defined name that refers to an external document is loaded incorrectly from an XLS file
T731075 - A memory corruption occurs when an OnEditing event handler returns a custom property set via the AProperties var parameter if the property set is not derived from the TcxCustomRichEditProperties class
T746224 - A worksheet ceases to scroll on cell selection via drag-and-drop when the mouse pointer goes outside the control's bounds if the worksheet has at least one frozen row or column
T742244 - An AV occurs on an attempt to copy or cut a cell to the clipboard if the cell contains a formula expression that returns a string
T730195 - An RTF text string ignores vertical alignment within a merged cell
T736187 - Built-in function implementation can incorrectly choose between array and non-array result calculation modes
T740316 - Certain cell borders are not displayed in certain spreadsheet documents created by third-party applications
T740637 - Export to XLSX - Microsoft Excel considers an exported document corrupted if a worksheet has one or more hyperlinks and its OptionsPrint.Source.GridLines property is set to bTrue or bFalse
T731394 - It is impossible to copy or move formatted RTF strings between worksheet cells in a Spreadsheet control and Microsoft Excel via the clipboard
T736154 - Memory gets corrupted on scrolling a worksheet while a reference in a formula expression is being edited by dragging a cell selection
T730609 - Multiple consecutive document load operations can result in an AV if each loaded document contains a lot of shared strings, and the RTF formatting functionality is enabled
T734814 - TdxSpreadSheetReportDesigner - Binding to another dataset doesn't clear the field list accessible via the DataBinding.DataController property
T744913 - The "'-' is not a valid floating point value" exception occurs on loading an ODS file that includes at least one blank cell with a numeric formatting pattern
T738227 - The IF function returns only a single value regardless of accepted parameters
T744595 - The IF, IFERROR, IFNA, and CHOOSE functions can return incorrect results when used in array formula expressions that return an array
T736999 - The OFFSET function can return an incorrect result
ExpressVerticalGrid Suite
T734494 - TcxVirtualVerticalGrid - The "List index out of bounds (-1)" exception occurs on saving a stream using its WriteComponent method if no record is focused
This list includes all issues that were resolved after 18.2.6 and before or in 18.2.8.
ExpressBars Suite
T723982 - A large bar button's down arrow is incorrectly scaled at high DPI settings (more than 96)
T709692 - A minimized secondary Ribbon form's title bar buttons do not work if the form's DisableAero property is set to False and the application is running under Windows 10 version 1809
T731043 - Cannot scale TcxStyleRepository styles when in data module
T733443 - Ribbon Form - On using skins, the form's borders are painted incorrectly in the opened Backstage View if the ribbon style is rs2013 or newer
T741958 - TdxBarCustomPopupMenu and descendants - A bar's popup menu is always scaled according to the monitor DPI, even if the menu's invoker is programmatically scaled to a different target DPI
T731314 - TdxOfficeSearchBox - Releasing the Alt Gr key while the drop-down menu displays search results closes the menu and moves focus from the editor
T731872 - TdxRibbonStatusBar - An AV occurs when an editor on the status bar's toolbar panel receives focus if the Ribbon property is set to nil
T740480 - TdxStatusBar - The font of an individual panel scales twice if the panel's PanelStyle.ParentFont property is set to True, and the system DPI does not equal 96
T737807 - TdxTabbedMDIManager - A child MDI form's TdxRibbon control is displayed on the form for a brief moment before being merged with the parent form's TdxRibbon control on switching between MDI child forms
T736220 - The Ribbon Tab Area Toolbar disappears on an explicit or implicit RecreateWnd procedure call of the Ribbon control or its parent form
ExpressDataController
T741219 - Server Mode - A column whose Properties property is incorrectly unassigned displays certain non-string data types
ExpressDocking Library
T731862 - A selector of a dock panel's client area has the pink background if the "dxVS2005" mode is enabled in the docking manager and an application works under Windows 7 or an older version
ExpressEditors Library
T728596 - cxCheckListBox - An editor placed on an form does not add the cxCheckBox unit to the 'uses' clause, which can result in compile time errors if certain API members of the editor are used in code
T740195 - cxLabel - An editor is scaled incorrectly if it is anchored to the right edge of its parent and has an associated style controller
T742905 - cxLookupComboBox - The EditValue property value can change to Null Variant if the Properties.DropDownListStyle property is set to lsFixedList, and the ifoUseContainsOperator flag is in the Properties.IncrementalFilteringOptions property value
T736283 - Increasing the Filter Builder dialog's font size displays a horizontal scrollbar
T732575 - TcxButton - A TBasicAction descendant's OnHint event never occurs if the action object is linked to a button
T718888 - TcxCustomComboBox and descendants - A dropdown window scrollbar scales incorrectly
T731246 - TcxCustomTextEdit and descendants - An editor produces a sound on pressing the Ctrl+Enter key combination if the BeepOnEnter property is set to False
T729997 - TcxCustomTextEdit and descendants - The CursorPos property returns an incorrect value in certain cases
T744197 - TcxDBRichEdit - An entire editor content becomes selected when the Style.Color property value changes
T728127 - TcxNavigator - Setting the navigator to display only the First, PriorPage, or Prior button (or any combination of them) hides the information panel
ExpressExport Library
T732012 - The ExportGridTo~ procedures do not export plain text from the cells that use the cxRichEdit control as an in-place editor
ExpressLayout Control
T736190 - An AV occurs on dragging a Tabbed layout group if the layout control uses a custom container whose IsFloatingSupported function returns False
ExpressLibrary
T731688 - An AV occurs on clicking an item in a built-in popup menu in a cxTreeList or TcxGrid-based 64-bit application if the ExpressBars suite is installed
T733904 - Handling the OnUpdate event of a command (TAction object) created by the design-time UI generator disables the command's functionality
T734462 - SVG image resaving leads to adding redundant tab characters across the target file in certain cases
T727664 - SVG Images - A 'text' element, whose font typeface is specified as a generic serif or sans-serif font family, is not displayed
T741927 - SVG Images - Certain images in a 64-bit application are parsed incorrectly
T734045 - TdxStatusBar - The font size does not scale when the monitor DPI differs from 96
T741710 - The dxSetProcessDpiAwareness global function in the dxDPIAwareUtils unit does not work under Windows 10 version 1607 and newer
ExpressPDFViewer
T743253 - A text can be invisible if it uses a custom-encoded PostScript Type 1 embedded into a loaded document
T728499 - An application hangs on parsing a PostScript Type 1 font embedded into a loaded document in certain cases
T735763 - An AV occurs on decoding a PDF object compressed with the LZW algorithm that relies on early code change
T720500 - Hyperlink navigation within a document incorrectly works in certain cases
T743234 - Incorrect font glyphs are displayed for characters in a text that uses an embedded font whose 'hhea' table is omitted
T737184 - The control can display incorrect distances between words in a text if it uses a composite font
T742426 - The default button field states are displayed incorrectly for the fields whose values are unspecified in a loaded PDF document
T726534 - The invisible text rendering mode applied to a document content also affects the following PDF annotation
T729283 - The unhandled "No mapping for Unicode character exists in the target multi-byte code page" exception that can occur on parsing a hyperlink interrupts the document load process
T738368 - The zoom factor is incorrectly calculated if the OptionsZoom.ZoomMode property is set to pzmPages
ExpressPivotGrid Suite
T741955 - Data fields have incorrect widths if the "TheBezier" skin is applied
ExpressPrinting System
T728490 - RichEdit Control Report Link - Printing certain tabbed space combinations causes the EAssertionFailed exception
T731345 - Spreadsheet Report Link - A floating image container is printed in low quality regardless of the source image's resolution
T732407 - The FSmoothlyStretchImages global variable's value in the dxPSCore unit is ignored
ExpressQuantumGrid Suite
T726772 - An error occurs on compiling a C++Builder project if it uses values from the TcxGridDateTimeFilter, TcxGridDateTimeGrouping, TcxGridShowItemFilterButtons, TcxGridItemFilterButtonshowMode, or TcxGridItemFilterPopupApplyChangesMode enumeration type
T726202 - Chart View - NULL grouped chart values cannot be drilled down
T727938 - Conditional Formatting - The "One or more expressions are incorrect" exception occurs on an attempt to create a rule via the "Conditional Formatting Rules Manager" dialog if the first affected cell's value does not meet the rule's criterion
T741182 - cxExtLookupComboBox - An AV occurs on closing an in-place editor's dropdown window with filtered items if the TcxGrid control uses hybrid scrollbars
T729151 - Master-Detail - A classic scrollbar is displayed on top of the first column's header when a detail view is expanded for the first time if the LookAndFeel.ScrollbarMode and TcxLookAndFeelController.ScrollbarMode property values are different
T735104 - Master-Detail - A selected master row's expand button blends with the background if the "TheBezier" skin is applied
T723421 - Table and Banded Table Views - Horizontal scrolling cannot bring certain columns into view if the View's OptionsView.ColumnAutoWidth property is set to True and the Options.AutoWidthSizable property is set to False for one or more columns
T741252 - The "RowIndex out of range" exception is thrown on selecting the last two records while holding the Shift key after several selected records are deleted
ExpressQuantumTreeList Suite
T739664 - The ikMultiArrow indicator cell icon is not displayed for a focused node that is the only node selected in the tree list
ExpressRichEdit Control
T744404 - An HTML document is loaded very slowly if it contains a link whose URL does not specify a protocol
T742221 - Opening a DOCX file that contains a duplicate or empty xmlns attribute causes the "Duplicates not allowed" error
ExpressScheduler Suite
T728781 - A list of events in the "Reminder" dialog is flickering on an update
T727126 - An event doesn't assign its Data property on calling the event's Assign method
T729511 - cxSchedulerWebServiceStorage - A click on the "Dismiss" or "Dismiss All" button in the "Reminder" dialog has no effect if event notifications are enabled in a connected Google Calendar's settings
T741888 - Events are hidden for resources if certain non-matching strings are assigned as their identifiers
T732323 - Gantt View - An event's start and end times are not updated correctly when its parent group moves along the time grid
ExpressSpellChecker
T732709 - There is a typo in the "International Dictionaries" caption of a group box in the "Spelling Options" dialog
ExpressSpreadSheet
T735043 - A cell with a date/time value shows minutes instead of a month if the formatting pattern includes one- or two-character macro for a month and a macro for seconds
T730634 - A custom in-place cell editor that overrides the default editor via an OnEditing event handler, scales twice when invoked for the first time on a monitor whose DPI differs from 96
T739622 - A defined name that refers to an external document is loaded incorrectly from an XLS file
T731075 - A memory corruption occurs when an OnEditing event handler returns a custom property set via the AProperties var parameter if the property set is not derived from the TcxCustomRichEditProperties class
T746224 - A worksheet ceases to scroll on cell selection via drag-and-drop when the mouse pointer goes outside the control's bounds if the worksheet has at least one frozen row or column
T742244 - An AV occurs on an attempt to copy or cut a cell to the clipboard if the cell contains a formula expression that returns a string
T730195 - An RTF text string ignores vertical alignment within a merged cell
T736187 - Built-in function implementation can incorrectly choose between array and non-array result calculation modes
T740316 - Certain cell borders are not displayed in certain spreadsheet documents created by third-party applications
T740637 - Export to XLSX - Microsoft Excel considers an exported document corrupted if a worksheet has one or more hyperlinks and its OptionsPrint.Source.GridLines property is set to bTrue or bFalse
T731394 - It is impossible to copy or move formatted RTF strings between worksheet cells in a Spreadsheet control and Microsoft Excel via the clipboard
T736154 - Memory gets corrupted on scrolling a worksheet while a reference in a formula expression is being edited by dragging a cell selection
T730609 - Multiple consecutive document load operations can result in an AV if each loaded document contains a lot of shared strings, and the RTF formatting functionality is enabled
T734814 - TdxSpreadSheetReportDesigner - Binding to another dataset doesn't clear the field list accessible via the DataBinding.DataController property
T744913 - The "'-' is not a valid floating point value" exception occurs on loading an ODS file that includes at least one blank cell with a numeric formatting pattern
T738227 - The IF function returns only a single value regardless of accepted parameters
T744595 - The IF, IFERROR, IFNA, and CHOOSE functions can return incorrect results when used in array formula expressions that return an array
T736999 - The OFFSET function can return an incorrect result
ExpressVerticalGrid Suite
T734494 - TcxVirtualVerticalGrid - The "List index out of bounds (-1)" exception occurs on saving a stream using its WriteComponent method if no record is focused
Only for V.I.P
Warning! You are not allowed to view this text.
Comments 2