Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
2037 commits
Select commit Hold shift + click to select a range
cb6db67
New translations data-collect.md (Spanish)
arnaud4d Apr 13, 2026
6e54a2c
New translations dt_date.md (Spanish)
arnaud4d Apr 13, 2026
688d2e2
New translations quick-tour.md (Spanish)
arnaud4d Apr 13, 2026
7359dc3
New translations createstylesheet.md (Spanish)
arnaud4d Apr 13, 2026
70a084c
New translations forms.md (Spanish)
arnaud4d Apr 13, 2026
16fd3bd
New translations buttongrid_overview.md (Spanish)
arnaud4d Apr 13, 2026
9481d7f
New translations button_overview.md (Spanish)
arnaud4d Apr 13, 2026
00dd362
New translations checkbox_overview.md (Spanish)
arnaud4d Apr 13, 2026
df04f8a
New translations combobox_overview.md (Spanish)
arnaud4d Apr 13, 2026
e56fe2b
New translations dropdownlist_overview.md (Spanish)
arnaud4d Apr 13, 2026
d8cba6f
New translations input_overview.md (Spanish)
arnaud4d Apr 13, 2026
562e38a
New translations list_overview.md (Spanish)
arnaud4d Apr 13, 2026
bdbd0a2
New translations listbox_overview.md (Spanish)
arnaud4d Apr 13, 2026
b6b9c5f
New translations picturebutton_overview.md (Spanish)
arnaud4d Apr 13, 2026
d70d373
New translations picturepopupmenu_overview.md (Spanish)
arnaud4d Apr 13, 2026
9489f08
New translations pluginarea_overview.md (Spanish)
arnaud4d Apr 13, 2026
da7ae48
New translations progressindicator.md (Spanish)
arnaud4d Apr 13, 2026
0df4576
New translations radio_overview.md (Spanish)
arnaud4d Apr 13, 2026
b7d880c
New translations ruler.md (Spanish)
arnaud4d Apr 13, 2026
717d927
New translations spinner.md (Spanish)
arnaud4d Apr 13, 2026
5c157a7
New translations splitters.md (Spanish)
arnaud4d Apr 13, 2026
168d843
New translations stepper.md (Spanish)
arnaud4d Apr 13, 2026
0740d34
New translations subform_overview.md (Spanish)
arnaud4d Apr 13, 2026
d1a41b4
New translations tabcontrol.md (Spanish)
arnaud4d Apr 13, 2026
088e70e
New translations viewproarea_overview.md (Spanish)
arnaud4d Apr 13, 2026
5a559b0
New translations writeproarea_overview.md (Spanish)
arnaud4d Apr 13, 2026
146ac60
New translations updates.md (Spanish)
arnaud4d Apr 13, 2026
774055a
New translations code-overview.md (Spanish)
arnaud4d Apr 13, 2026
5bbf9eb
New translations components.md (Spanish)
arnaud4d Apr 13, 2026
a6e3752
New translations users.md (Spanish)
arnaud4d Apr 13, 2026
78e6643
New translations interface.md (Spanish)
arnaud4d Apr 14, 2026
d302b01
New translations command-index.md (Spanish)
arnaud4d Apr 14, 2026
71988a1
New translations webarea_overview.md (Spanish)
arnaud4d Apr 14, 2026
6ed2792
New translations project-method-properties.md (Spanish)
arnaud4d Apr 14, 2026
e845d67
New translations filehandleclass.md (Spanish)
arnaud4d Apr 14, 2026
4a7cac2
New translations forms.md (Spanish)
arnaud4d Apr 14, 2026
050401f
New translations buttongrid_overview.md (Spanish)
arnaud4d Apr 14, 2026
782f65a
New translations button_overview.md (Spanish)
arnaud4d Apr 14, 2026
fb4fe9e
New translations checkbox_overview.md (Spanish)
arnaud4d Apr 14, 2026
f0f517a
New translations combobox_overview.md (Spanish)
arnaud4d Apr 14, 2026
baacff8
New translations dropdownlist_overview.md (Spanish)
arnaud4d Apr 14, 2026
434b080
New translations input_overview.md (Spanish)
arnaud4d Apr 14, 2026
35d6dbd
New translations list_overview.md (Spanish)
arnaud4d Apr 14, 2026
4a9862f
New translations listbox_overview.md (Spanish)
arnaud4d Apr 14, 2026
df2dad0
New translations picturebutton_overview.md (Spanish)
arnaud4d Apr 14, 2026
b367b5c
New translations picturepopupmenu_overview.md (Spanish)
arnaud4d Apr 14, 2026
2eb6a63
New translations pluginarea_overview.md (Spanish)
arnaud4d Apr 14, 2026
a30722d
New translations progressindicator.md (Spanish)
arnaud4d Apr 14, 2026
d495fd3
New translations radio_overview.md (Spanish)
arnaud4d Apr 14, 2026
e6e89a9
New translations ruler.md (Spanish)
arnaud4d Apr 14, 2026
243ac7d
New translations spinner.md (Spanish)
arnaud4d Apr 14, 2026
2aab1f3
New translations splitters.md (Spanish)
arnaud4d Apr 14, 2026
25b7e15
New translations stepper.md (Spanish)
arnaud4d Apr 14, 2026
51e8182
New translations subform_overview.md (Spanish)
arnaud4d Apr 14, 2026
e8a7c48
New translations tabcontrol.md (Spanish)
arnaud4d Apr 14, 2026
f784c9e
New translations viewproarea_overview.md (Spanish)
arnaud4d Apr 14, 2026
476cb0d
New translations webarea_overview.md (Spanish)
arnaud4d Apr 14, 2026
57516f7
New translations writeproarea_overview.md (Spanish)
arnaud4d Apr 14, 2026
a48541c
New translations users.md (Spanish)
arnaud4d Apr 14, 2026
92a728f
New translations user-new.md (Spanish)
arnaud4d Apr 14, 2026
4a7740b
New translations filehandleclass.md (Spanish)
arnaud4d Apr 14, 2026
fdf0c9a
New translations listbox_overview.md (Spanish)
arnaud4d Apr 14, 2026
af2f577
New translations users.md (Spanish)
arnaud4d Apr 14, 2026
033e653
New translations interface.md (Spanish)
arnaud4d Apr 14, 2026
c68f3ca
New translations async.md (Spanish)
arnaud4d Apr 14, 2026
4c94241
New translations listbox-object.md (Spanish)
arnaud4d Apr 14, 2026
2262784
New translations listbox-column.md (Spanish)
arnaud4d Apr 14, 2026
55d947b
New translations listbox-header-footer.md (Spanish)
arnaud4d Apr 14, 2026
53085a0
New translations listbox-column.md (Spanish)
arnaud4d Apr 14, 2026
3fc68e9
New translations listbox-header-footer.md (Spanish)
arnaud4d Apr 14, 2026
db6ec4d
New translations listbox-object.md (Spanish)
arnaud4d Apr 14, 2026
55607fe
New translations listbox-object.md (Spanish)
arnaud4d Apr 14, 2026
5feca66
New translations formulaclass.md (Spanish)
arnaud4d Apr 14, 2026
5e33664
New translations wp-new-style-sheet.md (Spanish)
arnaud4d Apr 14, 2026
e763753
New translations wp-delete-style-sheet.md (Spanish)
arnaud4d Apr 14, 2026
6b124c7
New translations wp-get-style-sheet.md (Spanish)
arnaud4d Apr 14, 2026
a328a0b
New translations ordering.md (Spanish)
arnaud4d Apr 14, 2026
2066fea
New translations async.md (Spanish)
arnaud4d Apr 14, 2026
5992bec
New translations async.md (Spanish)
arnaud4d Apr 14, 2026
2254074
New translations command-index.md (Japanese)
arnaud4d Apr 14, 2026
95fcea3
New translations user-new.md (Japanese)
arnaud4d Apr 14, 2026
ec74e12
New translations wp-new-style-sheet.md (Japanese)
arnaud4d Apr 14, 2026
e519ebd
New translations wp-delete-style-sheet.md (Japanese)
arnaud4d Apr 14, 2026
24f6ef8
New translations wp-get-style-sheet.md (Japanese)
arnaud4d Apr 14, 2026
7c3a5b9
New translations command-index.md (Portuguese, Brazilian)
arnaud4d Apr 14, 2026
daec12b
New translations user-new.md (Portuguese, Brazilian)
arnaud4d Apr 14, 2026
2a4b33c
New translations wp-new-style-sheet.md (Portuguese, Brazilian)
arnaud4d Apr 14, 2026
e826e0f
New translations wp-delete-style-sheet.md (Portuguese, Brazilian)
arnaud4d Apr 14, 2026
c015f07
New translations wp-get-style-sheet.md (Portuguese, Brazilian)
arnaud4d Apr 14, 2026
1464b7d
New translations imapnotifier.md (Spanish)
arnaud4d Apr 14, 2026
d442cfc
Feature/server execution (#3261)
arnaud4d Apr 14, 2026
a5f1f6b
New translations wp-import-style-sheets.md (French)
arnaud4d Apr 14, 2026
4619ea6
New translations wp-import-style-sheets.md (Spanish)
arnaud4d Apr 14, 2026
00bf2a8
New translations wp-import-style-sheets.md (Japanese)
arnaud4d Apr 14, 2026
f9e65cc
New translations wp-import-style-sheets.md (Portuguese, Brazilian)
arnaud4d Apr 14, 2026
824d582
New translations entityselectionclass.md (Spanish)
arnaud4d Apr 14, 2026
ffaf8a2
New translations fileclass.md (Spanish)
arnaud4d Apr 14, 2026
82e957b
New translations folderclass.md (Spanish)
arnaud4d Apr 14, 2026
001ddbf
New translations properties_listbox.md (Spanish)
arnaud4d Apr 14, 2026
6354689
New translations properties_object.md (Spanish)
arnaud4d Apr 14, 2026
42fca15
New translations properties_resizingoptions.md (Spanish)
arnaud4d Apr 14, 2026
e4bff8e
New translations properties_textandpicture.md (Spanish)
arnaud4d Apr 14, 2026
c813871
New translations current.json (Japanese)
arnaud4d Apr 14, 2026
fc0680e
New translations blobclass.md (Spanish)
arnaud4d Apr 14, 2026
d1e3944
New translations collectionclass.md (Spanish)
arnaud4d Apr 14, 2026
3bfeba9
New translations entityclass.md (Spanish)
arnaud4d Apr 14, 2026
dddad08
New translations entityselectionclass.md (Spanish)
arnaud4d Apr 14, 2026
ef44d53
New translations fileclass.md (Spanish)
arnaud4d Apr 14, 2026
bc685b5
New translations folderclass.md (Spanish)
arnaud4d Apr 14, 2026
af50b90
New translations cli.md (Spanish)
arnaud4d Apr 14, 2026
eb28aa9
New translations properties_listbox.md (Spanish)
arnaud4d Apr 14, 2026
9bbda9a
New translations properties_object.md (Spanish)
arnaud4d Apr 14, 2026
2ed805f
New translations properties_resizingoptions.md (Spanish)
arnaud4d Apr 14, 2026
a8bf8ef
New translations properties_textandpicture.md (Spanish)
arnaud4d Apr 14, 2026
2838a85
New translations blobclass.md (French)
arnaud4d Apr 14, 2026
85b0f2b
New translations collectionclass.md (French)
arnaud4d Apr 14, 2026
ebb6441
New translations emailobjectclass.md (French)
arnaud4d Apr 14, 2026
4e9942c
New translations fileclass.md (French)
arnaud4d Apr 14, 2026
fc18cea
New translations blobclass.md (Spanish)
arnaud4d Apr 14, 2026
c7965d1
New translations collectionclass.md (Spanish)
arnaud4d Apr 14, 2026
0bbcb95
New translations emailobjectclass.md (Spanish)
arnaud4d Apr 14, 2026
ebad8d2
New translations fileclass.md (Spanish)
arnaud4d Apr 14, 2026
46cacaf
New translations blobclass.md (Japanese)
arnaud4d Apr 14, 2026
755c906
New translations collectionclass.md (Japanese)
arnaud4d Apr 14, 2026
019575e
New translations emailobjectclass.md (Japanese)
arnaud4d Apr 14, 2026
1f04491
New translations fileclass.md (Japanese)
arnaud4d Apr 14, 2026
69b6ffc
New translations blobclass.md (Portuguese, Brazilian)
arnaud4d Apr 14, 2026
2bb8995
New translations collectionclass.md (Portuguese, Brazilian)
arnaud4d Apr 14, 2026
35d7496
New translations emailobjectclass.md (Portuguese, Brazilian)
arnaud4d Apr 14, 2026
9d08451
New translations fileclass.md (Portuguese, Brazilian)
arnaud4d Apr 14, 2026
548f76e
New translations folderclass.md (French)
arnaud4d Apr 14, 2026
237952d
New translations mailattachmentclass.md (French)
arnaud4d Apr 14, 2026
935558a
New translations sessionclass.md (French)
arnaud4d Apr 14, 2026
29f9106
New translations folderclass.md (Spanish)
arnaud4d Apr 14, 2026
421cc83
New translations mailattachmentclass.md (Spanish)
arnaud4d Apr 14, 2026
eedb569
New translations sessionclass.md (Spanish)
arnaud4d Apr 14, 2026
aa7660b
New translations folderclass.md (Japanese)
arnaud4d Apr 14, 2026
661f98c
New translations mailattachmentclass.md (Japanese)
arnaud4d Apr 14, 2026
92b7cd8
New translations sessionclass.md (Japanese)
arnaud4d Apr 14, 2026
3d1ce0f
New translations folderclass.md (Portuguese, Brazilian)
arnaud4d Apr 14, 2026
4b9f506
New translations mailattachmentclass.md (Portuguese, Brazilian)
arnaud4d Apr 14, 2026
1a173df
New translations sessionclass.md (Portuguese, Brazilian)
arnaud4d Apr 14, 2026
34496a2
New translations webserverclass.md (French)
arnaud4d Apr 14, 2026
355cc1b
New translations webserverclass.md (Spanish)
arnaud4d Apr 14, 2026
7f4b3a9
New translations webserverclass.md (Japanese)
arnaud4d Apr 14, 2026
75dd6be
New translations webserverclass.md (Portuguese, Brazilian)
arnaud4d Apr 14, 2026
5d61534
New translations classes.md (French)
arnaud4d Apr 14, 2026
325169f
New translations classes.md (Spanish)
arnaud4d Apr 14, 2026
57640d2
New translations classes.md (Japanese)
arnaud4d Apr 14, 2026
30d54f6
New translations classes.md (Portuguese, Brazilian)
arnaud4d Apr 14, 2026
df0e11f
New translations dt_object.md (French)
arnaud4d Apr 14, 2026
7b7145c
New translations dt_object.md (Spanish)
arnaud4d Apr 14, 2026
bca5b00
New translations dt_object.md (Japanese)
arnaud4d Apr 14, 2026
8ee4ec4
New translations dt_object.md (Portuguese, Brazilian)
arnaud4d Apr 14, 2026
504664e
New translations quick-tour.md (Spanish)
arnaud4d Apr 14, 2026
8120bc3
New translations clientserver.md (French)
arnaud4d Apr 14, 2026
e580baa
New translations clientserver.md (Spanish)
arnaud4d Apr 14, 2026
581ac33
New translations clientserver.md (Japanese)
arnaud4d Apr 14, 2026
147853d
New translations clientserver.md (Portuguese, Brazilian)
arnaud4d Apr 14, 2026
159f9e2
New translations properties_object.md (Spanish)
arnaud4d Apr 14, 2026
7e7c2b1
New translations updates.md (French)
arnaud4d Apr 14, 2026
2e307ad
New translations client-server-optimization.md (French)
arnaud4d Apr 14, 2026
1dc9d35
New translations ordaclasses.md (French)
arnaud4d Apr 14, 2026
ad704fa
New translations updates.md (Spanish)
arnaud4d Apr 14, 2026
13bb50b
New translations client-server-optimization.md (Spanish)
arnaud4d Apr 14, 2026
c04a916
New translations ordaclasses.md (Spanish)
arnaud4d Apr 14, 2026
f6f6d33
New translations updates.md (Japanese)
arnaud4d Apr 14, 2026
4342bf9
New translations client-server-optimization.md (Japanese)
arnaud4d Apr 14, 2026
aee270a
New translations ordaclasses.md (Japanese)
arnaud4d Apr 14, 2026
e35b29f
New translations updates.md (Portuguese, Brazilian)
arnaud4d Apr 14, 2026
bdc9b92
New translations client-server-optimization.md (Portuguese, Brazilian)
arnaud4d Apr 14, 2026
7b10d79
New translations ordaclasses.md (Portuguese, Brazilian)
arnaud4d Apr 14, 2026
8ab118f
New translations components.md (Spanish)
arnaud4d Apr 14, 2026
c999a15
New translations orda-events.md (French)
arnaud4d Apr 14, 2026
e83f964
New translations vectorclass.md (French)
arnaud4d Apr 14, 2026
50f49f6
New translations orda-events.md (Spanish)
arnaud4d Apr 14, 2026
f30a299
New translations vectorclass.md (Spanish)
arnaud4d Apr 14, 2026
b4bdbd5
New translations orda-events.md (Japanese)
arnaud4d Apr 14, 2026
77b32f8
New translations vectorclass.md (Japanese)
arnaud4d Apr 14, 2026
c395c8f
New translations orda-events.md (Portuguese, Brazilian)
arnaud4d Apr 14, 2026
5995ce4
New translations vectorclass.md (Portuguese, Brazilian)
arnaud4d Apr 14, 2026
b55ef01
New translations collectionclass.md (Spanish)
arnaud4d Apr 15, 2026
f2054c4
New translations properties_object.md (Spanish)
arnaud4d Apr 15, 2026
a7a2a3b
New translations sessions.md (French)
arnaud4d Apr 15, 2026
c4f63b0
New translations sessions.md (Spanish)
arnaud4d Apr 15, 2026
b0ee01b
New translations sessions.md (Japanese)
arnaud4d Apr 15, 2026
a890f5a
New translations sessions.md (Portuguese, Brazilian)
arnaud4d Apr 15, 2026
da3f077
New translations collectionclass.md (Spanish)
arnaud4d Apr 15, 2026
e049aed
New translations properties_object.md (Spanish)
arnaud4d Apr 15, 2026
afe360c
New translations async.md (Spanish)
arnaud4d Apr 15, 2026
add48b2
New translations formulaclass.md (French)
arnaud4d Apr 15, 2026
c4eb4fc
New translations methodclass.md (French)
arnaud4d Apr 15, 2026
e438b4a
New translations formulaclass.md (Spanish)
arnaud4d Apr 15, 2026
84cf877
New translations methodclass.md (Spanish)
arnaud4d Apr 15, 2026
0990bf5
New translations formulaclass.md (Japanese)
arnaud4d Apr 15, 2026
b114fb3
New translations methodclass.md (Japanese)
arnaud4d Apr 15, 2026
c16ee83
New translations formulaclass.md (Portuguese, Brazilian)
arnaud4d Apr 15, 2026
97f0791
New translations methodclass.md (Portuguese, Brazilian)
arnaud4d Apr 15, 2026
b6cdeb0
New translations async.md (Spanish)
arnaud4d Apr 15, 2026
3cd41d3
New translations async.md (Spanish)
arnaud4d Apr 15, 2026
1a3b3a2
Merge branch 'l10n_main'
arnaud4d Apr 15, 2026
bb5928d
fix links
arnaud4d Apr 15, 2026
36253ee
New Crowdin updates (#3263)
arnaud4d Apr 15, 2026
4dd8606
small fixes (#3264)
arnaud4d Apr 15, 2026
6268385
New Crowdin updates (#3265)
arnaud4d Apr 16, 2026
1d9807b
Feature/ai kit alias (#3267)
arnaud4d Apr 16, 2026
e34d364
New Crowdin updates (#3266)
arnaud4d Apr 17, 2026
acbf50f
New Crowdin updates (#3268)
arnaud4d Apr 17, 2026
74cbe7e
Update updates.md (#3269)
arnaud4d Apr 17, 2026
01e1a6b
New Crowdin updates (#3270)
arnaud4d Apr 20, 2026
8cbb85b
fixes (#3271)
arnaud4d Apr 20, 2026
47c83bb
Fix/crypter fr (#3272)
arnaud4d Apr 20, 2026
947633f
Fix/crypter fr (#3273)
arnaud4d Apr 21, 2026
50cb68b
reported 21 21R2 (#3274)
arnaud4d Apr 21, 2026
44e5657
Merge branch 'main' into main
arnaud4d Apr 21, 2026
87ec734
Version 21-R3 created
arnaud4d Apr 21, 2026
9428108
Update Crowdin configuration file
arnaud4d Apr 22, 2026
f12a315
New Crowdin updates (#3276)
arnaud4d Apr 22, 2026
e9f88ae
fix version label
arnaud4d Apr 23, 2026
7a947d5
Merge branch 'main' into main
arnaud4d Apr 23, 2026
a9273af
New Crowdin updates (#3277)
arnaud4d Apr 23, 2026
49b0b2d
fix themes in home (#3278)
arnaud4d Apr 23, 2026
ace56c7
Fix/after 21 r3 (#3280)
arnaud4d Apr 24, 2026
6f0f2a9
New Crowdin updates (#3279)
arnaud4d Apr 24, 2026
f0be837
New Crowdin updates (#3281)
arnaud4d Apr 27, 2026
709ddfa
Update README.md
arnaud4d Apr 27, 2026
65377ec
fixes (#3282)
arnaud4d Apr 27, 2026
35bdbd5
fix(redirection): correct version iteration to include all versions
e-marchand Apr 28, 2026
ec89b6a
New Crowdin updates (#3283)
arnaud4d Apr 28, 2026
ce8fe5e
Merge branch 'main' of https://github.com/doc4d/docs into pr/575
arnaud4d Apr 28, 2026
f02f7ca
Merge branch '4d:main' into main
arnaud4d Apr 28, 2026
5810507
New Crowdin updates (#3284)
arnaud4d Apr 28, 2026
a4d0819
fix param name imap (#3286)
arnaud4d Apr 29, 2026
b7c21e1
Update README with conflict resolution steps
arnaud4d Apr 29, 2026
03bea81
Modify version matching loop to skip first version
e-marchand Apr 29, 2026
29f6108
Feature/form open explained (#3287)
arnaud4d Apr 29, 2026
f7657eb
New Crowdin updates (#3285)
arnaud4d Apr 30, 2026
184041e
Feature/print winui liquid (#3289)
arnaud4d Apr 30, 2026
2913e6d
ci: Add step to fix version-dropdown links in workflow
e-marchand May 1, 2026
352349f
ci: Fix action reference in workflow-build.yml
e-marchand May 1, 2026
160afa4
Update crowdin.yml
arnaud4d May 5, 2026
07861b9
New Crowdin updates (#3288)
arnaud4d May 5, 2026
e830b59
Update crowdin.yml
arnaud4d May 5, 2026
f5ac3df
Update Crowdin configuration file
arnaud4d May 5, 2026
3d8fe1b
Update updates.md
arnaud4d May 5, 2026
ddf29eb
Update crowdin.yml
arnaud4d May 6, 2026
82283e7
WritePro: fix links on some file moved to some legacy folders
e-marchand May 6, 2026
22ad45d
New Crowdin updates (#3290)
arnaud4d May 6, 2026
dbdd35f
swizzle the code that build the version menu to find other versions o…
e-marchand May 6, 2026
f5ac671
Document fix for version switch between 21.x and 21 R+
arnaud4d May 6, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions .github/workflows/workflow-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,10 @@ jobs:
run: |
cd build
echo "google-site-verification: google1a6263055b2bea44.html" >> google1a6263055b2bea44.html
- name: Fix version-dropdown links
uses: doc4d/doc_postprocessing@v1
with:
path: ./build
- uses: actions/upload-artifact@v4
with:
path: ./build
Expand Down
5 changes: 5 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -203,6 +203,7 @@ Aller dans l'interface Algolia et lancer un reindex de la doc
3. faire git rebase upstream/main -X ours (remettre tout dans Tempo et en cas de conflit prendre la preprod)
4. git push (fait une PR auto et pas de conflit)

5. En cas de conflits résolus: sur la preprod sur github, cliquer sur **Sync Fork**.

## Building new architecture for sorted themes
### Edit the sidebars.js file
Expand Down Expand Up @@ -405,3 +406,7 @@ Translate commit (apply + commit) — pour appliquer et committer
| 164 (¤) | a_contient_keyword |
| default | (assert) |

## Fix pour le switch de version entre 21.x et 21 R+ (changement de structure)
un swizzle :
https://github.com/doc4d/docs/commit/c20dca17cde1993756ceb632253e0b8144ed7529

2 changes: 2 additions & 0 deletions crowdin.yml
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
commit_message: New Crowdin updates
append_commit_message: false
files:
- source: /docs/**/*
ignore:
Expand Down
2 changes: 1 addition & 1 deletion docs/API/IMAPTransporterClass.md
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ IMAP Transporter objects are instantiated with the [IMAP New transporter](../com

## 4D.IMAPTransporter.new()

<!-- REF #4D.IMAPTransporter.new().Syntax -->**4D.IMAPTransporter.new**( *server* : Object ) : 4D.IMAPTransporter<!-- END REF -->
<!-- REF #4D.IMAPTransporter.new().Syntax -->**4D.IMAPTransporter.new**( *parameter* : Object ) : 4D.IMAPTransporter<!-- END REF -->


<!-- REF #4D.IMAPTransporter.new().Params -->
Expand Down
2 changes: 1 addition & 1 deletion docs/Develop/async.md
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@ The calling process posts a message then the worker executes it. The worker can

### Event listening

In event-driven development, it is obvious that some code must be able to listen for incoming events. Events can be generated by the user interface (such as a mouse click on an object or a keyboard key pressed) or by any other interaction such as an http request or the end of another action. For example, when a form is displayed using the `DIALOG` command, user actions can trigger events that your code can process. A click on a button will trigger the code associated to the button.
In event-driven development, it is obvious that some code must be able to listen for incoming events. Events can be generated by the user interface (such as a mouse click on an object or a keyboard key pressed) or by any other interaction such as an http request or the end of another action. For example, when a form is displayed using the [`DIALOG`](../commands/dialog) command, user actions can trigger events that your code can process. A click on a button will trigger the code associated to the button.

In the context of asynchronous execution, the following features place your code in listening mode:

Expand Down
183 changes: 182 additions & 1 deletion docs/FormEditor/forms.md
Original file line number Diff line number Diff line change
Expand Up @@ -67,6 +67,185 @@ You can add or modify 4D forms using the following elements:
}
```


## Using forms

Forms are called using specific commands of the 4D Language. In your 4D desktop applications, forms can be used in various ways, depending on their status within your interface needs. A form can be:

- used in its own window for data viewing, processing, editing, or to display on-screen information to the user,
- used embedded in another form (subform),
- used as template for printing,
- or called by specific features like the Label editor.


### Using a project form in a window

When you want to use a form as on-screen dialog, you need to (1) create a window and (2) load the form within the window, along with an event loop to process user actions. The straighforward steps to display a form on screen are:

1. Call the [`Open form window`](../commands/open-form-window) command to create and preconfigure a window tailored for your form. Note that the command only draw aan empty window, it does not display anything.
2. In the same method, call the [`DIALOG`](../commands/dialog) command to actually load the form in the opened form window, ready for user interaction. [`DIALOG`](../commands/dialog) loads form data and places your code in listening mode to user events. When you call this command without asterisk (\*), the dialog will stay on screen and the code execution is frozen until an event occurs (see also ["Event listening" paragraph](../Develop/async.md#event-listening)).
3. (optional) Use the [`Form`](../commands/form) command from within the form context to access form data.


::note Compatibility

All-in-one commands such as [`ADD RECORD`](../commands/add-record) or [`MODIFY RECORD`](../commands/add-record) merge all steps in a single call. These legacy commands can still be used for prototyping or basic developments but are not adapted to modern, fully controlled interfaces. They directly rely on the 4D database and legacy features such as [table forms](#project-form-and-table-form) and do not benefit from the power and flexibility of [ORDA features](../ORDA/overview.md). Unless specific needs, it is recommended to use project forms for your 4D desktop application interfaces.

:::


#### Simple example

You create the following basic form in the [Form editor](./formEditor.md):

![](../assets/en/FormEditor/example-form-1.png)

The form is [associated with a "myForm" class](./properties_FormProperties.md#form-class), defined as follow:

```4d
//cs.myForm
property name : Text
property age : Integer

Class constructor
This.name:=""
This.age:=0
```

The form class is automatically instantiated by 4D once the form is loaded. If you execute the following project method:

```4d
// Instantiate a form object that will host form data and UI logic
var $formObject:=cs.myForm.new()

//Prepare default value within the form object
$formObject.name:="Smith"
$formObject.age:=42

// Create an empty window with ad-hoc settings that fits the desired form dimensions, resizing properties,
// and window type (this does not render the form)
var $win:=Open form window("myForm"; Movable form dialog box; Horizontally centered; Vertically centered)

//Render the form, and provide $formObject's data. Dialog also activates the form event loop
DIALOG("myForm"; $formObject)

//Without asterisk to Dialog statement, the form waits for a closing action from the user
//before executing the rest of the code. Calling Close window is just a good practice
CLOSE WINDOW($win) //releases reference

//Display data modified by the user, if any/
ALERT($formObject.name+" is "+String($formObject.age)+" years old!")

```

4D displays:

![](../assets/en/FormEditor/example-form-2.png)


### Using forms as subforms

A form can be embedded within another form, in which case it becomes a [subform object](../FormObjects/subform_overview.md) which follows specific rules. A subform is automatically used when its parent form is [displayed in a window](#using-a-project-form-in-a-window).

In the same way that you pass an object to a form with the [`DIALOG`](../commands/dialog) command, you can also pass an object to a subform area using the property list. Then, you can use it in the subform with the [`Form`](../commands/form) command. In this example, the "InvoiceAddress" object is bound to the subform:

![](../assets/en/FormEditor/subform-example.png)



### Using forms to be printed

In 4D desktop applications, forms can be printed using the various [commands of the **Printing** theme](../commands/theme/Printing).

#### Examples

You can use forms to print data, either as page or as list.

- To simply print some part of a form, use the [`Print form`](../commands/print-form) command. For example:

```4d
var $formData:={}
$formData.lastname:="Smith"
$formData.firstname:="john"
$formData.request:="I need more COFFEE"
var $h:=Print form("Request_var";$formData;Form detail)
```

- To print a form within a printing job to process data during printing, use [`FORM LOAD`](../commands/form-load) and [`Print object`](../commands/print-object) commands. For example:

```4d
var $formData : Object
var $over : Boolean
var $full : Boolean

OPEN PRINTING JOB
$formData:={}
$formData.LBcollection:=[]
... //fill the collection with data

FORM LOAD("GlobalForm";$formData)
$over:=False
Repeat
$full:=Print object(*;"LB") // the datasource of this "LB" listbox is Form.LBcollection
LISTBOX GET PRINT INFORMATION(*;"LB";lk printing is over;$over)
If(Not($over))
PAGE BREAK
End if
Until($over)
FORM UNLOAD
CLOSE PRINTING JOB
```


#### Print rendering engine

4D uses a dedicated print rendering engine to generate outputs with a design adapted for printing. It includes the following main features:

- Interactive widgets such as buttons, toggles, dropdowns, etc. and modern UI effects such as glass, blur, transparency, or shadow effects are converted into adapted static representations and flattened into printable styles, so that the document remains readable and professional once printed.
- Layout structure, spacing, and alignment, are preserved so that the printed document reflects the logical structure of the on-screen form.
- The same output is produced, whether the form is printed from macOS or Windows.

For example, the following form:

![](../assets/en/FormEditor/screen_rendering.png)

... will be printed with this rendering:

![](../assets/en/FormEditor/print_rendering.png)


:::tip Related blog post

[Printing Modern Interfaces with Clean, Consistent Output](https://blog.4d.com/printing-modern-interfaces-with-clean-consistent-output)

:::

#### Legacy print renderer

In releases prior to 4D 21 R3, another print renderer was used. This legacy renderer simply draws widgets as they appear on the screen. For compatibility, the legacy renderer is **enabled by default** in projects or databases converted from versions prior to 4D 21 R3, so that forms designed with this renderer continue to be printed as expected.

You can however enable the modern print rendering engine at any moment by:

- unchecking the **Use legacy print rendering** option in the [Compatibility page of the Settings dialog box](../settings/compatibility.md) (permanent setting),
- or executing [`SET DATABASE PARAMETER`](../commands/set-database-parameter) command with `Use legacy print rendering` selector set to 1 (volatile setting).

:::warning Limitation

For technical reasons, the legacy print renderer is not available with forms displayed with [Fluent UI](#fluent-ui-rendering) on Windows or [Liquid Glass](../Notes/updates.md#support-of-liquid-glass-on-macos) on macOS. In these contexts, forms are **always printed with the modern print rendering engine**, whatever the compatibility option.

:::



### Other form usages

There are several other ways to use forms in the 4D applications, including:

- a form can be [inherited](#inherited-forms) from another form,
- a form can be [associated to a listbox](../FormObjects/properties_ListBox.md#detail-form-name) in response to a user action to display a row using an edit button or a double-click,
- the [label editor can use a form](../Desktop/labels.md#form-to-use) as template to print labels.


## Project form and Table form

There are two categories of forms:
Expand All @@ -79,7 +258,7 @@ Typically, you select the form category when you create the form, but you can ch

## Form pages

Each form has is made of at least two pages:
Each form is made of at least two pages:

- a page 1: a main page, displayed by default
- a page 0: a background page, whose contents is displayed on every other page.
Expand All @@ -98,6 +277,8 @@ There are no restrictions on the number of pages a form can have. The same field
A multi-page form has both a background page and several display pages. Objects that are placed on the background page may be visible on all display pages, but can be selected and edited only on the background page. In multi-page forms, you should put your button palette on the background page. You also need to include one or more objects on the background page that provide page navigation tools for the user.




## Fluent UI rendering

:::caution Developer Preview
Expand Down
2 changes: 1 addition & 1 deletion docs/FormEditor/properties_Print.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ title: Print

Allows defining specific print settings for the form. This feature is useful to view printing page limits in the form editor.

> **Compatibility:** Even if these settings are taken into account when the form is printed in Application mode, it is discouraged to rely on this feature to store print settings for the form, due to limitations regarding the platform and driver dependency. It is highly recommended to use the 4D commands `Print settings to BLOB`/`BLOB to print settings` which are more powerful.
> **Compatibility:** Even if these settings are taken into account when the form is printed in Application mode, it is discouraged to rely on this feature to store print settings for the form, due to limitations regarding the platform and driver dependency. It is highly recommended to use the 4D commands [`Print settings to BLOB`](../commands/print-settings-to-blob)/[`BLOB to print settings`](../commands/blob-to-print-settings) which are more powerful.

You can modify the following print settings:

Expand Down
5 changes: 3 additions & 2 deletions docs/Notes/updates.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ Read [**What’s new in 4D 21 R3**](https://blog.4d.com/whats-new-in-4d-21-r3/),
- New [**AI** page in Settings](../settings/ai.md), allowing to configure [Provider model aliases](../aikit/provider-model-aliases.md) that can be called in the code using 4D AIKit component.
- 4D AIKit component: new [Providers](../aikit/Classes/OpenAIProviders.md) class to instantiate and handle [Provider and model aliases](../aikit/provider-model-aliases.md).
- Support of [`server` keyword](../Concepts/classes.md#server) for ORDA data model functions and shared/session singleton functions.
- New [printing renderer](../FormEditor/forms.md#print-rendering-engine) for forms on Liquid glass and Fluent UI interfaces. New compatibility options to [enable the renderer on Classic interfaces](../FormEditor/forms.md#legacy-print-renderer).
- Dependencies: support of [components stored on GitLab repositories](../Project/components.md#configuring-a-gitlab-repository).
- [**Fixed bug list**](https://bugs.4d.fr/fixedbugslist?version=21_R3): list of all bugs that have been fixed in 4D 21 R3.

Expand Down Expand Up @@ -74,7 +75,7 @@ Read [**What’s new in 4D 21 R2**](https://blog.4d.com/whats-new-in-4d-21-r2/),

|Library|Current version|Updated in 4D|Comment|
|---|---|---|----|
|BoringSSL|9b86817|21|Used for QUIC|
|BoringSSL|664a985|**21 R4**|Used for QUIC|
|CEF|7258|21|Chromium 139|
|Hunspell|1.7.2|20|Used for spell checking in 4D forms and 4D Write Pro|
|ICU|77.1|21|This upgrade forces an automatic rebuild of alphanumeric, text and object indexes.|
Expand All @@ -84,7 +85,7 @@ Read [**What’s new in 4D 21 R2**](https://blog.4d.com/whats-new-in-4d-21-r2/),
|Libuv |1.51.0|21|Used for QUIC|
|libZip|1.11.4|21|Used by zip class, 4D Write Pro, svg and serverNet components|
|LZMA|5.8.1|21||
|ngtcp2|1.18.0|21|Used for QUIC|
|ngtcp2|1.22.1|**21 R4**|Used for QUIC|
|OpenSSL|3.5.2|21||
|PDFWriter|4.7.0|21|Used for [`WP Export document`](../WritePro/commands/wp-export-document.md) and [`WP Export variable`](../WritePro/commands/wp-export-variable.md) |
|SpreadJS|18.2.0|21 R2|See [this blog post](https://blog.4d.com/4d-view-pro-whats-new-in-4d-21-r2/) for an overview of the new features|
Expand Down
8 changes: 4 additions & 4 deletions docs/WritePro/user/user-new.md
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ When the list is created using [the WP SET ATTRIBUTE command](../commands-legacy

### Multi-level lists

Multi-level lists are based on [hierarchical list style sheets](stylesheets.md#hierarchical-list-style-sheets). Multi-level lists contain a root-level style sheet and one or more sub-level style sheet(s). Each level is attached to a hierarchical list style sheet and represents a depth in the list (level 1, level 2, level 3, etc.).
Multi-level lists are based on [hierarchical list style sheets](../user-legacy/stylesheets.md#hierarchical-list-style-sheets). Multi-level lists contain a root-level style sheet and one or more sub-level style sheet(s). Each level is attached to a hierarchical list style sheet and represents a depth in the list (level 1, level 2, level 3, etc.).

When a new sub-level is created, the level numbering restarts at 1. When you add or remove an element in your multi-level list, the numbers are automatically adjusted.

Expand All @@ -48,7 +48,7 @@ Multi-level lists are created with command [WP New style sheet](../commands/wp-n

Multi-level lists can be managed using:

* paragraph [style sheet attributes](../commands/4d-write-pro-attributes.md#style-sheets) (such as `wk list level index`, `wk list level count`, and `wk list concat string format`)
* paragraph [style sheet attributes](../commands-legacy/4d-write-pro-attributes.md#style-sheets) (such as `wk list level index`, `wk list level count`, and `wk list concat string format`)
* dedicated [standard actions](../user-legacy/standard-actions.md) for level management (`listLevelAppend`, `listLevelInc`, `listLevelDec`)
* dedicated standard actions for numbering marker management (`listConcatStringFormat`, `listNumberFormat`).

Expand All @@ -64,11 +64,11 @@ Multi-level lists can be managed using:

## Hierarchical list style sheets

Hierarchical list style sheets are used to create [multi-level lists](using-a-4d-write-pro-area.md#multi-level-lists).
Hierarchical list style sheets are used to create [multi-level lists](../user-legacy/using-a-4d-write-pro-area.md#multi-level-lists).

To create a hierarchical list style sheet, use [WP New style sheet](../commands/wp-new-style-sheet.md) and pass in *listLevelCount* the desired number of levels. You then define a hierarchy of related paragraph style sheets: one **root-level** style sheet and one or more **sub-level** style sheets linked to it. Each level represents a depth in the list (level 1, level 2, level 3, etc.) and is automatically named "root-level name + lvl + index", for example "Mylist lvl 2".

To customize hierarchical list styles, the paragraph style sheet object can be customized using [style sheet attributes](../commands/4d-write-pro-attributes.md#style-sheets).
To customize hierarchical list styles, the paragraph style sheet object can be customized using [style sheet attributes](../commands-legacy/4d-write-pro-attributes.md#style-sheets).

Hierarchical list style sheets are fully supported by the following commands: [`WP Get style sheet`](../commands/wp-get-style-sheet.md), [`WP SET ATTRIBUTES`](../commands/wp-set-attributes.md), [`WP DELETE STYLE SHEET`](../commands/wp-delete-style-sheet.md).

Expand Down
Binary file added docs/assets/en/FormEditor/Subform-example.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/assets/en/FormEditor/example-form-1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/assets/en/FormEditor/example-form-2.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/assets/en/FormEditor/print_rendering.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/assets/en/FormEditor/screen_rendering.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/assets/en/commands/form-print1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/assets/en/commands/form-print2.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/assets/en/commands/print-selection1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/assets/en/commands/print-selection2.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Loading