From 6d79f6a0e9bbf1bc807bcc5c4e7d4faf85981f92 Mon Sep 17 00:00:00 2001 From: Nick Volynkin Date: Wed, 4 Mar 2026 12:29:04 +0200 Subject: [PATCH] readme: Update links and product naming - Rename `Localization` folder to `localization`, which is the preferred name since v25.2.5 --- README.md | 98 +++++++++++++------ .../dx-analytics-core.de.json | 0 .../dx-dashboard.de.json | 0 .../dx-reporting.de.json | 0 .../dx-rich.de.json | 0 5 files changed, 68 insertions(+), 30 deletions(-) rename {Localization => localization}/dx-analytics-core.de.json (100%) rename {Localization => localization}/dx-dashboard.de.json (100%) rename {Localization => localization}/dx-reporting.de.json (100%) rename {Localization => localization}/dx-rich.de.json (100%) diff --git a/README.md b/README.md index 43bcd8f..90b6da0 100644 --- a/README.md +++ b/README.md @@ -5,43 +5,44 @@ [![](https://img.shields.io/badge/💬_Leave_Feedback-feecdd?style=flat-square)](#does-this-example-address-your-development-requirementsobjectives) -# DevExpress VCL Reports — Localize the DevExpress Report Viewer and Report Designer +# DevExpress Reports for Delphi/C++Builder — Localize the Report Viewer and Report Designer This example localizes DevExpress VCL Reports components. -The [DevExpress Reporting Platform](https://docs.devexpress.com/VCL/405469/ExpressReports/vcl-reports) fully supports UI localization. -The localization example in this repository allows users to select between English (default) and German (localized) versions of two built-in DevExpress dialogs: -[Report Viewer](https://docs.devexpress.com/XtraReports/401850/web-reporting/web-document-viewer) and -[Report Designer](https://docs.devexpress.com/XtraReports/119176/web-reporting/web-end-user-report-designer). +The [DevExpress Reports for Delphi/C++Builder][vcl-reports-intro] fully support UI localization. +The localization example in this repository allows users to select between English (default) and German (localized) versions +of two built-in DevExpress dialogs: [Report Designer][dx-report-designer] and [Report Viewer][dx-report-viewer]. The example includes projects for both [Delphi](./Delphi) and [C++Builder](./CPB). - Start screen of the localization example, allowing users to select between English and German,
 and to display Report Designer and Report Viewer dialogs ## Prerequisites -See the [DevExpress Reports Prerequisites]( -https://docs.devexpress.com/VCL/405773/ExpressCrossPlatformLibrary/vcl-backend/reports-dashboards-app-deployment#vcl-reportsdashboards-prerequisites). +[DevExpress Reports Prerequisites][req] + +[req]: https://docs.devexpress.com/VCL/405773/ExpressCrossPlatformLibrary/vcl-backend/reports-dashboards-app-deployment#vcl-reportsdashboards-prerequisites ## Implementation Details To localize the DevExpress Report Designer and Report Viewer in your Delphi or C++Builder application, you must: -1. Use the [DevExpress UI Localization Service](https://docs.devexpress.com/GeneralInformation/16235/localization/localization-service) +1. Use the [DevExpress UI Localization Service][localization-service] to obtain localization files for DevExpress VCL Report Viewer and Designer. These files contain UI string translations for specific languages/locales. Refer to the following guide to learn more: - [Localize Core Reporting Components: Use JSON Files](https://docs.devexpress.com/XtraReports/400932/web-reporting/common-features/localization/localization-in-asp-net-core-reporting-applications#use-json-files). -1. Extract downloaded files to a `Localization` folder next to your compiled application executable. + [Localize Core Reporting Components: Use JSON Files][l10n-json-files]. +1. Extract downloaded files to a [localization] folder next to your compiled application executable. Note that projects in this repository output their executables to the same location. This allows both projects to use the same localization files. -1. Assign a language identifier (also known as [locale][1] or [culture identifier][2]) to the - [`TdxReport.Language`](https://docs.devexpress.com/VCL/dxReport.TdxReport.Language) +1. Assign a language identifier (also known as [locale][locale] or [culture identifier][culture]) to the + [TdxReport.Language] property to switch the Report Designer/Report Viewer to the desired language: - **Delphi:** + + #### Delphi ```delphi dxReport1: TdxReport; @@ -49,40 +50,77 @@ you must: dxReport1.Language := 'de-DE' ``` - **C++Builder:** - ```cpp + #### C++Builder + ```c TdxReport *dxReport1; // Switch Report UI to German dxReport1->Language = "de-DE"; ``` - -[1]: https://learn.microsoft.com/en-us/globalization/reference/glossary#locale -[2]: https://learn.microsoft.com/en-us/dotnet/fundamentals/runtime-libraries/system-globalization-cultureinfo#culture-names-and-identifiers + For a step-by-step guide, refer to the following help topic: -[Report Viewer and Designer UI Localization](https://docs.devexpress.com/VCL/405598/ExpressReports/localization/vcl-report-viewer-and-designer-localization). +[Report Viewer and Designer UI Localization][viewer-designer-l10n]. This example does not localize report content. -To localize report content in your project, refer to the following guide: [Report Localization](https://docs.devexpress.com/VCL/405599/ExpressReports/localization/vcl-report-localization). +To localize report content in your project, refer to the following guide: [Report Content Localization][report-content-l10n]. The localization mechanism described in this example applies only to the DevExpress Report Designer and Report Viewer. -Other DevExpress VCL components support localization using [resource files and the Localizer Editor](https://docs.devexpress.com/VCL/154039/ExpressCrossPlatformLibrary/how-to/localize-an-application). +Other DevExpress VCL components support localization using [resource files and the Localizer Editor][localize-an-application]. + ## Files to Review -- [`Delphi/uMainForm.pas`](./Delphi/uMainForm.pas) loads an example report from `ExampleReport.repx`. - Event handlers assigned to [`TcxRadioButton`](https://docs.devexpress.com/VCL/cxRadioGroup.TcxRadioButton) +- [uMainForm.pas] (Delphi) and [uMainForm.cpp] (C++Builder) load an example report from [ExampleReport.repx]. + Event handlers assigned to [TcxRadioButton] components switch localization language between English and German. -- [`Localization/*.de.json`](./Localization/) files contain localized UI strings. +- [localization/*.de.json][localization] files contain localized UI strings. ## Documentation -- [VCL Report Viewer and Designer UI Localization](https://docs.devexpress.com/VCL/405598/ExpressReports/localization/vcl-report-viewer-and-designer-localization) -- [VCL Reports Localization](https://docs.devexpress.com/VCL/405597/ExpressReports/vcl-reports-localization) -- [DevExpress UI Localization Service](https://docs.devexpress.com/GeneralInformation/16235/localization/localization-service) -- [TdxReport.Language Property](https://docs.devexpress.com/VCL/dxReport.TdxReport.Language) -- [ExpressReports Application Deployment Requirements](https://docs.devexpress.com/VCL/405469/ExpressReports/vcl-reports#expressreports-app-deployment) +- [VCL Report Viewer and Designer UI Localization][viewer-designer-l10n] +- [VCL Reports Localization][reports-l10n] +- [DevExpress UI Localization Service][l10n-service] +- [ExpressReports Application Deployment Requirements][req] +- API reference: + - [TdxReport](https://docs.devexpress.com/VCL/dxReport.TdxReport) + - [TdxReport.Layout](https://docs.devexpress.com/VCL/dxReport.TdxReport.Layout) + - [TdxReport.Language] + + +[vcl-reports-intro]: https://docs.devexpress.com/VCL/405469/ExpressReports/vcl-reports +[dx-report-viewer]: https://docs.devexpress.com/XtraReports/401850/web-reporting/web-document-viewer +[dx-report-designer]: https://docs.devexpress.com/XtraReports/119176/web-reporting/web-end-user-report-designer +[reports-l10n]: https://docs.devexpress.com/VCL/405597/ExpressReports/vcl-reports-localization +[report-content-l10n]: https://docs.devexpress.com/VCL/405599/ExpressReports/localization/vcl-report-localization +[viewer-designer-l10n]: https://docs.devexpress.com/VCL/405598/ExpressReports/localization/vcl-report-viewer-and-designer-localization +[l10n-service]: https://docs.devexpress.com/GeneralInformation/16235/localization/localization-service +[l10n-json-files]: https://docs.devexpress.com/XtraReports/400932/web-reporting/common-features/localization/localization-in-asp-net-core-reporting-applications#use-json-files +[localize-an-application]: https://docs.devexpress.com/VCL/154039/ExpressCrossPlatformLibrary/how-to/localize-an-application + + +[TdxReport.Language]: https://docs.devexpress.com/VCL/dxReport.TdxReport.Language +[TcxRadioButton]: https://docs.devexpress.com/VCL/cxRadioGroup.TcxRadioButton + + +[locale]: https://learn.microsoft.com/en-us/globalization/reference/glossary#locale +[culture]: https://learn.microsoft.com/en-us/dotnet/fundamentals/runtime-libraries/system-globalization-cultureinfo#culture-names-and-identifiers + + +[localization]: ./localization/ +[uMainForm.pas]: ./Delphi/uMainForm.pas +[uMainForm.cpp]: ./CPB/uMainForm.cpp +[ExampleReport.repx]: ./ExampleReport.repx + + +## More Examples + +- [Store Report Layouts in REPX Files][file-example] +- [Store Report Layouts in a Database][database-example] + +[file-example]: https://github.com/DevExpress-Examples/vcl-reports-store-layout-template-file +[database-example]: https://github.com/DevExpress-Examples/vcl-reports-store-layout-template-database + ## Localized Report Dialogs Preview diff --git a/Localization/dx-analytics-core.de.json b/localization/dx-analytics-core.de.json similarity index 100% rename from Localization/dx-analytics-core.de.json rename to localization/dx-analytics-core.de.json diff --git a/Localization/dx-dashboard.de.json b/localization/dx-dashboard.de.json similarity index 100% rename from Localization/dx-dashboard.de.json rename to localization/dx-dashboard.de.json diff --git a/Localization/dx-reporting.de.json b/localization/dx-reporting.de.json similarity index 100% rename from Localization/dx-reporting.de.json rename to localization/dx-reporting.de.json diff --git a/Localization/dx-rich.de.json b/localization/dx-rich.de.json similarity index 100% rename from Localization/dx-rich.de.json rename to localization/dx-rich.de.json