-
Notifications
You must be signed in to change notification settings - Fork 0
Add README for AI-powered Smart Paste example #1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
dmitry-eliseev-devexpress
merged 10 commits into
25.2.3+
from
dmitry-eliseev-devexpress-vcl-smartpaste-example-add-readme
Jan 5, 2026
Merged
Changes from all commits
Commits
Show all changes
10 commits
Select commit
Hold shift + click to select a range
eb2c86d
Add README for AI-powered Smart Paste example
dmitry-eliseev-devexpress 609caca
README auto update [skip ci]
5786da5
Create stab.txt
dmitry-eliseev-devexpress bad1fc1
Add sample animations
dmitry-eliseev-devexpress 0297fb6
Enhance README with Smart Paste examples and images
dmitry-eliseev-devexpress 9ef3ff5
Delete Delphi/Images/stab.txt
dmitry-eliseev-devexpress 12ed196
Apply suggestions from code review
dmitry-eliseev-devexpress 9371792
Apply suggestions from code review
dmitry-eliseev-devexpress c99175b
Apply suggestions from code review
dmitry-eliseev-devexpress b09b6e1
Apply suggestions from code review
dmitry-eliseev-devexpress File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,74 @@ | ||
| <!-- default badges list --> | ||
| [](https://docs.devexpress.com/GeneralInformation/403183) | ||
| [](#does-this-example-address-your-development-requirementsobjectives) | ||
| <!-- default badges end --> | ||
| # DevExpress VCL — AI-powered Smart Paste Functionality | ||
|
|
||
| This example adds an [AI-powered Smart Paste command](https://docs.devexpress.com/VCL/405528/ExpressCrossPlatformLibrary/common-features/ai-powered-extensions) to our [Grid](https://docs.devexpress.com/VCL/171093/ExpressQuantumGrid/vcl-data-grid) and [Layout](https://docs.devexpress.com/VCL/152013/ExpressLayoutControl/introduction) controls. Our command is based on the official Embarcadero [SmartCore AI Components Pack](https://docwiki.embarcadero.com/RADStudio/Florence/en/SmartCore_AI_Component_Pack) available in the [GetIt Package Manager](https://getitnow.embarcadero.com/smartcore-ai-components). VCL developers can switch between different AI service providers as requirements dictate. | ||
|
|
||
| > A _Smart Paste_ command analyzes clipboard content and assigns correct values (in specific formats) to corresponding editors in a complex UI layout or within grid cells. | ||
|
|
||
| ## Prerequisites | ||
|
|
||
| * Embarcadero RAD Studio IDE 13 or newer (Community Edition is not supported) | ||
| * [SmartCore AI Component Pack](https://docwiki.embarcadero.com/RADStudio/Florence/en/SmartCore_AI_Component_Pack) installed from [GetIt](https://getitnow.embarcadero.com/smartcore-ai-components) | ||
| * DevExpress VCL Components v25.2.3 or newer | ||
|
|
||
| ## Deploy and Run the Example | ||
|
|
||
| To connect this sample project to an AI service provider, you must: | ||
|
|
||
| 1. Open the main form in **Designer** mode. | ||
| 2. Select the OpenAI or Google Gemini provider component. | ||
| 3. Expand the `Params` node in the **Object Inspector** and paste a valid API key into the `APIKey` input box. | ||
| 4. Uncomment the `TdxSmartCoreAIChatClient.Create` method call for the target AI provider: | ||
|
|
||
| ``` | ||
| procedure TSmartCoreAIDemoMainForm.FormCreate(Sender: TObject); | ||
| var | ||
| Client: TdxAIChatClient; | ||
| begin | ||
| // OpenAI | ||
| // Client := TdxSmartCoreAIChatClient.Create(OpenAIDriver); | ||
|
|
||
| // Google Gemini | ||
| // Client := TdxSmartCoreAIChatClient.Create(GeminiDriver); | ||
|
|
||
| TdxAIChatClients.AddChatClient(Client); | ||
| end; | ||
| ``` | ||
|
|
||
| > [!NOTE] | ||
| > DevExpress AI-powered Extensions follow the "bring your own key" principle. DevExpress does not offer a REST API and does not ship any built-in LLMs/SLMs. You need an active subscription for the required AI service to obtain the REST API endpoint, key, and model deployment name. These variables must be specified at application startup to register AI clients and enable DevExpress AI-powered Extensions in your application. | ||
|
|
||
| ## Test the Example | ||
|
|
||
| ### Layout Control | ||
|
|
||
| 1. Run the sample project. | ||
| 2. Click the **Copy Text** button or copy text manually (you can edit text directly within the editor box if you wish). | ||
| 3. Click the **AI-powered Smart Paste** button to insert clipboard content into grouped editors. | ||
|
|
||
|  | ||
|
|
||
| ### Grid Control | ||
|
|
||
| 1. Switch to the **Grid** tab within the sample app. | ||
| 2. Copy any text line from the memo editor. | ||
| 3. Move focus to the target grid record or switch to **Append** mode. | ||
| 4. Right-click the grid's pop-up menu and select the **Smart Paste** option. | ||
|
|
||
|  | ||
|
|
||
| ## Documentation | ||
|
|
||
| * [AI-powered Smart Paste for Native VCL Controls](https://docs.devexpress.com/VCL/405528/ExpressCrossPlatformLibrary/common-features/ai-powered-extensions#native-vcl-control-with-support-for-ai-powered-smart-paste) | ||
| * [TcxCustomGridTableView.SmartPaste](https://docs.devexpress.com/VCL/cxGridCustomTableView.TcxCustomGridTableView.SmartPaste(System.String)) | ||
| * [TdxCustomLayoutGroup.SmartPaste](https://docs.devexpress.com/VCL/dxLayoutContainer.TdxCustomLayoutGroup.SmartPaste(System.String)) | ||
| <!-- feedback --> | ||
| ## Does this example address your development requirements/objectives? | ||
|
|
||
| [<img src="https://www.devexpress.com/support/examples/i/yes-button.svg"/>](https://www.devexpress.com/support/examples/survey.xml?utm_source=github&utm_campaign=vcl-smartpaste-example&~~~was_helpful=yes) [<img src="https://www.devexpress.com/support/examples/i/no-button.svg"/>](https://www.devexpress.com/support/examples/survey.xml?utm_source=github&utm_campaign=vcl-smartpaste-example&~~~was_helpful=no) | ||
|
|
||
| (you will be redirected to DevExpress.com to submit your response) | ||
| <!-- feedback end --> | ||
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.