From aec92e8d0fb2bdf4aad8d120400aa865a824dccd Mon Sep 17 00:00:00 2001 From: Lutz Date: Fri, 5 Mar 2021 20:57:58 +0100 Subject: [PATCH] Doc --- Documentacion/github/FoxBin2Prg_Changes.md | 1 + Documentacion/github/FoxBin2Prg_Internals.md | 28 +++++++++++--------- foxbin2prg.prg | 18 ++++++++++--- 3 files changed, 32 insertions(+), 15 deletions(-) diff --git a/Documentacion/github/FoxBin2Prg_Changes.md b/Documentacion/github/FoxBin2Prg_Changes.md index f27e895..880ac1b 100644 --- a/Documentacion/github/FoxBin2Prg_Changes.md +++ b/Documentacion/github/FoxBin2Prg_Changes.md @@ -32,6 +32,7 @@ _**Note:** you can click on the version number for downloading this version from | Rel.Date | Developer | Version | Details | | - | - | - | - | +| 2021/xx/xx | LScheffler | [v1.19.5x]() | **Doc**: Improved, Better description of ClassPerFileCheck . | | 2021/03/05 | LScheffler | [v1.19.57]() | **Bug Fix**: RedirectClassType = 2 mixed up PATH | | | | | **Doc**: Improved | | 2021/03/04 | LScheffler | [v1.19.56]() | **Feature**: New value 2 for option RedirectClassType = 2, just process the single class for input in form file[.baseclass].class.vc2 | diff --git a/Documentacion/github/FoxBin2Prg_Internals.md b/Documentacion/github/FoxBin2Prg_Internals.md index 6113bfb..6817e64 100644 --- a/Documentacion/github/FoxBin2Prg_Internals.md +++ b/Documentacion/github/FoxBin2Prg_Internals.md @@ -109,20 +109,20 @@ These are the FoxBin2Prg.cfg configuration file settings and their meaning: | | | 1 creates a file.dc2 with DBC properties | | | | and additional DBC files per DBC item (stored-proc, table, ..) | | | | Note: recration only if RedirectFilePerDBCToMain is 1 | -| RedirectClassType | _0_, 1, 2 | For classes created with UseClassPerFile>0 in the form file[.baseclass].class.tx2 (vcx only) | -| | | 0 creates / refresh class in file.VCX and add / replace all other classes of this library | -| | | 1 creates / refresh class file[.baseclass].class.VCX and do not touch file.VCX | -| | | 2 creates / refresh class in file.VCX and do not touch other classes of file.VCX | -| RedirectFilePerDBCToMain | _0_, 1 | 0=Don't redirect to file.dc2,
1=Redirect to file.tx2 when selecting file.item.*.dc2
**Only if OldFilesPerDBC is 1** | -| ItemPerDBCCheck | _0_, 1 | 0=Don't check file.item.*.dc2 inclusion,
1=Check file.item.*.dc2 inclusion
**Only if OldFilesPerDBC is 1**| +| [RedirectFilePerDBCToMain](#redirectfileperdbctomain) | _0_, 1 | 0=Don't redirect to file.dc2,
1=Redirect to file.tx2 when selecting file.item.*.dc2
**Only if OldFilesPerDBC is 1** | +| [ItemPerDBCCheck](#itemperdbccheck) | _0_, 1 | 0=Don't check file.item.*.dc2 inclusion,
1=Check file.item.*.dc2 inclusion
**Only if OldFilesPerDBC is 1**| | DBF_BinChar_Base64 | 0, _1_ | 0=For character type fields, if NoCPTrans 0=do not transform, 1=use Base64 transform (default)
**Note:** This can be [changed per table](#configuration-file-per-table). | | DBF_IncludeDeleted | _0_, 1 | 0=Do not include deleted records (default),
1=Include deleted records
**Note:** This can be [changed per table](#configuration-file-per-table). | | | | **Note:**
This is only true for tables. Generating DBC to _Text_ and back to _Binary_ will act as PACK DATABASE.
The data added by _DBF_IncludeDeleted: 1_ will be ignored by old versions generating _Binary_ files. | | UseClassPerFile | _0_, 1 | 0=One library _Text_ file, 1=Multiple file.class.vc2 files, 2=Multiple file.baseclass.class.vc2 files
See [Create Class-Per-File](#create-class-per-file) | -| RedirectClassPerFileToMain | _0_, 1 | 0=Don't redirect to file.vc2, 1=Redirect to file.vc2 when selecting file.class.vc2 | -| ClassPerFileCheck | _0_, 1 | 0=Don't check file.class.vc2 inclusion, 1=Check file.class.vc2 inclusion | +| [RedirectClassPerFileToMain:](#redirectclassperfiletomain:) | _0_, 1 | 0=Don't redirect to file.vc2, 1=Redirect to file.vc2 when selecting file.class.vc2
RedirectClassType: 1 precedes this setting | +| RedirectClassType | _0_, 1, 2 | For classes created with UseClassPerFile>0 in the form file[.baseclass].class.tx2 (vcx only) | +| | | 0 creates / refresh class in file.VCX and add / replace all other classes of this library | +| | | 1 creates / refresh class file[.baseclass].class.VCX and do not touch file.VCX | +| | | 2 creates / refresh class in file.VCX and do not touch other classes of file.VCX | +| [ClassPerFileCheck](#classperfilecheck) | _0_, 1 | 0=Don't check file.class.vc2 inclusion, 1=Check file.class.vc2 inclusion
Only used if import file is in file[.baseclass].class.tx2 syntax.
Ignored for RedirectClassType: 2 | | ClearDBFLastUpdate | 0, _1_ | 0=Keep DBF LastUpdate, 1=Clear DBF LastUpdate. Useful for Diff, minimizes differences. | -| Language | _(auto)_, EN, FR, ES, DE | Language of shown messages and LOGs. EN=English, FR=French, ES=Español, DE=German, Not defined = AUTOMATIC (using VERSION(3)) || +| Language | _(auto)_, EN, FR, ES, DE | Language of templates, shown messages and LOGs. EN=English, FR=French, ES=Español, DE=German, Not defined = AUTOMATIC (using VERSION(3)) || ### Note The options will be read outside in, top to down. See [Multi-config](#multi-config) @@ -429,13 +429,17 @@ mylib.textbox.cl_3.vc2 #### Complementary options for the UseClassPerFile setting ##### RedirectClassPerFileToMain: -Configuring this setting to 1 will redirect any selection of file.class.vc2 +Configuring this setting to 1 will redirect any selection of file[.baseclass].class.vc2 to the main file.vc2 file, which will not let you generate individual vcx files by mistake. +RedirectClassType: 1 precedes this setting for files in the + ##### ClassPerFileCheck -Configuring this setting to 1 will check the inclusion of all file.class.vc2 files +Configuring this setting to 1 will check the inclusion of all file[.baseclass].class.vc2 files annotated on file.vc2 main file, otherwise no checking is made and when reconstructing the vcx/scx all files -containing the file.class.ext naming will be included in the _Binary_ (useful when you want to add external classes to the library) +containing the file.class.ext naming will be included in the _Binary_ (useful when you want to add external classes to the library). +This only used if import file is in file[.baseclass].class.tx2 syntax. +Ignored for RedirectClassType: 2 #### Note If you dont use the redirect setting, an individual vcx/scx file will be generated. diff --git a/foxbin2prg.prg b/foxbin2prg.prg index 9c9ef91..9cffcc7 100644 --- a/foxbin2prg.prg +++ b/foxbin2prg.prg @@ -892,7 +892,8 @@ Define Class c_foxbin2prg As Session l_RemoveNullCharsFromCode = .T. l_RemoveZOrderSetFromProps = .F. l_Recompile = .T. - n_UseClassPerFile = 0 + n_PRG_Compat_Level = 0 && 0=COMPATIBLE WITH FoxBin2Prg v1.19.49 and earlier, 1=Include HELPSTRING + n_ExcludeDBFAutoincNextval = 0 *!* Changed by: Lutz Scheffler 21.02.2021 *!* change date="{^2021-02-21,10:57:00}" * additional options controlling @@ -905,8 +906,7 @@ Define Class c_foxbin2prg As Session l_DBF_BinChar_Base64 = .T. l_DBF_IncludeDeleted = .F. *!* /Changed by: Lutz Scheffler 21.02.2021 - n_PRG_Compat_Level = 0 && 0=COMPATIBLE WITH FoxBin2Prg v1.19.49 and earlier, 1=Include HELPSTRING - n_ExcludeDBFAutoincNextval = 0 + n_UseClassPerFile = 0 l_ClassPerFileCheck = .F. l_RedirectClassPerFileToMain = .F. n_RedirectClassType = 0 && 0=Redireccionar Todas las clases, 1=Redireccionar solo la clase indicada @@ -29411,6 +29411,7 @@ Define Class CL_LANG As Custom <<>>- Class per file options (UseClassPerFile: 1) <<>>UseClassPerFile: 0 && 0=One library tx2 file, 1=Multiple file.class.tx2 files, 2=Multiple file.baseclass.class.tx2 files <<>>RedirectClassPerFileToMain: 0 && 0=Don't redirect to file.tx2, 1=Redirect to file.tx2 when selecting file.class.tx2 + <<>> && RedirectClassType: 1 precedes <<>>RedirectClassType: 0 && For classes created with UseClassPerFile>0 in the form file[.baseclass].class.tx2 <<>> && Those files could be imported like file.tx2::Class::import or like file[.baseclass].class.tx2 <<>> && For the second form: @@ -29418,6 +29419,8 @@ Define Class CL_LANG As Custom <<>> && 1 Redirect file[.baseclass].class.tx2 to file[.baseclass].class.VCX and do not touch file.VCX <<>> && 2 Redirect file[.baseclass].class.tx2 to file.VCX and do not touch other classes of file.VCX <<>>ClassPerFileCheck: 0 && 0=Don't check file.class.tx2 inclusion, 1=Check file.class.tx2 inclusion + <<>> && Only used if import file is in file[.baseclass].class.tx2 syntax + <<>> && Ignored for RedirectClassType: 2 <<>> <<>>-- Example configuration for SourceSafe compatibility: <<>>extension: pj2=pja && Text file to PJX @@ -29619,6 +29622,7 @@ Define Class CL_LANG As Custom <<>>- Class per file options (UseClassPerFile: 1) <<>>UseClassPerFile: 0 && 0=One library tx2 file, 1=Multiple file.class.tx2 files, 2=Multiple file.baseclass.class.tx2 files <<>>RedirectClassPerFileToMain: 0 && 0=Don't redirect to file.tx2, 1=Redirect to file.tx2 when selecting file.class.tx2 + <<>> && RedirectClassType: 1 precedes <<>>RedirectClassType: 0 && For classes created with UseClassPerFile>0 in the form file[.baseclass].class.tx2 <<>> && Those files could be imported like file.tx2::Class::import or like file[.baseclass].class.tx2 <<>> && For the second form: @@ -29626,6 +29630,8 @@ Define Class CL_LANG As Custom <<>> && 1 Redirect file[.baseclass].class.tx2 to file[.baseclass].class.VCX and do not touch file.VCX <<>> && 2 Redirect file[.baseclass].class.tx2 to file.VCX and do not touch other classes of file.VCX <<>>ClassPerFileCheck: 0 && 0=Don't check file.class.tx2 inclusion, 1=Check file.class.tx2 inclusion + <<>> && Only used if import file is in file[.baseclass].class.tx2 syntax + <<>> && Ignored for RedirectClassType: 2 <<>> <<>>-- Example configuration for SourceSafe compatibility: <<>>extension: pj2=pja && Text file to PJX @@ -29858,6 +29864,7 @@ Define Class CL_LANG As Custom <<>>UseClassPerFile: 0 && 0=Eine Textdatei pro VCX/SCX, 1=Mehrere Dateien .KlassenName.vc2 files, 2=Mehrere Dateien .Basisklasse.KlassenName.vc2 <<>> && Für 1, 2 wird jeweils auch ein Headerdatei .vc2 erzeugt <<>>RedirectClassPerFileToMain: 0 && 0=Keine Umlenkung, 1=Klassen (und Objekte) werden in die VCX/SCX geschrieben wenn eine Datei [.Basisklasse].KlassenName.vc2 gewählt wurde + <<>> && RedirectClassType: 1 hat Vorrang <<>>RedirectClassType: 0 && Für Textdateien die mit UseClassPerFile>0 in der Form file[.baseclass].class.tx2 erstellt wurden. <<>> && diese Dateien können als file.tx2::Class::import oder als file[.baseclass].class.tx2 importiert werden. <<>> && Für die zweite Form gilt: @@ -29865,6 +29872,8 @@ Define Class CL_LANG As Custom <<>> && 1 Aus file[.baseclass].class.tx2 wird file[.baseclass].class.VCX, die Bibliothek file.VCX wird ignoriert <<>> && 2 Aus file[.baseclass].class.tx2 wird file.VCX aber alle anderen Klassen bleiben unverändert <<>>ClassPerFileCheck: 0 && 0=Aus, 1=Teste, ob die Datei einbezogen [.Basisklasse].KlassenName.vc2 wurde + <<>> && Nur für die file[.baseclass].class.tx2 Syntax + <<>> && Wird für RedirectClassType: 2 ignoriert <<>> <<>>---------------------------------------------------------------------------------------------------------------- <<>>-- Beispiel für geänderte Textdatei Endungen, hier für SourceSafe Kompatibiltät: @@ -30077,6 +30086,7 @@ Define Class CL_LANG As Custom <<>>- Class per file options (UseClassPerFile: 1) <<>>UseClassPerFile: 0 && 0=One library tx2 file, 1=Multiple file.class.tx2 files, 2=Multiple file.baseclass.class.tx2 files <<>>RedirectClassPerFileToMain: 0 && 0=Don't redirect to file.tx2, 1=Redirect to file.tx2 when selecting file.class.tx2 + <<>> && RedirectClassType: 1 precedes <<>>RedirectClassType: 0 && For classes created with UseClassPerFile>0 in the form file[.baseclass].class.tx2 <<>> && Those files could be imported like file.tx2::Class::import or like file[.baseclass].class.tx2 <<>> && For the second form: @@ -30084,6 +30094,8 @@ Define Class CL_LANG As Custom <<>> && 1 Redirect file[.baseclass].class.tx2 to file[.baseclass].class.VCX and do not touch file.VCX <<>> && 2 Redirect file[.baseclass].class.tx2 to file.VCX and do not touch other classes of file.VCX <<>>ClassPerFileCheck: 0 && 0=Don't check file.class.tx2 inclusion, 1=Check file.class.tx2 inclusion + <<>> && Only used if import file is in file[.baseclass].class.tx2 syntax + <<>> && Ignored for RedirectClassType: 2 <<>> <<>>-- Example configuration for SourceSafe compatibility: <<>>extension: pj2=pja && Text file to PJX